diff --git a/devTools/tweeGo/targets/sugarcube-2/header.html b/devTools/tweeGo/targets/sugarcube-2/header.html
index d695620395812f5bea84e5b3c00e7c07b8d8afc8..ca7475c51d512e74afb2ea09b84dc1db7a38075c 100644
--- a/devTools/tweeGo/targets/sugarcube-2/header.html
+++ b/devTools/tweeGo/targets/sugarcube-2/header.html
@@ -6,7 +6,7 @@
 <meta name="viewport" content="width=device-width,initial-scale=1" />
 <!--
 
-SugarCube (v2.14.0): A free (gratis and libre) story format, based on TiddlyWiki.
+SugarCube (v2.15.0): A free (gratis and libre) story format, based on TiddlyWiki.
 
 Copyright © 2013–2017 Thomas Michael Edwards <tmedwards@motoslave.net>.
 All rights reserved.
@@ -145,12 +145,12 @@ var saveAs=saveAs||navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator)||f
 	SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 	--------------------------------------------------------------------------------
 	*/
-	if(document.documentElement.classList.contains("init-loading")){!function(window,document,jQuery,undefined){"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)}function safeActiveElement(){try{return document.activeElement||null}catch(e){return null}}var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),_slicedToArray=function(){function e(e,t){var r=[],n=!0,a=!1,i=undefined;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);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},Alert=function(){function e(e,t,r,n){var a="fatal"===e,i="Apologies! "+(a?"A fatal":"An")+" error has occurred.";i+=a?" Aborting.":" You may be able to continue, but some parts may not work properly.",null==t&&null==r||(i+="\n\nError",null!=t&&(i+=" ["+t+"]"),i+=null!=r?": "+r.replace(/^(?:(?:uncaught\s+(?:exception:\s+)?)?error:\s+)+/i,"")+".":": unknown error."),n&&n.stack&&(i+="\n\nStack Trace:\n"+n.stack),window.alert(i)}function t(t,r,n){e(null,t,r,n)}function r(t,r,n){e("fatal",t,r,n)}return function(e){window.onerror=function(n,a,i,o,s){"complete"===document.readyState?t(null,n,s):(r(null,n,s),window.onerror=e,"function"==typeof window.onerror&&window.onerror.apply(this,arguments))}}(window.onerror),Object.freeze(Object.defineProperties({},{error:{value:t},fatal:{value:r}}))}();!function(){function e(e,t){var a=String(e);switch(t){case"start":return a&&r.test(a)?a.replace(r,""):a;case"end":return a&&n.test(a)?a.replace(n,""):a;default:throw new Error('_trimFrom called with incorrect where parameter value: "'+t+'"')}}function t(e,t){var r=Number.parseInt(e,10)||0;if(r<1)return"";var n="undefined"==typeof t?"":String(t);for(""===n&&(n=" ");n.length<r;){var a=n.length,i=r-a;n+=a>i?n.slice(0,i):n}return n.length>r&&(n=n.slice(0,r)),n}var r=/^[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*/,n=/[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*$/;Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");if(0===arguments.length)return!1;var e=this.length>>>0;if(0===e)return!1;var t=arguments[0],r=Number(arguments[1])||0;for(r<0&&(r=Math.max(0,e+r));r<e;++r){var n=this[r];if(t===n||t!==t&&n!==n)return!0}return!1}}),String.prototype.padStart||Object.defineProperty(String.prototype,"padStart",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padStart called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(e,10);return i<=a?n:t(i-a,r)+n}}),String.prototype.padEnd||Object.defineProperty(String.prototype,"padEnd",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padEnd called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(e,10);return i<=a?n:n+t(i-a,r)}}),String.prototype.trimStart||Object.defineProperty(String.prototype,"trimStart",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimStart called on null or undefined");return e(this,"start")}}),String.prototype.trimLeft||Object.defineProperty(String.prototype,"trimLeft",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimLeft called on null or undefined");return e(this,"start")}}),String.prototype.trimEnd||Object.defineProperty(String.prototype,"trimEnd",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimEnd called on null or undefined");return e(this,"end")}}),String.prototype.trimRight||Object.defineProperty(String.prototype,"trimRight",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimRight called on null or undefined");return e(this,"end")}})}(),function(){function _random(){if(0===arguments.length)throw new Error("_random called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(_nativeMathRandom()*(t-e+1))+e}function _getCodePointStartAndEnd(e,t){var r=e.charCodeAt(t);if(Number.isNaN(r))return{char:"",start:-1,end:-1};if(r<55296||r>57343)return{char:e.charAt(t),start:t,end:t};if(r>=55296&&r<=56319){var n=t+1;if(n>=e.length)throw new Error("high surrogate without trailing low surrogate");var a=e.charCodeAt(n);if(a<56320||a>57343)throw new Error("high surrogate without trailing low surrogate");return{char:e.charAt(t)+e.charAt(n),start:t,end:n}}if(0===t)throw new Error("low surrogate without leading high surrogate");var i=t-1,o=e.charCodeAt(i);if(o<55296||o>56319)throw new Error("low surrogate without leading high surrogate");return{char:e.charAt(i)+e.charAt(t),start:i,end:t}}var _nativeMathRandom=Math.random;Object.defineProperty(Array,"random",{configurable:!0,writable:!0,value:function(e,t,r){var n=t,a=r;return 2===arguments.length&&(a=n,n=0),Array.isArray(e)?e.random(n,a):e.hasOwnProperty("length")?[].concat(_toConsumableArray(e)).random(n,a):void 0}}),Object.defineProperty(Array.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.count called on null or undefined");for(var e=Array.prototype.indexOf,t=arguments[0],r=Number(arguments[1])||0,n=0;(r=e.call(this,t,r))!==-1;)++n,++r;return n}}),Object.defineProperty(Array.prototype,"delete",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.delete called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.indexOf,r=Array.prototype.push,n=Array.prototype.splice,a=Array.prototype.concat.apply([],arguments),i=[],o=0,s=a.length;o<s;++o)for(var u=a[o],l=0;(l=t.call(this,u,l))!==-1;)r.apply(i,n.call(this,l,1));return i}}),Object.defineProperty(Array.prototype,"deleteAt",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.deleteAt called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.splice,r=[].concat(_toConsumableArray(new Set(Array.prototype.concat.apply([],arguments).map(function(t){return t<0?Math.max(0,e+t):t})).values())),n=[].concat(_toConsumableArray(r)).sort(function(e,t){return t-e}),a=[],i=0,o=r.length;i<o;++i)a[i]=this[r[i]];for(var s=0,u=n.length;s<u;++s)t.call(this,n[s],1);return a}}),Object.defineProperty(Array.prototype,"flatten",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.flatten called on null or undefined");return Array.prototype.reduce.call(this,function(e,t){return e.concat(Array.isArray(t)?t.flatten():t)},[])}}),Object.defineProperty(Array.prototype,"includesAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAll called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAll.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(!Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!1;return!0}}),Object.defineProperty(Array.prototype,"includesAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAny called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAny.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!0;return!1}}),Object.defineProperty(Array.prototype,"pluck",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.pluck called on null or undefined");var r=this.length>>>0;if(0!==r){var n=e,a=t;return 1===arguments.length&&(a=n,n=0),null==n?n=0:n<0?(n=r+n,n<0&&(n=0)):n>=r&&(n=r-1),null==a?a=r-1:a<0?(a=r+a,a<0&&(a=r-1)):a>=r&&(a=r-1),Array.prototype.splice.call(this,_random(n,a),1)[0]}}}),Object.defineProperty(Array.prototype,"random",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.random called on null or undefined");var r=this.length>>>0;if(0!==r){var n=e,a=t;return 1===arguments.length&&(a=n,n=0),null==n?n=0:n<0?(n=r+n,n<0&&(n=0)):n>=r&&(n=r-1),null==a?a=r-1:a<0?(a=r+a,a<0&&(a=r-1)):a>=r&&(a=r-1),this[_random(n,a)]}}}),Object.defineProperty(Array.prototype,"shuffle",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.shuffle called on null or undefined");var e=this.length>>>0;if(0!==e){for(var t=e-1;t>0;--t){var r=Math.floor(_nativeMathRandom()*(t+1)),n=[this[r],this[t]];this[t]=n[0],this[r]=n[1]}return this}}}),Object.defineProperty(Function.prototype,"partial",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Function.prototype.partial called on null or undefined");var e=Array.prototype.slice,t=this,r=e.call(arguments,0);return function(){for(var n=[],a=0,i=0;i<r.length;++i)n.push(r[i]===undefined?arguments[a++]:r[i]);return t.apply(this,n.concat(e.call(arguments,a)))}}}),Object.defineProperty(Math,"clamp",{configurable:!0,writable:!0,value:function e(t,r,n){var e=Number(t);return Number.isNaN(e)?NaN:e.clamp(r,n)}}),Object.defineProperty(Math,"easeInOut",{configurable:!0,writable:!0,value:function(e){return 1-(Math.cos(Number(e)*Math.PI)+1)/2}}),Object.defineProperty(Number.prototype,"clamp",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Number.prototype.clamp called on null or undefined");if(2!==arguments.length)throw new Error("Number.prototype.clamp called with an incorrect number of parameters");var e=Number(arguments[0]),t=Number(arguments[1]);if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.min(Math.max(this,e),t)}}),RegExp.escape||!function(){var e=/[\\^$*+?.()|[\]{}]/g,t=new RegExp(e.source);Object.defineProperty(RegExp,"escape",{configurable:!0,writable:!0,value:function(r){var n=String(r);return n&&t.test(n)?n.replace(e,"\\$&"):n}})}(),function(){var e=/{(\d+)(?:,([+-]?\d+))?}/g,t=new RegExp(e.source);Object.defineProperty(String,"format",{configurable:!0,writable:!0,value:function(r){function n(e,t,r){if(!t)return e;var n=Math.abs(t)-e.length;if(n<1)return e;var a=String(r).repeat(n);return t<0?e+a:a+e}if(arguments.length<2)return 0===arguments.length?"":r;var a=2===arguments.length&&Array.isArray(arguments[1])?[].concat(_toConsumableArray(arguments[1])):Array.prototype.slice.call(arguments,1);return 0===a.length?r:t.test(r)?(e.lastIndex=0,r.replace(e,function(e,t,r){var i=a[t];if(null==i)return"";for(;"function"==typeof i;)i=i();switch("undefined"==typeof i?"undefined":_typeof(i)){case"string":break;case"object":i=JSON.stringify(i);break;default:i=String(i)}return n(i,r?Number.parseInt(r,10):0," ")})):r}})}(),Object.defineProperty(String.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.contains called on null or undefined");return String.prototype.indexOf.apply(this,arguments)!==-1}}),Object.defineProperty(String.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.count called on null or undefined");var e=String(arguments[0]||"");if(""===e)return 0;for(var t=String.prototype.indexOf,r=e.length,n=Number(arguments[1])||0,a=0;(n=t.call(this,e,n))!==-1;)++a,n+=r;return a}}),Object.defineProperty(String.prototype,"splice",{configurable:!0,writable:!0,value:function(e,t,r){if(null==this)throw new TypeError("String.prototype.splice called on null or undefined");var n=this.length>>>0;if(0===n)return"";var a=Number(e);Number.isSafeInteger(a)?a<0&&(a+=n,a<0&&(a=0)):a=0,a>n&&(a=n);var i=Number(t);(!Number.isSafeInteger(i)||i<0)&&(i=0);var o=this.slice(0,a);return"undefined"!=typeof r&&(o+=r),a+i<n&&(o+=this.slice(a+i)),o}}),Object.defineProperty(String.prototype,"splitOrEmpty",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.splitOrEmpty called on null or undefined");return""===String(this)?[]:String.prototype.split.apply(this,arguments)}}),Object.defineProperty(String.prototype,"toLocaleUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toLocaleUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return n===-1?"":r.toLocaleUpperCase()+e.slice(n+1)}}),Object.defineProperty(String.prototype,"toUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return n===-1?"":r.toUpperCase()+e.slice(n+1)}}),Object.defineProperty(Date.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:date)",this.toISOString()]}}),Object.defineProperty(Function.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)","("+this.toString()+")"]}}),Object.defineProperty(Map.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:map)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(RegExp.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)",this.toString()]}}),Object.defineProperty(Set.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:set)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(JSON,"reviveWrapper",{configurable:!0,writable:!0,value:function(e,t){if("string"!=typeof e)throw new TypeError("JSON.reviveWrapper code parameter must be a string");return["(revive:eval)",[e,t]]}}),Object.defineProperty(JSON,"_real_parse",{value:JSON.parse}),Object.defineProperty(JSON,"parse",{configurable:!0,writable:!0,value:function value(text,reviver){return JSON._real_parse(text,function(key,val){var value=val;if(Array.isArray(value)&&2===value.length)switch(value[0]){case"(revive:set)":value=new Set(value[1]);break;case"(revive:map)":value=new Map(value[1]);break;case"(revive:date)":value=new Date(value[1]);break;case"(revive:eval)":try{if(Array.isArray(value[1])){var $ReviveData$=value[1][1];value=eval(value[1][0])}else value=eval(value[1])}catch(e){}}else if("string"==typeof value&&"@@revive@@"===value.slice(0,10))try{value=eval(value.slice(10))}catch(e){}if("function"==typeof reviver)try{value=reviver(key,value)}catch(e){}return value})}}),Object.defineProperty(Array.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.contains called on null or undefined");return Array.prototype.includes.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAll called on null or undefined");return Array.prototype.includesAll.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAny called on null or undefined");return Array.prototype.includesAny.apply(this,arguments)}}),Object.defineProperty(String.prototype,"readBracketedList",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.readBracketedList called on null or undefined");for(var e=new RegExp("(?:\\[\\[((?:\\s|\\S)*?)\\]\\])|([^\"'\\s]\\S*)","gm"),t=[],r=void 0;null!==(r=e.exec(this));)r[1]?t.push(r[1]):r[2]&&t.push(r[2]);return t}})}(),function(){function e(e){13!==e.which&&32!==e.which||(e.preventDefault(),jQuery(safeActiveElement()||this).trigger("click"))}function t(e){return function(){var t=jQuery(this);t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments)}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(n,a){if(0===this.length||0===arguments.length)return this;var i=n,o=a;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this}})}(),function(){jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(0===this.length||0===r.length)return this;var a=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(a,t,e)}),this.append(a),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(t))}})}();var Browser=function(){var e={userAgent:navigator.userAgent.toLowerCase()};return e.isGecko=navigator&&"Gecko"===navigator.product&&!/webkit|trident/.test(e.userAgent),e.isIE=/msie|trident/.test(e.userAgent)&&!e.userAgent.includes("opera"),e.ieVersion=function(){var t=/(?:msie\s+|rv:)(\d{1,2}\.\d)/.exec(e.userAgent);return t?Number([1]):0}(),e.isOpera=e.userAgent.includes("opera")||e.userAgent.includes(" opr/"),e.operaVersion=function(){var t=new RegExp((/applewebkit|chrome/.test(e.userAgent)?"opr":"version")+"\\/(\\d{1,2}\\.\\d+)"),r=t.exec(e.userAgent);return r?Number(r[1]):0}(),e.isMobile=Object.freeze({Android:/android/.test(e.userAgent),BlackBerry:/blackberry/.test(e.userAgent),iOS:/ip(?:hone|ad|od)/.test(e.userAgent),Windows:/iemobile/.test(e.userAgent),any:function(){var t=e.isMobile;return t.Android||t.BlackBerry||t.iOS||t.Windows}}),Object.freeze(e)}(),Has=function(){function e(e){try{if(null!=e&&e.length>=0){var t="SugarCube.WebStorage.Test",r="1701 Guilty Scott";if(e.setItem(t,r),e.getItem(t)===r)return e.removeItem(t),!0}}catch(e){}return!1}return Object.freeze({audio:"function"==typeof document.createElement("audio").canPlayType,fileAPI:"File"in window&&"FileList"in window&&"FileReader"in window&&!Browser.isMobile.any()&&(!Browser.isOpera||Browser.operaVersion>=15),geolocation:"geolocation"in navigator&&"function"==typeof navigator.geolocation.getCurrentPosition&&"function"==typeof navigator.geolocation.watchPosition,localStorage:"localStorage"in window&&e(window.localStorage),sessionStorage:"sessionStorage"in window&&e(window.sessionStorage)})}(),_ref4=function(){function e(e){var t=document.getElementById("style-story");null===t&&(t=document.createElement("style"),t.id="style-story",t.type="text/css",document.head.appendChild(t)),t=new StyleWrapper(t),t.add(e)}function t(e){if("object"!==("undefined"==typeof e?"undefined":_typeof(e))||null==e)return e;if("function"==typeof e.clone)return e.clone(!0);if(e.nodeType&&"function"==typeof e.cloneNode)return e.cloneNode(!0);var r=void 0;return Array.isArray(e)?r=[]:e instanceof Date?r=new Date(e.getTime()):e instanceof Map?(r=new Map,e.forEach(function(e,n){r.set(n,t(e))})):e instanceof RegExp?r=new RegExp(e):e instanceof Set?(r=new Set,e.forEach(function(e){r.add(t(e))})):r=Object.create(Object.getPrototypeOf(e)),Object.keys(e).forEach(function(n){return r[n]=t(e[n])}),r}function r(e){for(var t=document.createDocumentFragment(),r=document.createElement("p"),n=void 0;null!==(n=e.firstChild);){if(n.nodeType===Node.ELEMENT_NODE){var a=n.nodeName.toUpperCase();switch(a){case"BR":if(null!==n.nextSibling&&n.nextSibling.nodeType===Node.ELEMENT_NODE&&"BR"===n.nextSibling.nodeName.toUpperCase()){e.removeChild(n.nextSibling),e.removeChild(n),t.appendChild(r),r=document.createElement("p");continue}if(!r.hasChildNodes()){e.removeChild(n);continue}break;case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":r.hasChildNodes()&&(t.appendChild(r),r=document.createElement("p")),t.appendChild(n);continue}}r.appendChild(n)}r.hasChildNodes()&&t.appendChild(r),e.appendChild(t)}function n(e,t,r){var n="object"===("undefined"==typeof e?"undefined":_typeof(e))?e:document.getElementById(e);if(null==n)return null;var a=Array.isArray(t)?t:[t];jQuery(n).empty();for(var i=0,o=a.length;i<o;++i)if(Story.has(a[i]))return new Wikifier(n,Story.get(a[i]).processText().trim()),n;if(null!=r){var s=String(r).trim();""!==s&&new Wikifier(n,s)}return n}function a(e,t,r){return jQuery(document.createElement("span")).addClass("error").attr("title",r).text(L10n.get("errorTitle")+": "+(t||"unknown error")).appendTo(e),!1}function i(e,t){switch("undefined"==typeof e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return t;break;case"object":if(null===e)return t;if(Array.isArray(e)||e instanceof Set)return[].concat(_toConsumableArray(e)).map(function(e){return i(e,t)}).join(", ");if(e instanceof Map){var r=function(){var r=i,n=[].concat(_toConsumableArray(e)).map(function(e){return r(e[0],t)+" ⇒ "+r(e[1],t)}).join("; ");return{v:"( "+n+" )"}}();if("object"===("undefined"==typeof r?"undefined":_typeof(r)))return r.v}else{if(e instanceof Date)return e.toLocaleString();if("function"==typeof e.toString)return e.toString()}return Object.prototype.toString.call(e);case"function":case"undefined":return t}return String(e)}return Object.freeze(Object.defineProperties({},{addStyle:{value:e},clone:{value:t},convertBreaks:{value:r},setPageElement:{value:n},throwError:{value:a},toStringOrDefault:{value:i}}))}(),addStyle=_ref4.addStyle,clone=_ref4.clone,convertBreaks=_ref4.convertBreaks,setPageElement=_ref4.setPageElement,throwError=_ref4.throwError,toStringOrDefault=_ref4.toStringOrDefault,Util=function(){function e(e){var t=void 0;switch("undefined"==typeof e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function t(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function r(e){return String(e).trim().replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase()}function n(e){if(null==e)return"";var t=String(e);return t&&p.test(t)?t.replace(d,function(e){return f[e]}):t}function a(e){if(null==e)return"";var t=String(e);return t&&g.test(t)?t.replace(h,function(e){return m[e]}):t}function i(e){var t=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/,r=t.exec(String(e));if(null===r)throw new SyntaxError('invalid time value syntax: "'+e+'"');var n=Number(r[1]);if(/^[Ss]$/.test(r[2])&&(n*=1e3),Number.isNaN(n)||!Number.isFinite(n))throw new RangeError('invalid time value: "'+e+'"');return n}function o(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var t=void 0;switch("undefined"==typeof e?"undefined":_typeof(e)){case"string":t='"'+e+'"';break;case"number":t=String(e);break;default:t=Object.prototype.toString.call(e)}throw new Error("invalid milliseconds: "+t)}return e+"ms"}function s(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}var t="-ms-"===e.slice(0,4)?e.slice(1):e;return t.split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function u(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){var t=e.split("="),n=_slicedToArray(t,2),a=n[0],i=n[1];r[a]=i});var n=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+n+t.search,pathname:n,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}function l(e,t){for(var r=Object.prototype.toString,n=Array.isArray(e),a=[].concat(Object.keys(e),Object.keys(t)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),i={},o=void 0,s=function(e){return e===o},u=0,l=a.length;u<l;++u){var c=a[u],d=e[c],p=t[c];if(e.hasOwnProperty(c))if(t.hasOwnProperty(c)){if(d===p)continue;if(("undefined"==typeof d?"undefined":_typeof(d))===("undefined"==typeof p?"undefined":_typeof(p)))if("function"==typeof d)d.toString()!==p.toString()&&(i[c]=[v.Copy,p]);else if("object"!==("undefined"==typeof d?"undefined":_typeof(d))||null===d)i[c]=[v.Copy,p];else{var f=r.call(d),h=r.call(p);if(f===h)if("[object Date]"===f){var g=Number(p);Number(d)!==g&&(i[c]=[v.CopyDate,g])}else if("[object RegExp]"===f)d.toString()!==p.toString()&&(i[c]=[v.Copy,clone(p)]);else{var m=Util.diff(d,p);null!==m&&(i[c]=m)}else i[c]=[v.Copy,clone(p)]}else i[c]=[v.Copy,"object"!==("undefined"==typeof p?"undefined":_typeof(p))||null===p?p:clone(p)]}else if(n&&Util.isNumeric(c)){var y=Number(c);if(!o){o="";do o+="~";while(a.some(s));i[o]=[v.SpliceArray,y,y]}y<i[o][1]&&(i[o][1]=y),y>i[o][2]&&(i[o][2]=y)}else i[c]=v.Delete;else i[c]=[v.Copy,"object"!==("undefined"==typeof p?"undefined":_typeof(p))||null===p?p:clone(p)]}return Object.keys(i).length>0?i:null}function c(e,t){for(var r=Object.keys(t||{}),n=clone(e),a=0,i=r.length;a<i;++a){var o=r[a],s=t[o];if(s===v.Delete)delete n[o];else if(Array.isArray(s))switch(s[0]){case v.SpliceArray:n.splice(s[1],1+(s[2]-s[1]));break;case v.Copy:n[o]=clone(s[1]);break;case v.CopyDate:n[o]=new Date(s[1])}else n[o]=Util.patch(n[o],s)}return n}var d=/[&<>"'`]/g,p=new RegExp(d.source),f=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"}),h=/&(?:amp|lt|gt|quot|apos|#39|#x27|#96|#x60);/g,g=new RegExp(h.source),m=Object.freeze({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&apos;":"'","&#39;":"'","&#x27;":"'","&#96;":"`","&#x60;":"`"}),v=Object.freeze({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{isNumeric:{value:e},isBoolean:{value:t},slugify:{value:r},escape:{value:n},unescape:{value:a},fromCssTime:{value:i},toCssTime:{value:o},fromCssProperty:{value:s},parseUrl:{value:u},DiffOp:{value:v},diff:{value:l},patch:{value:c},random:{value:Math.random},entityEncode:{value:n},entityDecode:{value:a},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleAudio=function(){function e(){return g}function t(e){g=!!e,l("mute",g)}function r(){return f}function n(e){f=Math.clamp(e,.2,5),l("rate",f)}function a(){return h}function i(e){h=Math.clamp(e,0,1),l("volume",h)}function o(){l("stop")}function s(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");p.set(e,t)}function u(e){p.delete(e)}function l(e,t){p.forEach(function(r){return r(e,t)})}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(m,[null].concat(t)))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(v,[null].concat(t)))}var p=new Map,f=1,h=1,g=!1,m=function(){function e(t){if(_classCallCheck(this,e),Array.isArray(t))this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be an array of either URLs or source objects");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){if(!Array.isArray(t)||0===t.length)throw new Error("sources parameter must be an array of either URLs or source objects");var r=/^data:\s*audio\/([^;,]+)\s*[;,]/i,n=/\.([^.\/\\]+)$/,a=e.getType,i=[],o=document.createElement("audio");if(t.forEach(function(e){var t=null;switch("undefined"==typeof e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(s=r.exec(e),null===s)throw new Error("source data URI missing media type")}else if(s=n.exec(Util.parseUrl(e).pathname),null===s)throw new Error("source URL missing file extension");var u=a(s[1]);null!==u&&(t={src:e,type:u});break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');var l=a(e.format);null!==l&&(t={src:e.src,type:l});break;default:throw new Error("invalid source value (type: "+("undefined"==typeof e?"undefined":_typeof(e))+")")}if(null!==t){var c=document.createElement("source");c.src=t.src,c.type=t.type,o.appendChild(c),i.push(t)}}),!o.hasChildNodes())if(Browser.isIE)o.src=undefined;else{var s=document.createElement("source");s.src=undefined,s.type=undefined,o.appendChild(s)}this._finalize(o,i,clone(t))}},{key:"_copy",value:function(t){if(!(t instanceof e))throw new Error("original parameter must be an instance of AudioWrapper");this._finalize(t.audio.cloneNode(!0),clone(t.sources),clone(t.originalSources))}},{key:"_finalize",value:function(e,t,r){var n=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{configurable:!0,value:Object.freeze(t)},originalSources:{configurable:!0,value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart",function(){return n._error=!1}).on("error",function(){return n._error=!0}).find("source:last-of-type").on("error",function(){return n._trigger("error")}),SimpleAudio.subscribe(this,function(e){if(!n.audio)return void SimpleAudio.unsubscribe(n);switch(e){case"mute":n._updateAudioMute();break;case"rate":n._updateAudioRate();break;case"stop":n.stop();break;case"volume":n._updateAudioVolume()}}),this.load()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"clone",value:function(){return new e(this)}},{key:"destroy",value:function(){SimpleAudio.unsubscribe(this),this.fadeStop(),this.stop();var e=this.audio;for(jQuery(e).off();e.hasChildNodes();)e.removeChild(e.firstChild);e.load(),this._error=!0,delete this.audio,delete this.sources,delete this.originalSources}},{key:"_updateAudioMute",value:function(){this.audio.muted=this._mute||SimpleAudio.mute}},{key:"_updateAudioRate",value:function(){this.audio.playbackRate=this._rate*SimpleAudio.rate}},{key:"_updateAudioVolume",value:function(){this.audio.volume=this._volume*SimpleAudio.volume}},{
-key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){return this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isPlaying",value:function(){return!(this.audio.ended||this.audio.paused||!this.hasSomeData())}},{key:"isPaused",value:function(){return this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended}},{key:"isEnded",value:function(){return this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this.audio.loop}},{key:"load",value:function(){"auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load()}},{key:"play",value:function(){this.audio.play()}},{key:"pause",value:function(){this.audio.pause()}},{key:"stop",value:function(){this.audio.pause(),this.time=0,this._trigger("aw:stop")}},{key:"fadeWithDuration",value:function(e,t,r){var n=this;this.fadeStop();var a=Math.clamp(null==r?this.volume:r,0,1),i=Math.clamp(t,0,1);a!==i&&(this.volume=a,jQuery(this.audio).off("timeupdate.AudioWrapper:fadeWithDuration").one("timeupdate.AudioWrapper:fadeWithDuration",function(){var t=void 0,r=void 0;a<i?(t=a,r=i):(t=i,r=a);var o=Number(e);o<1&&(o=1);var s=25,u=(i-a)/(o/(s/1e3));n._faderId=setInterval(function(){return n.isPlaying()?(n.volume=Math.clamp(n.volume+u,t,r),0===n.volume&&n.pause(),void(n.volume===i&&(n.fadeStop(),n._trigger("aw:fade")))):void n.fadeStop()},s)}),this.play())}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"on",value:function(t,r){if("function"!=typeof r)throw new Error("listener parameter must be a function");var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).on(a,r),this}},{key:"one",value:function(t,r){if("function"!=typeof r)throw new Error("listener parameter must be a function");var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).one(a,r),this}},{key:"off",value:function(t,r){if(r&&"function"!=typeof r)throw new Error("listener parameter must be a function");if(!t)return jQuery(this.audio).off(".AudioWrapperEvent",r);var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(t){if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}return e+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).off(a,r),this}},{key:"duration",get:function(){return this.audio.duration}},{key:"ended",get:function(){return this.audio.ended}},{key:"loop",get:function(){return this.audio.loop},set:function(e){this.audio.loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,this._updateAudioMute()}},{key:"paused",get:function(){return this.audio.paused}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),this._updateAudioRate()}},{key:"remaining",get:function(){return this.audio.duration-this.audio.currentTime}},{key:"time",get:function(){return this.audio.currentTime},set:function(e){var t=this;try{this.audio.currentTime=e}catch(r){jQuery(this.audio).off("loadedmetadata.AudioWrapper:time").one("loadedmetadata.AudioWrapper:time",function(){return t.audio.currentTime=e})}}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),this._updateAudioVolume()}}],[{key:"_verifyType",value:function(t){if(!t||!Has.audio)return null;var r=e._types;if(!r.hasOwnProperty(t)){var n=document.createElement("audio");r[t]=""!==n.canPlayType(t).replace(/^no$/i,"")}return r[t]?t:null}},{key:"getType",value:function(t){if(!t||!Has.audio)return null;var r=e.formats,n=t.toLowerCase(),a=r.hasOwnProperty(n)?r[n]:"audio/"+n;return e._verifyType(a)}},{key:"canPlayFormat",value:function(t){return null!==e.getType(t)}},{key:"canPlayType",value:function(t){return null!==e._verifyType(t)}}]),e}();Object.defineProperties(m,{formats:{value:{aac:"audio/aac",caf:"audio/x-caf","x-caf":"audio/x-caf",mp3:'audio/mpeg; codecs="mp3"',mpeg:'audio/mpeg; codecs="mp3"',m4a:"audio/mp4",mp4:"audio/mp4","x-m4a":"audio/mp4","x-mp4":"audio/mp4",oga:"audio/ogg",ogg:"audio/ogg",opus:'audio/ogg; codecs="opus"',wav:"audio/wav",wave:"audio/wav",weba:"audio/webm",webm:"audio/webm"}},_types:{value:{}},_events:{value:Object.freeze({canplay:"canplaythrough",end:"ended",error:"error",fade:"aw:fade",pause:"pause",play:"playing",rate:"ratechange",seek:"seeked",stop:"aw:stop",volume:"volumechange"})}});var v=function(){function e(t){var r=this;_classCallCheck(this,e),Object.defineProperties(this,{tracks:{configurable:!0,value:[]},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}}),Array.isArray(t)?t.forEach(function(e){return r.add(e)}):t instanceof e&&t.tracks.forEach(function(e){return r.add(e)})}return _createClass(e,[{key:"add",value:function(e){var t=this;if(null==e||"object"!==("undefined"==typeof e?"undefined":_typeof(e)))throw new Error("track parameter must be an object");var r=void 0,n=void 0,a=void 0,i=void 0;if(e instanceof m)r=!0,n=e.clone(),a=e.volume,i=e.rate;else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof m))throw new Error('track object\'s "track" property must be an AudioWrapper object');r=e.hasOwnProperty("copy")&&e.copy,n=r?e.track.clone():e.track,a=e.hasOwnProperty("volume")?e.volume:e.track.volume,i=e.hasOwnProperty("rate")?e.rate:e.track.rate}n.stop(),n.loop=!1,n.mute=!1,n.volume=a,n.rate=i,n.on("end.AudioListEvent",function(){return t._onEnd()}),this.tracks.push({copy:r,track:n,volume:a,rate:i})}},{key:"destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.copy}).forEach(function(e){return e.track.destroy()}),delete this.tracks,delete this.queue}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this._loop}},{key:"isShuffled",value:function(){return this._shuffle}},{key:"play",value:function(){(null!==this.current&&!this.current.track.isEnded()||(0===this.queue.length&&this._buildList(),this._next()))&&this.current.track.play()}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this.queue.splice(0)}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fadeWithDuration",value:function(e,t,r){if(0===this.queue.length&&this._buildList(),null!==this.current&&!this.current.track.isEnded()||this._next()){var n=Math.clamp(t,0,1)*this.current.volume,a=void 0;null!=r&&(a=Math.clamp(r,0,1)*this.current.volume),this.current.track.fadeWithDuration(e,n,a),this._volume=t}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"_next",value:function(){return null!==this.current&&this.current.track.stop(),0===this.queue.length?(this.current=null,!1):(this.current=this.queue.shift(),!this.current.track.hasSource()||this.current.track.isFailed()?this._next():(this.current.track.mute=this._mute,this.current.track.rate=this.rate*this.current.rate,this.current.track.volume=this.volume*this.current.volume,!0))}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._buildList()}this._next()&&this.current.track.play()}},{key:"_buildList",value:function(){var e;this.queue.splice(0),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks)),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}},{key:"duration",get:function(){return this.tracks.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0)}},{key:"loop",get:function(){return this._loop},set:function(e){this._loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,null!==this.current&&(this.current.track.mute=this._mute)}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),null!==this.current&&(this.current.track.rate=this.rate*this.current.rate)}},{key:"remaining",get:function(){var e=this.queue.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining),e}},{key:"shuffle",get:function(){return this._shuffle},set:function(e){this._shuffle=!!e}},{key:"time",get:function(){return this.duration-this.remaining}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),null!==this.current&&(this.current.track.volume=this.volume*this.current.volume)}}]),e}();return Object.freeze(Object.defineProperties({},{mute:{get:e,set:t},rate:{get:r,set:n},volume:{get:a,set:i},stop:{value:o},subscribe:{value:s},unsubscribe:{value:u},publish:{value:l},create:{value:c},createList:{value:d}}))}(),SimpleStore=function(){function e(e,n){if(r)return r.create(e,n);for(var a=0;a<t.length;++a)if(t[a].init(e,n))return r=t[a],r.create(e,n);throw new Error("no valid adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){return r=Has.localStorage&&Has.sessionStorage}function t(e,t){if(!r)throw new Error("adapter not initialized");return new n(e,t)}var r=!1,n=function(){function e(t,r){_classCallCheck(this,e);var n=t+".",a=null,i=null;r?(a=window.localStorage,i="localStorage"):(a=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:a},_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function e(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){throw/quota_?(?:exceeded|reached)/i.test(e.name)&&(e.message=this.name+" quota exceeded"),e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e){return LZString.compressToUTF16(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromUTF16(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){return n="cookie"in document,n&&r(e),n}function t(e,t){if(!n)throw new Error("adapter not initialized");return new a(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),n=e+"!.",i=e+"*.",o=/\.(?:state|rcWarn)$/,s=document.cookie.split(/;\s*/),u=0;u<s.length;++u){var l=s[u].split("="),c=decodeURIComponent(l[0]);if(r.test(c)){var d=decodeURIComponent(l[1]);""!==d&&!function(){var e=!o.test(c);a._setCookie(c,undefined,"Thu, 01 Jan 1970 00:00:00 GMT"),a._setCookie(c.replace(r,function(){return e?n:i}),d,e?"Tue, 19 Jan 2038 03:14:07 GMT":undefined)}()}}}var n=!1,a=function(){function e(t,r){_classCallCheck(this,e);var n=""+t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function e(){if(""===document.cookie)return[];for(var t=document.cookie.split(/;\s*/),e=[],r=0;r<t.length;++r){var n=t[r].split("="),a=decodeURIComponent(n[0]);if(this._prefixRe.test(a)){var i=decodeURIComponent(n[1]);""!==i&&e.push(a.replace(this._prefixRe,""))}}return e}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?"Tue, 19 Jan 2038 03:14:07 GMT":undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,"Thu, 01 Jan 1970 00:00:00 GMT"),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var n=t[r].split("="),a=decodeURIComponent(n[0]);if(e===a){var i=decodeURIComponent(n[1]);return i||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var n=encodeURIComponent(e)+"=";null!=t&&(n+=encodeURIComponent(t)),null!=r&&(n+="; "+r),n+="; path=/",document.cookie=n}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){var e=function(){function e(t,r,n,a){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:a,"aria-label":a,"data-type":null!=r?r:"","data-name":null!=n?n:""}).addClass("debug"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){var t=this;if(null==e){var r=function(){var e={};return t.view.className.splitOrEmpty(/\s+/).forEach(function(t){"debug"!==t&&(e[t]=!0)}),{v:e}}();if("object"===("undefined"==typeof r?"undefined":_typeof(r)))return r.v}else if("object"===("undefined"==typeof e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"init",value:function(){jQuery('<button id="debug-view-toggle">'+L10n.get("debugViewTitle")+"</button>").ariaClick({label:L10n.get("debugViewToggle")},function(){return e.toggle()}).prependTo("#ui-bar-body"),e.enable()}},{key:"enable",value:function(){jQuery(document.documentElement).addClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}},{key:"toggle",value:function(){jQuery(document.documentElement).toggleClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}}]),e}();return e}(),PRNGWrapper=function(){var e=function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),n=t.pull;n>0;--n)r.random();return r}}]),e}();return e}(),StyleWrapper=function(){var e=/\[[<>]?[Ii][Mm][Gg]\[(?:\s|\S)*?\]\]+/g,t=new RegExp(e.source),r=function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var n=r;t.test(n)&&(e.lastIndex=0,n=n.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var n=Story.get(r);n.tags.includes("Twine.image")&&(r=n.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=n:this.style.appendChild(document.createTextNode(n))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}();return r}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=50,o=l10nStrings[r],s=0;a.test(o);){if(++s>i)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");n.lastIndex=0,o=o.replace(n,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return o}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesEmptySlot":t=strings.saves.emptySlot;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesSavedOn":t=strings.saves.savedOn;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var n=/\{\w+\}/g,a=new RegExp(n.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugViewTitle:"Debug View",debugViewToggle:"Toggle the debug view",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",savesDisallowed:"Saving has been disallowed on this passage.",savesEmptySlot:"— slot empty —",savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesSavedOn:"Saved on",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){function e(){throw new Error("Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code")}function t(){throw new Error("Config.history.tracking has been deprecated, use Config.history.maxStates instead")}var r=Object.seal({debug:!1,addVisitedLinkClass:!1,cleanupWikifierOutput:!1,loadDelay:0,history:Object.seal({controls:!0,maxStates:100,get mode(){e()},set mode(t){e()},get tracking(){t()},set tracking(e){t()}}),macros:Object.seal({ifAssignmentError:!0,maxLoopIterations:1e3}),navigation:Object.seal({override:undefined}),passages:Object.seal({descriptions:undefined,displayTitles:!1,start:undefined,transitionOut:undefined}),saves:Object.seal({autoload:undefined,autosave:undefined,id:"untitled-story",isAllowed:undefined,onLoad:undefined,onSave:undefined,slots:8,version:undefined}),ui:Object.seal({stowBarInitially:800,updateStoryElements:!0}),transitionEndEventName:function(){for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),n=0;n<t.length;++n)if(r.style[t[n]]!==undefined)return e.get(t[n]);return""}()});return r}(),Patterns=function(){var e=/[\u0150\u0170]/g.test("Ő"),t="[\\s\\u00A0\\u2028\\u2029]",r="[0-9A-Z_a-z\\-\\u00C0-\\u00D6\\u00D8-\\u00DE\\u00DF-\\u00F6\\u00F8-\\u00FF"+(e?"\\u0150\\u0170\\u0151\\u0171":"")+"]",n=r.replace("\\-",""),a="[$A-Z_a-z]",i=a+"[$0-9A-Z_a-z]*",o="[$_]",s=o+i,u="[A-Za-z][\\w-]*|[=-]",l="("+r+"+)\\(([^\\)\\|\\n]+)\\):",c="("+r+"+):([^;\\|\\n]+);",d="((?:\\."+r+"+)+);",p="((?:#"+r+"+)+);",f=l+"|"+c+"|"+d+"|"+p,h="(?:file|https?|mailto|ftp|javascript|irc|news|data):[^\\s'\"]+";return Object.freeze({space:t,anyLetter:r,anyLetterStrict:n,identifierFirstChar:a,identifier:i,variableSigil:o,variable:s,macroName:u,inlineCss:f,url:h})}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,n,a){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:n,one:!!r}):(i=r,o={namespace:a,one:!!n,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,n,a,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),n&&o.addClass(n),i&&o.attr("title",i),a&&o.text(a),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*a,n(o,Math.easeInOut(i)),(1===a&&i>=1||a===-1&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function n(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var a="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,n(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){c+=i,window.scroll(0,o+l*(u*Math.easeInOut(c))),c>=1&&window.clearInterval(d)}function n(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}function a(e){var t=n(e),r=t+e.offsetHeight,a=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=a+i;return t>=a&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}var i=null!=t?Number(t):.1;Number.isNaN(i)||!Number.isFinite(i)||i<0?i=.1:i>1&&(i=1);var o=window.scrollY?window.scrollY:document.body.scrollTop,s=a(e),u=Math.abs(o-s),l=o>s?-1:1,c=0,d=void 0;d=window.setInterval(r,25)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,n=e.length;r<n;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,n=State.turns,a=0,i=e.length;a<i&&n>-1;++a){var o=t.lastIndexOf(e[a]);n=Math.min(n,o===-1?-1:r-o)}return n}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){if(0===arguments.length)throw new Error("random called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){if(0===arguments.length)throw new Error("randomFloat called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,n=e.length;r<n;++r)t=t.concat(Story.get(e[r]).tags);return t}function time(){return null===Engine.lastPlay?0:Date.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,n=0,a=e.length;n<a&&r>0;++n)r=Math.min(r,t.count(e[n]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,n=new Map,a=0,i=0,o=r.length;i<o;++i){var s=r[i];if(n.has(s))n.get(s)&&++a;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++a,n.set(s,!0)):n.set(s,!1)}}}return a}function evalJavaScript(code,output){return function(code,output){return eval(code);
-}.call(output?{output:output}:null,String(code),output)}function evalTwineScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output)}var parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var a=e,i=void 0;null!==(i=r.exec(a));)if(i[5]){var o=i[5];if("$"===o||"_"===o)continue;if(n.test(o))o=o[0];else if("is"===o){var s=r.lastIndex,u=a.slice(s);/^\s+not\b/.test(u)&&(a=a.splice(s,u.search(/\S/)),o="isnot")}t.hasOwnProperty(o)&&(a=a.splice(i.index,o.length,t[o]),r.lastIndex+=t[o].length-o.length)}return a}var t=Object.freeze({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),n=new RegExp("^"+Patterns.variable);return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),Wikifier=function(){var e=void 0,t=0,r=function(){function r(n,a,i){_classCallCheck(this,r),"object"!==("undefined"==typeof e?"undefined":_typeof(e))&&r.compileFormatters(),Object.defineProperties(this,{source:{value:String(a)},options:{writable:!0,value:Object.assign({profile:"all"},i)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==n?this.output=document.createDocumentFragment():n.jquery?this.output=n[0]:this.output=n;try{++t,this.subWikify(this.output),1===t&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--t}}return _createClass(r,[{key:"subWikify",value:function(e,t,r){var n=this.output,a=void 0;this.output=e,null!=r&&"object"===("undefined"==typeof r?"undefined":_typeof(r))&&(a=this.options,this.options=Object.assign({},this.options,r));var i=t?new RegExp("(?:"+t+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,o=void 0,s=void 0;do{if(this.formatter.formatterRegExp.lastIndex=this.nextMatch,i&&(i.lastIndex=this.nextMatch),s=this.formatter.formatterRegExp.exec(this.source),o=i?i.exec(this.source):null,o&&(!s||o.index<=s.index))return o.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,o.index),this.matchStart=o.index,this.matchLength=o[0].length,this.matchText=o[0],this.nextMatch=i.lastIndex,this.output=n,void(a&&(this.options=a));if(s){s.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,s.index),this.matchStart=s.index,this.matchLength=s[0].length,this.matchText=s[0],this.nextMatch=this.formatter.formatterRegExp.lastIndex;for(var u=void 0,l=1,c=s.length;l<c;++l)if(s[l]){u=l-1;break}if(this.formatter.formatters[u].handler(this),null!=TempState.break)break}}while(o||s);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=n,a&&(this.options=a)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this.rawArgs())}},{key:"formatter",get:function(){if(!e.hasOwnProperty(this.options.profile))throw new Error('nonexistent formatter profile "'+this.options.profile+'"');return e[this.options.profile]}}],[{key:"compileFormatters",value:function(){var t=r.formatters,n=t.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return e={all:{formatters:t,formatterRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{formatters:n,formatterRegExp:new RegExp(n.map(function(e){return"("+e.match+")"}).join("|"),"gm")}}}},{key:"getValue",value:function(e){var t=r.parseStoryVariable(e),n=void 0;if(null!==t){n=t.store;for(var a=t.names,i=0,o=a.length;i<o;++i){if("undefined"==typeof n[a[i]]){n=undefined;break}n=n[a[i]]}}return n}},{key:"setValue",value:function(e,t){var n=r.parseStoryVariable(e);if(null!==n){for(var a=n.names,i=a.pop(),o=n.store,s=0,u=a.length;s<u;++s){if("undefined"==typeof o[a[s]]){o=undefined;break}o=o[a[s]]}if(o!==undefined)return o[i]=t,!0}return!1}},{key:"parseStoryVariable",value:function(e){for(var t={store:"$"===e[0]?State.variables:State.temporary,names:[]},n=e,a=void 0;null!==(a=r._parseVarRegExp.exec(n));)n=n.slice(a[0].length),a[1]?t.names.push(a[1]):a[2]?t.names.push(a[2]):a[3]?t.names.push(a[3]):a[4]?t.names.push(a[4]):a[5]?t.names.push(r.getValue(a[5])):a[6]&&t.names.push(Number(a[6]));return""===n?t:null}},{key:"wikifyEval",value:function(e){var t=document.createDocumentFragment();new r(t,e);var n=t.querySelector(".error");if(null!==n)throw new Error(n.textContent.replace(/^(?:(?:Uncaught\s+)?Error:\s+)+/,""));return t}},{key:"createInternalLink",value:function(e,t,r,n){var a=jQuery(document.createElement("a"));return null!=t&&(a.attr("data-passage",t),Story.has(t)?(a.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&a.addClass("link-visited")):a.addClass("link-broken"),a.ariaClick({one:!0},function(){"function"==typeof n&&n(),Engine.play(t)})),r&&a.append(document.createTextNode(r)),e&&a.appendTo(e),a[0]}},{key:"createExternalLink",value:function(e,t,r){var n=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&n.attr({href:t,tabindex:0}),n[0]}},{key:"isExternalLink",value:function(e){if(Story.has(e))return!1;var t=new RegExp("^"+Patterns.url,"gim");return t.test(e)||/[\/.?#]/.test(e)}}]),r}();return Object.defineProperties(r,{_parseVarRegExp:{value:new RegExp(["^(?:",Patterns.variableSigil,"(",Patterns.identifier,")|\\.(",Patterns.identifier,")|\\[(?:(?:\"((?:\\\\.|[^\"\\\\])+)\")|(?:'((?:\\\\.|[^'\\\\])+)')|(",Patterns.variableSigil,Patterns.identifierFirstChar,".*)|(\\d+))\\])"].join(""))},helpers:{value:{}},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(r.helpers,{_inlineCssLookahead:{value:new RegExp(Patterns.inlineCss,"gm")},inlineCss:{value:function(e){var t={classes:[],id:"",styles:{}},r=this._inlineCssLookahead,n=void 0;do{r.lastIndex=e.nextMatch;var a=r.exec(e.source);n=a&&a.index===e.nextMatch,n&&(a[1]?t.styles[Util.fromCssProperty(a[1])]=a[2].trim():a[3]?t.styles[Util.fromCssProperty(a[3])]=a[4].trim():a[5]?t.classes=t.classes.concat(a[5].slice(1).split(/\./)):a[6]&&(t.id=a[6].slice(1).split(/#/).pop()),e.nextMatch=r.lastIndex)}while(n);return t}},evalText:{value:function(e){var t=void 0;try{t=Scripting.evalTwineScript(e),null==t||"function"==typeof t?t=e:(t=String(t),/\[(?:object(?:\s+[^\]]+)?|native\s+code)\]/.test(t)&&(t=e))}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:r.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var n=e[r];switch(n.nodeType){case Node.ELEMENT_NODE:var a=n.nodeName.toUpperCase();if("BR"===a)return!0;var i=t?window.getComputedStyle(n,null):n.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(a){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},parseSquareBracketedMarkup:{value:function(e){function t(){return d>=e.source.length?u:e.source[d++]}function r(){return d>=e.source.length?u:e.source[d]}function n(t){return t<1||d+t>=e.source.length?u:e.source[d+t]}function a(){return{error:String.format.apply(String,arguments),pos:d}}function i(){c=d}function o(t){var r=e.source.slice(c,d).trim();if(""===r)throw new Error("malformed wiki "+(h?"link":"image")+", empty "+t+" component");"link"===t&&"~"===r[0]?(l.forceInternal=!0,l.link=r.slice(1)):l[t]=r,c=d}function s(e){++d;e:for(;;){switch(r()){case"\\":++d;var t=r();if(t!==u&&"\n"!==t)break;case u:case"\n":return u;case e:break e}++d}return d}var u=-1,l={},c=e.matchStart,d=c+1,p=void 0,f=void 0,h=void 0,g=void 0;if(g=r(),"["===g)h=l.isLink=!0;else{switch(h=!1,g){case"<":l.align="left",++d;break;case">":l.align="right",++d}if(!/^[Ii][Mm][Gg]$/.test(e.source.slice(d,d+3)))return a("malformed square-bracketed wiki markup");d+=3,l.isImage=!0}if("["!==t())return a("malformed wiki {0}",h?"link":"image");p=1,f=0,i();try{e:for(;;){switch(g=r()){case u:case"\n":return a("unterminated wiki {0}",h?"link":"image");case'"':if(s(g)===u)return a("unterminated double quoted string in wiki {0}",h?"link":"image");break;case"'":if((4===f||3===f&&h)&&s(g)===u)return a("unterminated single quoted string in wiki {0}",h?"link":"image");break;case"|":0===f&&(o(h?"text":"title"),++c,f=1);break;case"-":0===f&&">"===n(1)&&(o(h?"text":"title"),++d,c+=2,f=1);break;case"<":0===f&&"-"===n(1)&&(o(h?"link":"source"),++d,c+=2,f=2);break;case"[":if(f===-1)return a("unexpected left square bracket '['");++p,1===p&&(i(),++c);break;case"]":if(--p,0===p){switch(f){case 0:case 1:o(h?"link":"source"),f=3;break;case 2:o(h?"text":"title"),f=3;break;case 3:h?(o("setter"),f=-1):(o("link"),f=4);break;case 4:o("setter"),f=-1}if(++d,"]"===r()){++d;break e}--d}}++d}}catch(e){return a(e.message)}return l.pos=d,l}}}),Object.defineProperty(r,"formatters",{value:[{name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(\\/?"+Patterns.macroName+")(?:\\s*)((?:(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),argsPattern:["(``)","`((?:\\\\.|[^`\\\\])+)`","(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","(\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)","([^`\"'\\s]+)","(`|\"|')"].join("|"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,n=this.working.source,a=this.working.name,i=this.working.arguments,o=void 0;try{if(o=Macro.get(a),!o){if(Macro.tags.has(a)){var s=Macro.tags.get(a);return throwError(e.output,"child tag <<"+a+">> was found outside of a call to its parent macro"+(1===s.length?"":"s")+" <<"+s.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+a+">> does not exist",e.source.slice(t,e.nextMatch))}var u=null;if(o.hasOwnProperty("tags")&&(u=this.parseBody(e,o),!u))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+a+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof o.handler)return throwError(e.output,"macro <<"+a+">> handler function "+(o.hasOwnProperty("handler")?"is not a function":"does not exist"),e.source.slice(t,e.nextMatch));var l=u?u[0].args:this.createArgs(i,o.hasOwnProperty("skipArgs")&&!!o.skipArgs||o.hasOwnProperty("skipArg0")&&!!o.skipArg0);if(o.hasOwnProperty("_MACRO_API")){this.context=new MacroContext({parent:this.context,macro:o,name:a,args:l,payload:u,parser:e,source:n});try{o.handler.call(this.context)}finally{this.context=this.context.parent}}else{var c=e._rawArgs;e._rawArgs=i,o.handler(e.output,a,l,e,u),e._rawArgs=c}}catch(r){return throwError(e.output,"cannot execute "+(o&&o.isWidget?"widget":"macro")+" <<"+a+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,n="/"+r,a="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=t.hasOwnProperty("skipArgs")&&t.skipArgs,u=t.hasOwnProperty("skipArg0")&&t.skipArg0,l=-1,c=1,d=this.working.source,p=this.working.name,f=this.working.arguments,h=e.nextMatch;(e.matchStart=e.source.indexOf(this.match,e.nextMatch))!==-1;)if(this.parseTag(e)){var g=this.working.source,m=this.working.name,v=this.working.arguments,y=this.working.index,b=e.nextMatch;switch(m){case r:++c;break;case a:case n:--c;break;default:if(1===c&&i)for(var w=0,k=i.length;w<k;++w)m===i[w]&&(o.push({source:d,name:p,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(h,y)}),d=g,p=m,f=v,h=b)}if(0===c){o.push({source:d,name:p,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(h,y)}),l=b;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return l!==-1?(e.nextMatch=l,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},parseArgs:function(e){for(var t=new RegExp(this.argsPattern,"gm"),n=[],a=new RegExp("^"+Patterns.variable),i=void 0;null!==(i=t.exec(e));){var o=void 0;if(i[1])o=undefined;else if(i[2]){o=i[2];try{o=Scripting.evalTwineScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}}else if(i[3])o="";else if(i[4]){o=i[4];try{o=Scripting.evalJavaScript(o)}catch(e){throw new Error("unable to parse macro argument '"+o+"': "+e.message)}}else if(i[5]){o=i[5];try{o=Scripting.evalJavaScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}}else if(i[6]){o=i[6];var s=r.helpers.parseSquareBracketedMarkup({source:o,matchStart:0});if(s.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+o+'": '+s.error);if(s.pos<o.length)throw new Error('unable to parse macro argument "'+o+'": unexpected character(s) "'+o.slice(s.pos)+'" (pos: '+s.pos+")");s.isLink?(o={isLink:!0},o.count=s.hasOwnProperty("text")?2:1,o.link=r.helpers.evalPassageId(s.link),o.text=s.hasOwnProperty("text")?r.helpers.evalText(s.text):o.link,o.external=!s.forceInternal&&r.isExternalLink(o.link),o.setFn=s.hasOwnProperty("setter")?function(e){return function(){return Scripting.evalJavaScript(e)}}(Scripting.parse(s.setter)):null):s.isImage&&(o=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(r.helpers.evalPassageId(s.source)),s.hasOwnProperty("align")&&(o.align=s.align),s.hasOwnProperty("title")&&(o.title=r.helpers.evalText(s.title)),s.hasOwnProperty("link")&&(o.link=r.helpers.evalPassageId(s.link),o.external=!s.forceInternal&&r.isExternalLink(o.link)),o.setFn=s.hasOwnProperty("setter")?function(e){return function(){return Scripting.evalJavaScript(e)}}(Scripting.parse(s.setter)):null)}else if(i[7])if(o=i[7],a.test(o))o=r.getValue(o);else if(/^(?:settings|setup)[.[]/.test(o))try{o=Scripting.evalTwineScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}else if("null"===o)o=null;else if("undefined"===o)o=undefined;else if("true"===o)o=!0;else if("false"===o)o=!1;else{var u=Number(o);Number.isNaN(u)||(o=u)}else if(i[8]){var l=void 0;switch(i[8]){case"`":l="backtick expression";break;case'"':l="double quoted string";break;case"'":l="single quoted string"}throw new Error("unterminated "+l+" in macro argument string")}n.push(o)}return n}},{name:"prettyLink",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=r.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var n=r.helpers.evalPassageId(t.link),a=t.hasOwnProperty("text")?r.helpers.evalText(t.text):n,i=t.hasOwnProperty("setter")?function(e){return function(){return Scripting.evalJavaScript(e)}}(Scripting.parse(t.setter)):null,o=(Config.debug?new DebugView(e.output,"wiki-link","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!r.isExternalLink(n)?r.createInternalLink(o,n,a,i):r.createExternalLink(o,n,a)}},{name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(r.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}},{name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=r.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var n=void 0;Config.debug&&(n=new DebugView(e.output,"wiki-image",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),n.modes({block:!0}));var a=t.hasOwnProperty("setter")?function(e){return function(){return Scripting.evalJavaScript(e)}}(Scripting.parse(t.setter)):null,i=(Config.debug?n:e).output,o=void 0;if(t.hasOwnProperty("link")){var s=r.helpers.evalPassageId(t.link);i=t.forceInternal||!r.isExternalLink(s)?r.createInternalLink(i,s,null,a):r.createExternalLink(i,s),i.classList.add("link-image")}if(i=jQuery(document.createElement("img")).appendTo(i).get(0),o=r.helpers.evalPassageId(t.source),"data:"!==o.slice(0,5)&&Story.has(o)){var u=Story.get(o);u.tags.includes("Twine.image")&&(i.setAttribute("data-passage",u.title),o=u.text)}i.src=o,t.hasOwnProperty("title")&&(i.title=r.helpers.evalText(t.title)),t.hasOwnProperty("align")&&(i.align=t.align)}},{name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(jQuery(document.createElement("pre")).text(t[1]).appendTo(e.output),e.nextMatch=this.lookahead.lastIndex)}},{name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}},{name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRegExp:/\s*\n/gm,handler:function(e){var t=r.helpers.inlineCss(e);this.blockRegExp.lastIndex=e.nextMatch;var n=this.blockRegExp.exec(e.source),a=n&&n.index===e.nextMatch,i=jQuery(document.createElement(a?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?i.addClass("marked"):(t.classes.forEach(function(e){return i.addClass(e)}),""!==t.id&&i.attr("id",t.id),i.css(t.styles)),a?(e.nextMatch+=n[0].length,e.subWikify(i[0],"\\n?"+this.terminator)):e.subWikify(i[0],this.terminator)}},{name:"verbatimText",profiles:["core"],match:'"{3}|<nowiki>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<nowiki>((?:.|\n)*?)<\/nowiki>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output),e.nextMatch=this.lookahead.lastIndex)}},{name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<hr\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}},{name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}},{name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}},{name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=toStringOrDefault(r.getValue(e.matchText),null);null===t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new r((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,t)}},{name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){return r.helpers.hasBlockContext(e.output.childNodes)?void e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator):void jQuery(e.output).append(document.createTextNode(e.matchText))}},{name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),n=[],a=null,i=null,o=0,s=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var u=this.lookahead.exec(e.source);if(s=u&&u.index===e.nextMatch){var l=u[2];"k"===l?(t.className=u[1],e.nextMatch+=u[0].length+1):(l!==a&&(a=l,i=jQuery(document.createElement(this.rowTypes[l])).appendTo(t)),"c"===a?(i.css("caption-side",0===o?"top":"bottom"),e.nextMatch+=1,e.subWikify(i[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(i).get(0),n),++o)}}while(s)},rowHandler:function(e,t,n){var a=this,i=new RegExp(this.cellPattern,"gm"),o=0,s=1,u=void 0;do{i.lastIndex=e.nextMatch;var l=i.exec(e.source);if(u=l&&l.index===e.nextMatch){if("~"===l[1]){var c=n[o];c&&(++c.rowCount,c.$element.attr("rowspan",c.rowCount).css("vertical-align","middle")),e.nextMatch=l.index+l[0].length-1}else if(">"===l[1])++s,e.nextMatch=l.index+l[0].length-1;else{if(l[2]){e.nextMatch=l.index+l[0].length;break}!function(){++e.nextMatch;for(var i=r.helpers.inlineCss(e),u=!1,l=!1,c=void 0;" "===e.source.substr(e.nextMatch,1);)u=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(c=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):c=jQuery(document.createElement("td")).appendTo(t),n[o]={rowCount:1,$element:c},s>1&&(c.attr("colspan",s),s=1),e.subWikify(c[0],a.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(l=!0),i.classes.forEach(function(e){return c.addClass(e)}),""!==i.id&&c.attr("id",i.id),u&&l?i.styles["text-align"]="center":u?i.styles["text-align"]="right":l&&(i.styles["text-align"]="left"),c.css(i.styles),e.nextMatch=e.nextMatch-1}()}++o}}while(u)}},{name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],n=null,a=0,i=void 0,o=void 0;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(i=s&&s.index===e.nextMatch){var u=s[2]?"ol":"ul",l=s[0].length;if(e.nextMatch+=s[0].length,l>a)for(o=a;o<l;++o)t.push(jQuery(document.createElement(u)).appendTo(t[t.length-1]).get(0));else if(l<a)for(o=a;o>l;--o)t.pop();else l===a&&u!==n&&(t.pop(),t.push(jQuery(document.createElement(u)).appendTo(t[t.length-1]).get(0)));a=l,n=u,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(i)}},{name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){return r.helpers.hasBlockContext(e.output.childNodes)?void e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator):void jQuery(e.output).append(document.createTextNode(e.matchText))}},{name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],n=0,a=e.matchLength,i=void 0,o=void 0;do{if(a>n)for(o=n;o<a;++o)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(a<n)for(o=n;o>a;--o)t.pop();n=a,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);i=s&&s.index===e.nextMatch,i&&(a=s[0].length,e.nextMatch+=s[0].length)}while(i)}},{name:"html",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}},{name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:<!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}},{name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.space+"*?(?:\\n|$)|(?:^|\\n)"+Patterns.space+"*?\\\\",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}},{name:"lineBreak",profiles:["core"],match:"\\n|<br\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}},{name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}},{name:"htmlTag",profiles:["core"],match:"<\\w+(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagPattern:"<(\\w+)",voidElements:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],nobrElements:["colgroup","datalist","dl","figure","ol","optgroup","select","table","tbody","tfoot","thead","tr","ul"],handler:function(e){var t=new RegExp(this.tagPattern).exec(e.matchText),r=t&&t[1],n=r&&r.toLowerCase();if(n){var a=this.voidElements.includes(n),i=this.nobrElements.includes(n),o=void 0,s=void 0;if(!a){o="<\\/"+n+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(a||s){var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;c.hasAttribute("data-passage")&&(this.processDataAttributes(c),Config.debug&&(d=new DebugView(e.output,"html-"+n,n,e.matchText),d.modes({block:"img"===n,nonvoid:s}),l=d.output)),s&&(e.subWikify(c,o,{ignoreTerminatorCase:!0,nobr:i}),d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})),l.appendChild(c)}else throwError(e.output,'HTML tag "'+r+'" is not closed',e.matchText+"…")}},processDataAttributes:function(e){var t=e.getAttribute("data-passage");if(null!=t){var n=r.helpers.evalPassageId(t);n!==t&&(t=n,e.setAttribute("data-passage",n)),""!==t&&("IMG"===e.tagName.toUpperCase()?"data:"!==t.slice(0,5)&&Story.has(t)&&(t=Story.get(t),t.tags.includes("Twine.image")&&(e.src=t.text.trim())):!function(){var r=e.getAttribute("data-setter"),n=void 0;null!=r&&(r=String(r).trim(),""!==r&&(n=function(e){return function(){return Scripting.evalJavaScript(e)}}(Scripting.parse(r)))),Story.has(t)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof n&&n.call(this),Engine.play(t)})}())}}}]}),r}(),Macro=function(){function e(t,r,a){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r,a)});if(!p.test(t))throw new Error('invalid macro name "'+t+'"');if(n(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===("undefined"==typeof r?"undefined":_typeof(r)))c[t]=a?clone(r):r;else{if(!n(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=a?clone(c[r]):c[r]}Object.defineProperty(c,t,{writable:!1}),c[t]._MACRO_API=!0}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(c[t].hasOwnProperty("tags"))if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(n(e)){c[e].hasOwnProperty("tags")&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function n(e){return c.hasOwnProperty(e)}function a(e){var t=null;return n(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&&macros[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],a=[].concat(r,Array.isArray(t)?t:[]),i=0;i<a.length;++i){var o=a[i];if(n(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);r!==-1&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},p=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:n},get:{value:a},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),MacroContext=function(){var e=function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{parent:{value:r.parent},self:{value:r.macro},name:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parser:{
-value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,n=Array(r),a=0;a<r;a++)n[a]=arguments[a];n.flatten().forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+("undefined"==typeof r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var n=void 0;return"function"==typeof e&&(n={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t]})),function(){for(var a=this,i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];"function"==typeof r&&r.apply(this,o),"function"==typeof e&&!function(){var t=Object.keys(n),r=t.length>0?{}:null;try{t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;a.hasOwnProperty(t)&&(r[t]=a[t]),a[t]=n[e]}),e.apply(a,o)}finally{t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;n[e]=a[t],r.hasOwnProperty(t)?a[t]=r[t]:delete a[t]})}}(),"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e?e:this.name,t?t:this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.name+">>: "+e,t?t:this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}();return e}();!function(){Macro.add("capture",{skipArgs:!0,tags:null,handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=new RegExp("("+Patterns.variable+")","g"),r=void 0;null!==(r=t.exec(this.args.raw));){var n=r[1],a=n.slice(1),i="$"===n[0]?State.variables:State.temporary;i.hasOwnProperty(a)&&(e[a]=i[a]),this.addShadow(n)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),n="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?n[r]=e[r]:delete n[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],n=t[2];r.hasOwnProperty(n)&&delete r[n]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0;null!==(r=t.exec(this.args.full));){var n=r[1];e[n]=State.variables[n]}return storage.set("remember",e)?void(Config.debug&&this.debugView.modes({hidden:!0})):this.error("unknown error, cannot remember: "+this.args.raw)},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0,n=!1;null!==(r=t.exec(this.args.full));){var a=r[1];State.variables.hasOwnProperty(a)&&delete State.variables[a],e&&e.hasOwnProperty(a)&&(n=!0,delete e[a])}return n&&!storage.set("remember",e)?this.error("unknown error, cannot update remember store"):void(Config.debug&&this.debugView.modes({hidden:!0}))}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e),this.source+this.payload[0].contents+"<</"+this.name+">>")}e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("display",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=toStringOrDefault(Scripting.evalJavaScript(this.args.full),null);null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")",this.source+this.payload[0].contents+"<</"+this.name+">>")}}}),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],handler:function(){var e=0;try{for(var t=Scripting.evalJavaScript,r=this.payload.length,n=!1;e<r;++e){switch(this.payload[e].name){case"else":if(e+1!==r)return this.error("<<else>> must be the final clause");if(this.payload[e].args.raw.length>0)return/^\s*if\b/i.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&/[^!=&^|<>*\/%+-]=[^=]/.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||t(this.payload[e].args.full)){n=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<r;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!n,invalid:!n})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===("undefined"==typeof t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArg0:!0,tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length,t=void 0;if(1===e)return this.error("no cases specified");try{t=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}var r=this.debugView,n=1,a=!1;for(Config.debug&&r.modes({nonvoid:!1,hidden:!0});n<e;++n){switch(this.payload[n].name){case"default":if(n+1!==e)return this.error("<<default>> must be the final case");if(this.payload[n].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[n].args.raw);break;default:if(0===this.payload[n].args.length)return this.error("no value(s) specified for <<"+this.payload[n].name+">> (#"+n+")")}if(Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1}),"default"===this.payload[n].name||this.payload[n].args.some(function(e){return e===t})){a=!0,new Wikifier(this.output,this.payload[n].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++n;n<e;++n)this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0,invalid:!0});r.modes({nonvoid:!1,hidden:!0,invalid:!a}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!a})}}}),Macro.add("for",{skipArgs:!0,tags:null,handler:function(){var e=Scripting.evalJavaScript,t=this.payload[0].contents.replace(/\n$/,""),r=void 0,n=this.args.full.trim(),a=void 0,i=!0,o=Config.macros.maxLoopIterations;if(0===n.length)n=!0;else if(n.indexOf(";")!==-1){var s=n.match(/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/);if(null===s)return this.error("invalid 3-part syntax, format: init ; condition ; post");r=s[1],n=s[2],a=s[3]}if("string"==typeof n){if(/^\S+\s+in\s+\S+/i.test(n))return this.error("invalid syntax, for…in is not supported");if(/^\S+\s+of\s+\S+/i.test(n))return this.error("invalid syntax, for…of is not supported")}Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,r)try{e(r)}catch(e){return this.error("bad init expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}for(;e(n);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?t.replace(/^\n/,""):t),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(a)try{e(a)}catch(e){return this.error("bad post expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){return this.contextHas(function(e){return"for"===e.name})?(TempState.break="continue"===this.name?1:2,void(Config.debug&&this.debugView.modes({hidden:!0}))):this.error("must only be used in conjunction with its parent macro <<for>>")}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var n=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(r=this.args[0].link),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=this.args[2],i=document.createElement("input");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.checked?a:n)}).appendTo(this.output),this.args.length>3&&"checked"===this.args[3]?(i.checked=!0,Wikifier.setValue(t,a)):Wikifier.setValue(t,n)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),n=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var a=document.createDocumentFragment();new Wikifier(a,e.payload[0].contents),r.append(a)}n&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),n&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add("radiobutton",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=document.createElement("input");TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(a).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change",function(){this.checked&&Wikifier.setValue(t,n)}).appendTo(this.output),this.args.length>2&&"checked"===this.args[2]&&(a.checked=!0,Wikifier.setValue(t,n))}}),Macro.add("textarea",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),n=this.args[1],a="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.value)}).appendTo(this.output),Wikifier.setValue(t,n),i.textContent=n,a&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){setTimeout(function(){return i.focus()},Engine.minDomActionDelay),delete postdisplay[e]})}}),Macro.add("textbox",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),n=this.args[1],a=document.createElement("input"),i=!1,o=void 0;this.args.length>3?(o=this.args[2],i="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?i=!0:o=this.args[2]),jQuery(a).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"text",tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.value)}).on("keypress",function(e){13===e.which&&(e.preventDefault(),Wikifier.setValue(t,this.value),null!=o&&Engine.play(o))}).appendTo(this.output),Wikifier.setValue(t,n),a.value=n,i&&(a.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+a.id]=function(e){delete postdisplay[e],setTimeout(function(){return a.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output);State.variables["#actions"]||(State.variables["#actions"]={});for(var t=0;t<this.args.length;++t){var r=void 0,n=void 0,a=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&a.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&a.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&a.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(n=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):n=r=this.args[t],State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(a||document.createTextNode(n))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,n=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var a=State.length-2;a>=0;--a)if(State.history[a].title!==State.passage){e=a,t=State.history[a].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(e===-1)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||e!==-1?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(n||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,n=void 0,a=void 0;if(1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),t=this.args[0].link,a=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,a=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")){if(State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e])return void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(n||document.createTextNode(r)).appendTo(this.output)}else State.variables["#choice"]={};jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables["#choice"][e]=!0,"function"==typeof a&&a()})).addClass("macro-"+this.name).append(n||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void(this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass())}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void jQuery(this.output).append(e.html())}}),Macro.add(["append","prepend","replace"],{tags:null,handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var t=document.createDocumentFragment();switch(new Wikifier(t,this.payload[0].contents),this.name){case"replace":e.empty();case"append":e.append(t);break;case"prepend":e.prepend(t)}}else"replace"===this.name&&e.empty()}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void e.remove()}}),Has.audio?(Macro.add("audio",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("actions"),this.error("no "+e.join(" or ")+" specified")}var t=Macro.get("cacheaudio").tracks,r=[":all",":looped",":muted",":paused",":playing"],n=String(this.args[0]).trim();if(!r.includes(n)&&!t.hasOwnProperty(n))return this.error('track "'+n+'" does not exist');for(var a=this.args.slice(1),i=void 0,o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=5,p=void 0,f=void 0;a.length>0;){var h=a.shift();switch(h){case"play":case"pause":case"stop":i=h;break;case"fadein":i="fade",c=1;break;case"fadeout":i="fade",c=0;break;case"fadeto":if(0===a.length)return this.error("fadeto missing required level value");if(i="fade",f=a.shift(),c=Number.parseFloat(f),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(a.length<2){var g=[];return a.length<1&&g.push("seconds"),a.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(i="fade",f=a.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);if(f=a.shift(),c=Number.parseFloat(f),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===a.length)return this.error("volume missing required level value");if(f=a.shift(),o=Number.parseFloat(f),Number.isNaN(o)||!Number.isFinite(o))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":s="mute"===h;break;case"time":if(0===a.length)return this.error("time missing required seconds value");if(f=a.shift(),u=Number.parseFloat(f),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse time: "+f);break;case"loop":case"unloop":l="loop"===h;break;case"goto":if(0===a.length)return this.error("goto missing required passage title");if(f=a.shift(),p="object"===("undefined"==typeof f?"undefined":_typeof(f))?f.link:f,!Story.has(p))return this.error('passage "'+p+'" does not exist');break;default:return this.error("unknown action: "+h)}}var m=void 0;switch(n){case":all":m=Object.keys(t);break;case":looped":m=Object.keys(t).filter(function(e){return t[e].isLooped()});break;case":muted":m=Object.keys(t).filter(function(e){return t[e].isMuted()});break;case":paused":m=Object.keys(t).filter(function(e){return t[e].isPaused()});break;case":playing":m=Object.keys(t).filter(function(e){return t[e].isPlaying()});break;default:m=[n]}try{m.forEach(function(e){var r=t[e];switch(null!=o&&(r.volume=o),null!=u&&(r.time=u),null!=s&&(r.mute=s),null!=l&&(r.loop=l),null!=p&&r.one("end",function(){return Engine.play(p)}),i){case"play":r.play();break;case"pause":r.pause();break;case"stop":r.stop();break;case"fade":r.fadeWithDuration(d,c)}}),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing audio action: "+e.message)}}}),Macro.add("cacheaudio",{tracks:{},handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("sources"),this.error("no "+e.join(" or ")+" specified")}var t=String(this.args[0]).trim(),r=/^:|\s/;if(r.test(t))return this.error('invalid track ID "'+t+'": track IDs may not start with a colon or contain whitespace');var n=/^format:\s*([\w-]+)\s*;\s*(\S.*)$/i,a=void 0;try{a=SimpleAudio.create(this.args.slice(1).map(function(e){var t=n.exec(e);return null===t?e:{format:t[1],src:t[2]}}))}catch(e){return this.error('error during track initialization for "'+t+'": '+e.message)}if(Config.debug&&!a.hasSource())return this.error('no supported audio sources found for "'+t+'"');var i=this.self.tracks;i.hasOwnProperty(t)&&i[t].destroy(),i[t]=a,Config.debug&&this.createDebugView()}}),Macro.add("createplaylist",{tags:["track"],lists:{},handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");var t=Macro.get("cacheaudio").tracks,r=String(this.args[0]).trim(),n=/^:|\s/;if(n.test(r))return this.error('invalid list ID "'+r+'": list IDs may not start with a colon or contain whitespace');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var a=SimpleAudio.createList(),i=1,o=this.payload.length;i<o;++i){if(this.payload[i].args.length<2){var s=[];return this.payload[i].args.length<1&&s.push("track ID"),this.payload[i].args.length<2&&s.push("actions"),this.error("no "+s.join(" or ")+" specified")}var u=String(this.payload[i].args[0]).trim();if(!t.hasOwnProperty(u))return this.error('track "'+u+'" does not exist');for(var l=this.payload[i].args.slice(1),c=!1,d=void 0;l.length>0;){var p=l.shift(),f=void 0;switch(p){case"copy":c=!0;break;case"rate":l.length>0&&l.shift();break;case"volume":if(0===l.length)return this.error("volume missing required level value");if(f=l.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse volume: "+f);break;default:return this.error("unknown action: "+p)}}var h=t[u];a.add({copy:c,track:h,volume:null!=d?d:h.volume}),Config.debug&&this.createDebugView(this.payload[i].name,this.payload[i].source).modes({nonvoid:!1,hidden:!0})}var g=this.self.lists;g.hasOwnProperty(r)&&g[r].destroy(),g[r]=a,null===e.from&&(e.from="createplaylist"),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var e=this.args.slice(0),t=!1,r=void 0,n=void 0;e.length>0;){var a=e.shift(),i=void 0;switch(a){case"stop":t=!0;break;case"mute":case"unmute":r="mute"===a;break;case"volume":if(0===e.length)return this.error("volume missing required level value");if(i=e.shift(),n=Number.parseFloat(i),Number.isNaN(n)||!Number.isFinite(n))return this.error("cannot parse volume: "+i);break;default:return this.error("unknown action: "+a)}}try{null!=r&&(SimpleAudio.mute=r),null!=n&&(SimpleAudio.volume=n),t&&SimpleAudio.stop(),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing master audio action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var e=this.self.from;if(null===e)return this.error("no playlists have been created");var t=void 0,r=void 0;if("createplaylist"===e){if(this.args.length<2){var n=[];return this.args.length<1&&n.push("list ID"),this.args.length<2&&n.push("actions"),this.error("no "+n.join(" or ")+" specified")}var a=Macro.get("createplaylist").lists,i=String(this.args[0]).trim();if(!a.hasOwnProperty(i))return this.error('playlist "'+i+'" does not exist');t=a[i],r=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");t=Macro.get("setplaylist").list,r=this.args.slice(0)}for(var o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,p=5,f=void 0;r.length>0;){
-var h=r.shift();switch(h){case"play":case"pause":case"stop":case"skip":o=h;break;case"fadein":o="fade",d=1;break;case"fadeout":o="fade",d=0;break;case"fadeto":if(0===r.length)return this.error("fadeto missing required level value");if(o="fade",f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(r.length<2){var g=[];return r.length<1&&g.push("seconds"),r.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",f=r.shift(),p=Number.parseFloat(f),Number.isNaN(p)||!Number.isFinite(p))return this.error("cannot parse fadeoverto: "+f);if(f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===r.length)return this.error("volume missing required level value");if(f=r.shift(),s=Number.parseFloat(f),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":u="mute"===h;break;case"loop":case"unloop":l="loop"===h;break;case"shuffle":case"unshuffle":c="shuffle"===h;break;default:return this.error("unknown action: "+h)}}try{switch(null!=s&&(t.volume=s),null!=u&&(t.mute=u),null!=l&&(t.loop=l),null!=c&&(t.shuffle=c),o){case"play":t.play();break;case"pause":t.pause();break;case"stop":t.stop();break;case"skip":t.skip();break;case"fade":t.fadeWithDuration(p,d)}Config.debug&&this.createDebugView()}catch(e){return this.error("error playing audio: "+e.message)}}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("createplaylist").lists,t=String(this.args[0]).trim();return e.hasOwnProperty(t)?(e[t].destroy(),delete e[t],void(Config.debug&&this.createDebugView())):this.error('playlist "'+t+'" does not exist')}}),Macro.add("waitforaudio",{skipArgs:!0,queue:[],handler:function(){function e(){if(0===t.length)return LoadScreen.unlock();var r=t.shift();return r.hasData()?e():void r.one("canplay.waitforaudio error.waitforaudio",function(){jQuery(this).off(".waitforaudio"),e()}).load()}var t=this.self.queue;t.length>0||(this.self.fillQueue(t),t.length>0&&(LoadScreen.lock(),e()))},fillQueue:function(e){var t=Macro.get("cacheaudio").tracks;Object.keys(t).forEach(function(r){return e.push(t[r])});var r=Macro.get("createplaylist").lists;if(Object.keys(r).map(function(e){return r[e].tracks}).flatten().filter(function(e){return e.copy}).forEach(function(t){return e.push(t.track)}),Macro.has("setplaylist")){var n=Macro.get("setplaylist").list;null!==n&&n.tracks.forEach(function(t){return e.push(t.track)})}}}),Macro.add("setplaylist",{list:null,handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");var t=this.self,r=Macro.get("cacheaudio").tracks;null!==t.list&&t.list.destroy(),t.list=SimpleAudio.createList();for(var n=0;n<this.args.length;++n){var a=this.args[n];if(!r.hasOwnProperty(a))return this.error('track "'+a+'" does not exist');t.list.add(r[a])}null===e.from&&(e.from="setplaylist"),Config.debug&&this.createDebugView()}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){var e=Macro.get("cacheaudio").tracks;Object.keys(e).forEach(function(t){return e[t].stop()}),Config.debug&&this.createDebugView()}})):Macro.add(["audio","cacheaudio","createplaylist","masteraudio","playlist","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){}}),Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;return e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],Story.has(e)?void setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay):this.error('passage "'+e+'" does not exist')}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>");var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var n=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=a;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),n&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),n&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.turns,n=this.timers,a=null,i=t.shift(),o=function o(){if(n.delete(a),r===State.turns){var s=i;null!=(i=t.shift())&&(a=setTimeout(o,i.delay),n.add(a)),e.call(this,s)}};a=setTimeout(o,i.delay),n.add(a),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],n.forEach(function(e){return clearTimeout(e)}),n.clear()})}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var a=n;r&&(a=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(a)),a.append(t),r&&setTimeout(function(){return a.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var n=State.turns,a=this.timers,i=null;i=setInterval(function(){if(n!==State.turns)return clearInterval(i),void a.delete(i);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=i,e.call(r)}finally{"undefined"!=typeof t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),a.add(i),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearInterval(e)}),a.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){var t=this,r=void 0;try{var n=function(){State.variables.hasOwnProperty("args")&&(r=State.variables.args),State.variables.args=[].concat(_toConsumableArray(t.args)),State.variables.args.raw=t.args.raw,State.variables.args.full=t.args.full,t.addShadow("$args");var n=document.createDocumentFragment(),a=[];return new Wikifier(n,e),Array.from(n.querySelectorAll(".error")).forEach(function(e){a.push(e.textContent)}),0!==a.length?{v:t.error("error"+(a.length>1?"s":"")+" within widget contents ("+a.join("; ")+")")}:void t.output.appendChild(n)}();if("object"===("undefined"==typeof n?"undefined":_typeof(n)))return n.v}catch(e){return this.error("cannot execute widget: "+e.message)}finally{"undefined"!=typeof r?State.variables.args=r:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(){m=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var n=t.offsetWidth;r.style.overflow="auto";var a=t.offsetWidth;n===a&&(a=r.clientWidth),document.body.removeChild(r),e=n-a}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1>'+('<button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button>')+'</div><div id="ui-dialog-body"></div></div>');d=jQuery(e.find("#ui-overlay").get(0)),p=jQuery(e.find("#ui-dialog").get(0)),f=jQuery(e.find("#ui-dialog-title").get(0)),h=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("#store-area")}function t(e){return p.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return h.hasClass(e)}))}function r(e,t){return h.empty().removeClass(),null!=t&&h.addClass(t),f.empty().append((null!=e?String(e):"")||" "),h.get(0)}function n(){return h.get(0)}function a(){var e;return(e=h).append.apply(e,arguments),Dialog}function i(){var e;return(e=h).wiki.apply(e,arguments),Dialog}function o(e,t,r,n,a){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),s(t,a),"function"==typeof n&&n(e)})}function s(e,r){var n=jQuery.extend({top:50},e),a=n.top;t()||(g=safeActiveElement()),jQuery(document.documentElement).addClass("ui-dialog-open"),d.addClass("open"),null!==h[0].querySelector("img")&&h.imagesLoaded().always(function(){return l({data:{top:a}})}),jQuery("body>:not(script,#store-area,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0);var i=c(a);return p.css(i).addClass("open").focus(),jQuery(window).on("resize.ui-resize",null,{top:a},jQuery.throttle(40,l)),jQuery(document).on("click.ui-close",".ui-close",{closeFn:r},u).on("keypress.ui-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),setTimeout(function(){return jQuery.event.trigger("tw:dialogopened")},Engine.minDomActionDelay),Dialog}function u(e){return jQuery(document).off(".ui-close"),jQuery(window).off("resize.ui-resize"),p.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.empty(),h.empty().removeClass(),d.removeClass("open"),jQuery(document.documentElement).removeClass("ui-dialog-open"),null!==g&&(jQuery(g).focus(),g=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),setTimeout(function(){return jQuery.event.trigger("tw:dialogclosed")},Engine.minDomActionDelay),Dialog}function l(e){var t=e&&e.data&&"undefined"!=typeof e.data.top?e.data.top:50;"block"===p.css("display")&&(p.css({display:"none"}),p.css(jQuery.extend({display:""},c(t))))}function c(e){var t=null!=e?e:50,r=jQuery(window),n={left:"",right:"",top:"",bottom:""};p.css(n);var a=r.width()-p.outerWidth(!0)-1,i=r.height()-p.outerHeight(!0)-1;return a<=32+m&&(i-=m),i<=32+m&&(a-=m),a<=32?n.left=n.right=16:n.left=n.right=~~(a/2),i<=32?n.top=n.bottom=16:i/2>t?n.top=t:n.top=n.bottom=~~(i/2),Object.keys(n).forEach(function(e){""!==n[e]&&(n[e]+="px")}),n}var d=null,p=null,f=null,h=null,g=null,m=0;return Object.freeze(Object.defineProperties({},{init:{value:e},isOpen:{value:t},setup:{value:r},body:{value:n},append:{value:a},wiki:{value:i},addClickHandler:{value:o},open:{value:s},close:{value:u},resize:{value:function(){return l()}}}))}(),Engine=function(){function e(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),h=t.output}}catch(e){Alert.error("StoryInit",e.message)}if(Config.history.maxStates=Math.max(0,Config.history.maxStates),Number.isSafeInteger(Config.history.maxStates)||(Config.history.maxStates=100),1===Config.history.maxStates&&(Config.history.controls=!1),Config.debug&&DebugView.init(),null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(State.restore())u();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildDialogAutoload(),UI.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&l(Config.passages.start)}}function t(){LoadScreen.show(),window.scroll(0,0),State.reset(),window.location.reload()}function r(){return p}function n(){return f}function a(e){var t=State.goTo(e);return t&&u(),t}function i(e){var t=State.go(e);return t&&u(),t}function o(){return i(-1)}function s(){return i(1)}function u(){return l(State.passage,!0)}function l(e,t){var r=e;p="playing",TempState={},State.clearTemporary();var n=void 0,a=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(this,e)},o),t||State.create(o.title),document.body.className&&(document.body.className=""),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(this,e)},o),Story.has("PassageReady"))try{n=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){Alert.error("PassageReady",e.message)}p="rendering";var s=jQuery(o.render()),u=document.getElementById("passages");if(u.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&""!==Config.transitionEndEventName?[].concat(_toConsumableArray(u.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Config.transitionEndEventName,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(d,Config.passages.transitionOut))}else t.remove()}):jQuery(u).empty()),s.addClass("passage-in").appendTo(u),setTimeout(function(){return s.removeClass("passage-in")},d),document.title=Config.passages.displayTitles&&o.title!==Config.passages.start?o.title+" | "+Story.title:Story.title,window.scroll(0,0),p="playing",Story.has("PassageDone"))try{a=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){Alert.error("PassageDone",e.message)}if(Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(this,e)},o),Config.ui.updateStoryElements&&UI.setStoryElements(),Config.debug){var l=void 0;null!=n&&(l=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),l.modes({hidden:!0}),l.append(n),s.prepend(l.output)),null!=a&&(l=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),l.modes({hidden:!0}),l.append(a),s.append(l.output)),1===State.turns&&null!=h&&s.prepend(h)}switch(f=Date.now(),UI.hideOutlines(),jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"string":o.tags.includes(Config.saves.autosave)&&Save.autosave.save();break;case"object":Array.isArray(Config.saves.autosave)&&o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save()}return p="idle",s[0]}function c(e,t,r){var n=!1;switch(r){case undefined:break;case"replace":case"back":n=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}l(e,n)}var d=40,p="idle",f=null,h=null;return Object.freeze(Object.defineProperties({},{minDomActionDelay:{value:d},start:{value:e},restart:{value:t},state:{get:r},lastPlay:{get:n},goTo:{value:a},go:{value:i},backward:{value:o},forward:{value:s},show:{value:u},play:{value:l},display:{value:c}}))}(),Passage=function(){var e=void 0,t=void 0;e=/^(?:debug|nobr|passage|script|stylesheet|widget|twine\..*)$/i,!function(){var e=/(?:\\n|\\t|\\s|\\|\r)/g,r=new RegExp(e.source),n=Object.freeze({"\\n":"\n","\\t":"\t","\\s":"\\","\\":"\\","\r":""});t=function(t){if(null==t)return"";var a=String(t);return a&&r.test(a)?a.replace(e,function(e){return n[e]}):a}}();var r=function(){function r(t,n){var a=this;_classCallCheck(this,r),Object.defineProperties(this,{title:{value:Util.unescape(t)},element:{value:n||null},tags:{value:Object.freeze(n&&n.hasAttribute("tags")?n.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return a.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(r,[{key:"description",value:function(){var e=Config.passages.descriptions;if(null!=e)switch("undefined"==typeof e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e instanceof Map&&e.has(this.title))return e.get(this.title);if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var t=e.call(this);if(t)return t;break;default:throw new TypeError("Config.passages.descriptions must be a boolean, object, or function")}return null===this._excerpt&&(this._excerpt=r.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){var e=this.text;return this.tags.includes("nobr")&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),this.tags.includes("Twine.image")&&(e="[img["+e+"]]"),e}},{key:"render",value:function(){var e=this,t=document.createElement("div");return jQuery(t).attr({id:this.domId,"data-passage":this.title,"data-tags":this.tags.join(" ")}).addClass("passage "+this.className),jQuery(document.body).addClass(this.className),Object.keys(prerender).forEach(function(r){"function"==typeof prerender[r]&&prerender[r].call(e,t,r)}),Story.has("PassageHeader")&&new Wikifier(t,Story.get("PassageHeader").processText()),new Wikifier(t,this.processText()),Story.has("PassageFooter")&&new Wikifier(t,Story.get("PassageFooter").processText()),Object.keys(postrender).forEach(function(r){"function"==typeof postrender[r]&&postrender[r].call(e,t,r)}),this._excerpt=r.getExcerptFromNode(t),t}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escape(this.title);return'<span class="error" title="'+e+'">'+L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e})+"</span>"}return t(this.element.textContent)}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var n=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(n)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),n=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*)(?:|[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return n?n[1]+"…":"…"}}]),r}();return r}(),Save=function(){function e(){if("cookie"===storage.name)return n(),Config.saves.autosave=undefined,Config.saves.slots=0,!1;Config.saves.slots=Math.max(0,Config.saves.slots),Number.isSafeInteger(Config.saves.slots)||(Config.saves.slots=8);var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&S(e.slots,Config.saves.slots-e.slots.length),t=!0),j(e.autosave)&&(t=!0);for(var a=0;a<e.slots.length;++a)j(e.slots[a])&&(t=!0);return E(e)&&(storage.delete("saves"),t=!1),t&&x(e),T=e.slots.length-1,!0}function t(){return{autosave:null,slots:S([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function n(){return storage.delete("saves"),!0}function a(){return i()||d()}function i(){return"cookie"!==storage.name&&"undefined"!=typeof Config.saves.autosave}function o(){var e=r();return null!==e.autosave}function s(){var e=r();return e.autosave}function u(){var e=r();return null!==e.autosave&&O(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var n=r(),a={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(a.metadata=t),n.autosave=C(a),x(n)}function c(){var e=r();return e.autosave=null,x(e)}function d(){return"cookie"!==storage.name&&T!==-1}function p(){return T+1}function f(){if(!d())return 0;for(var e=r(),t=0,n=0,a=e.slots.length;n<a;++n)null!==e.slots[n]&&++t;return t}function h(){return 0===f()}function g(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>T)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&O(t.slots[e])}function y(e,t,n){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>T)return!1;var a=r();if(e>=a.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=n&&(i.metadata=n),a.slots[e]=C(i),x(a)}function b(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,x(t))}function w(e,t){function r(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),n=e.getHours(),a=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),n<10&&(n="0"+n),a<10&&(a="0"+a),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+n+a+i}if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void UI.alert(L10n.get("savesDisallowed"));var n=null==e?Story.domId:Util.slugify(e),a=n+"-"+r()+".save",i=null==t?{}:{metadata:t},o=LZString.compressToBase64(JSON.stringify(C(i)));saveAs(new Blob([o],{type:"text/plain;charset=UTF-8"}),a)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var n=void 0;try{n=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}O(n)}}),r.readAsText(t)}function S(e,t){for(var r=0;r<t;++r)e.push(null);return e}function E(e){for(var t=e.slots,r=!0,n=0,a=t.length;n<a;++n)if(null!==t[n]){r=!1;break}return null===e.autosave&&r}function x(e){return E(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function j(e){if(null===e)return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function C(e){if(null!=e&&"object"!==("undefined"==typeof e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var t=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(t.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(t),t.state.delta=State.deltaEncode(t.state.history),delete t.state.history,t}function O(e){try{if(j(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var T=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:n},ok:{value:a},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:p},isEmpty:{value:h},count:{value:f},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}n(),g.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&g.filter(function(e){return e.type!==m.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function n(){var e=t(),r=storage.get("settings")||t();g.filter(function(e){return e.type!==m.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function a(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)a(),n();else{if(null==e||!p(e))throw new Error('nonexistent setting "'+e+'"');var t=f(e);t.type!==m.Header&&(settings[e]=t.default)}return r()}function o(e,t){g.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var n=[];throw arguments.length<1&&n.push("type"),arguments.length<2&&n.push("name"),arguments.length<3&&n.push("definition"),new Error("missing parameters, no "+n.join(" or ")+" specified")}if("object"!==("undefined"==typeof r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(p(t))throw new Error('cannot clobber existing setting "'+t+'"');var a={type:e,name:t,label:null==r.label?"":String(r.label).trim()};switch(e){case m.Header:break;case m.Toggle:a.default=!!r.default;break;case m.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(a.list=Object.freeze(r.list),null==r.default)a.default=r.list[0];else{var i=r.list.indexOf(r.default);if(i===-1)throw new Error("list does not contain default");a.default=r.list[i]}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(a.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(a.onChange=Object.freeze(r.onChange)),g.push(Object.freeze(a))}function u(e,t){s(m.Header,e,{label:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.List].concat(t))}function d(){return 0===g.length}function p(e){return g.some(function(t){return t.name===e})}function f(e){return g.find(function(t){return t.name===e})}function h(e){p(e)&&delete settings[e];for(var t=0;t<g.length;++t)if(g[t].name===e){g.splice(t,1),h(e);break}}var g=[],m=Object.freeze({Header:0,Toggle:1,List:2});return Object.freeze(Object.defineProperties({},{Types:{value:m},init:{value:e},create:{value:t},save:{value:r},load:{value:n},clear:{value:a},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},isEmpty:{value:d},has:{value:p},get:{value:f},delete:{value:h}}))}(),State=function(){function e(){session.delete("state"),L=[],Q=c(),I=-1,R=[],F=null===F?null:new PRNGWrapper(F.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(n(e),!0)}return!1}function r(e){var t={index:I};return e?t.history=clone(L):t.delta=A(L),R.length>0&&(t.expired=[].concat(_toConsumableArray(R))),null!==F&&(t.seed=F.seed),t}function n(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==F&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===F&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");L=t?clone(e.history):_(e.delta),I=e.index,R=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(F.seed=e.seed),g(I)}function a(){return r(!0)}function i(e){return n(e,!0)}function o(){return R}function s(){
-return R.length+v()}function u(){return R.concat(L.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!R.includes(e)||!!L.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return Q}function p(){return I}function f(){return Q.title}function h(){return Q.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch("undefined"==typeof e?"undefined":_typeof(e)){case"object":Q=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);Q=clone(L[e]);break;default:throw new TypeError('moment activation attempted with a "'+("undefined"==typeof e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==F&&(F=PRNGWrapper.unmarshal({seed:F.seed,pull:Q.pull})),session.set("state",r()),jQuery.event.trigger("tw:historyupdate"),Q}function m(){return L}function v(){return I+1}function y(){return L.length}function b(){return 0===L.length}function w(){return L.length>0?L[I]:null}function k(){return L.length>0?L[L.length-1]:null}function S(){return L.length>0?L[0]:null}function E(e){return b()||e<0||e>I?null:L[e]}function x(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:L[v()-t]}function j(e){if(b()||null==e||""===e)return!1;for(var t=I;t>=0;--t)if(L[t].title===e)return!0;return!1}function C(e){if(v()<y()&&L.splice(v(),y()-v()),L.push(c(e,Q.variables)),F&&(k().pull=F.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)R.push(L.shift().title);return I=y()-1,g(I),v()}function O(e){return!(null==e||e<0||e>=y()||e===I)&&(I=e,g(I),!0)}function T(e){return null!=e&&0!==e&&O(I+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,n=e.length;r<n;++r)t.push(Util.diff(e[r-1],e[r]));return t}function _(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,n=e.length;r<n;++r)t.push(Util.patch(t[r-1],e[r]));return t}function P(e,t){if(!b()){var r=void 0;throw r="a script-tagged passage",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}F=new PRNGWrapper(e,t),Q.pull=F.pull}function D(){return F?F.random():Math.random()}function M(){V={},TempVariables=V}function N(){return V}var L=[],Q=c(),I=-1,R=[],F=null,V={};return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:a},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:p},passage:{get:f},variables:{get:h},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:x},has:{value:j},create:{value:C},goTo:{value:O},go:{value:T},deltaEncode:{value:A},deltaDecode:{value:_},initPRNG:{value:P},random:{value:D},clearTemporary:{value:M},temporary:{get:N},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Story=function(){function e(){if(Config.passages.start=function(){var e="START_AT";return""!==e?(Config.debug=!0,e):"Start"}(),jQuery("#store-area").children(':not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var e=jQuery(this),t=new Passage(e.attr("tiddler"),this);t.tags.includes("stylesheet")?d.push(t):t.tags.includes("script")?p.push(t):t.tags.includes("widget")?f.push(t):c[t.title]=t}),!c.hasOwnProperty("StoryTitle"))throw new Error('cannot find the "StoryTitle" special passage');var e=document.createDocumentFragment();new Wikifier(e,c.StoryTitle.processText().trim()),r(e.textContent.trim()),Config.saves.id=Story.domId}function t(){for(var e=0;e<d.length;++e)addStyle(d[e].text);for(var t=0;t<p.length;++t)try{Scripting.evalJavaScript(p[t].text)}catch(e){Alert.error(p[t].title,"object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e)}for(var r=0;r<f.length;++r)try{Wikifier.wikifyEval(f[r].processText())}catch(e){Alert.error(f[r].title,"object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e||""===e)throw new Error("story title cannot be null or empty");document.title=h=Util.unescape(e),m=Util.slugify(h)}function n(){return h}function a(){return m}function i(){return g}function o(e){var t="undefined"==typeof e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r);case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function s(e){var t="undefined"==typeof e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r)?c[r]:new Passage(r||"(unknown)");case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.get title parameter cannot be "+t)}function u(e,t){for(var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",n=Object.keys(c),a=[],i=0;i<n.length;++i){var o=c[n[i]];if(o.hasOwnProperty(e))switch(_typeof(o[e])){case"undefined":break;case"object":for(var s=0,u=o[e].length;s<u;++s)if(o[e][s]==t){a.push(o);break}break;default:o[e]==t&&a.push(o)}}return a.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),a}function l(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new Error("Story.lookupWith filter parameter must be a function");for(var r=Object.keys(c),n=[],a=0;a<r.length;++a){var i=c[r[a]];e(i)&&n.push(i)}return n.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),n}var c={},d=[],p=[],f=[],h="",g="",m="";return Object.freeze(Object.defineProperties({},{passages:{value:c},styles:{value:d},scripts:{value:p},widgets:{value:f},load:{value:e},init:{value:t},title:{get:n},domId:{get:a},ifId:{get:i},has:{value:o},get:{value:s},lookup:{value:u},lookupWith:{value:l}}))}(),UI=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),w=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-outline-patch",type:"text/css"}).appendTo(document.head).get(0)}()),function(){var e=jQuery(document.createDocumentFragment()),t=L10n.get("uiBarToggle"),r=L10n.get("uiBarBackward"),n=L10n.get("uiBarJumpto"),a=L10n.get("uiBarForward");e.append('<div id="ui-bar"><div id="ui-bar-tray">'+('<button id="ui-bar-toggle" tabindex="0" title="'+t+'" aria-label="'+t+'"></button>')+'<div id="ui-bar-history">'+('<button id="history-backward" tabindex="0" title="'+r+'" aria-label="'+r+'">î ¡</button>')+('<button id="history-jumpto" tabindex="0" title="'+n+'" aria-label="'+n+'">î ¹</button>')+('<button id="history-forward" tabindex="0" title="'+a+'" aria-label="'+a+'">î ¢</button>')+'</div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core">'+('<li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+"</a></li>")+('<li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+"</a></li>")+('<li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+"</a></li>")+('<li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li>")+'</ul></nav></div></div><div id="story" role="main"><div id="passages"></div></div>').insertBefore("#store-area")}(),jQuery(document).on("tw:historyupdate",function(e,t){return function(){e.prop("disabled",State.length<2),t.prop("disabled",State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward"))).on("mousedown.outline-handler keydown.outline-handler",function(e){switch(e.type){case"mousedown":i();break;case"keydown":o()}})}function t(){var e=jQuery("#ui-bar");("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&!function(){var t=jQuery(e).add("#story");t.addClass("no-transition"),e.addClass("stowed"),setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}(),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return e.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").prop("disabled",State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").prop("disabled",State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),setPageElement("story-title","StoryTitle",Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||a(),Dialog.addClickHandler("#menu-item-saves a",null,v).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():Dialog.addClickHandler("#menu-item-settings a",null,y).text(L10n.get("settingsTitle")),Dialog.addClickHandler("#menu-item-restart a",null,m).text(L10n.get("restartTitle")),Story.has("StoryShare")?Dialog.addClickHandler("#menu-item-share a",null,b).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove(),jQuery(document.documentElement).focus()}function r(){jQuery("#ui-bar").addClass("stow")}function n(){jQuery("#ui-bar").removeClass("stow")}function a(){setPageElement("story-banner","StoryBanner"),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")&&s("StoryMenu",e))}function i(){w.set("*:focus{outline:none}")}function o(){w.clear()}function s(e,t){var r=t,n=Config.debug;Config.debug=!1;try{null==r&&(r=document.createElement("ul"));var a=document.createDocumentFragment();if(new Wikifier(a,Story.get(e).processText().trim()),a.hasChildNodes())for(var i=null;a.hasChildNodes();){var o=a.firstChild;o.nodeType!==Node.ELEMENT_NODE||"A"!==o.nodeName.toUpperCase()?(a.removeChild(o),null!==i&&(i=null)):(null===i&&(i=document.createElement("li"),r.appendChild(i)),i.appendChild(o))}}finally{Config.debug=n}return r}function u(e){jQuery(Dialog.setup("Alert","alert")).append("<p>"+e+'</p><ul class="buttons">'+('<li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li>")+"</ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];Dialog.open.apply(Dialog,r)}function l(){g(),Dialog.open.apply(Dialog,arguments)}function c(){m(),Dialog.open.apply(Dialog,arguments)}function d(){v(),Dialog.open.apply(Dialog,arguments)}function p(){y(),Dialog.open.apply(Dialog,arguments)}function f(){b(),Dialog.open.apply(Dialog,arguments)}function h(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons">'+('<li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+"</button></li>")+('<li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li>")+"</ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one("tw:dialogclosed",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function g(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var n=Story.get(State.history[r].title);n&&n.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one("tw:dialogclosed",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+n.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function m(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons">'+('<li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+"</button></li>")+('<li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li>")+"</ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one("tw:dialogclosed",function(){return Engine.restart()}),Dialog.close()}),!0}function v(){function e(e,t,r,n){var a=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&a.addClass(t),n?a.ariaClick(n):a.prop("disabled",!0),jQuery(document.createElement("li")).append(a)}function t(){function e(e,t,r,n,a){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+n).addClass(e).html(r);return t&&i.addClass(t),a?"auto"===n?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return a()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(n+1)},function(){return a(n)}):i.prop("disabled",!0),i}var t=Save.get(),r=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var n=jQuery(document.createElement("td")),a=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(n),t.autosave?(a.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one("tw:dialogclosed",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(i),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?L10n.get("savesSavedOn")+" "+new Date(t.autosave.date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(i),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),v(),Dialog.resize()}))):(a.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(i),i.addClass("empty"),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(n).append(a).append(i).append(o).appendTo(r)}for(var s=0,u=t.slots.length;s<u;++s){var l=jQuery(document.createElement("td")),c=jQuery(document.createElement("td")),d=jQuery(document.createElement("td")),p=jQuery(document.createElement("td"));l.append(document.createTextNode(s+1)),t.slots[s]?(c.append(e("load","ui-close",L10n.get("savesLabelLoad"),s,function(e){jQuery(document).one("tw:dialogclosed",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[s].title).appendTo(d),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[s].date?L10n.get("savesSavedOn")+" "+new Date(t.slots[s].date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(d),p.append(e("delete",null,L10n.get("savesLabelDelete"),s,function(e){Save.slots.delete(e),v(),Dialog.resize()}))):(c.append(e("save","ui-close",L10n.get("savesLabelSave"),s,Save.slots.save)),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(d),d.addClass("empty"),p.append(e("delete",null,L10n.get("savesLabelDelete"),s))),jQuery(document.createElement("tr")).append(l).append(c).append(d).append(p).appendTo(r)}return jQuery(document.createElement("table")).attr("id","saves-list").append(r)}var r=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),n=Save.ok();if(n&&r.append(t()),n||Has.fileAPI){var a=jQuery(document.createElement("ul")).addClass("buttons").appendTo(r);return Has.fileAPI&&(a.append(e("export","ui-close",L10n.get("savesLabelExport"),function(){return Save.export()})),a.append(e("import",null,L10n.get("savesLabelImport"),function(){return r.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one("tw:dialogclosed",function(){return Save.import(e)}),Dialog.close()}).appendTo(r)),n&&a.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),v(),Dialog.resize()}:null)),!0}return u(L10n.get("savesIncapable")),!1}function y(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,n=Util.slugify(r),a=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2")),o=jQuery(document.createElement("p"));return a.attr("id","header-body-"+n).append(i).append(o).appendTo(e),i.attr("id","header-heading-"+n).wiki(r),void o.attr("id","header-label-"+n).wiki(t.label)}var s=t.name,u=Util.slugify(s),l=jQuery(document.createElement("div")),c=jQuery(document.createElement("label")),d=jQuery(document.createElement("div")),p=void 0;switch(l.attr("id","setting-body-"+u).append(c).append(d).appendTo(e),c.attr({id:"setting-label-"+u,for:"setting-control-"+u}).wiki(t.label),null==settings[s]&&(settings[s]=t.default),t.type){case Setting.Types.Toggle:p=jQuery(document.createElement("button")),settings[s]?p.addClass("enabled").text(L10n.get("settingsOn")):p.text(L10n.get("settingsOff")),p.ariaClick(function(){settings[s]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[s]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[s]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default})});break;case Setting.Types.List:p=jQuery(document.createElement("select"));for(var f=0,h=t.list.length;f<h;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(p);p.val(t.list.indexOf(settings[s])).attr("tabindex",0).on("change",function(){settings[s]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,list:t.list})})}p.attr("id","setting-control-"+u).appendTo(d)}),e.append('<ul class="buttons">'+('<li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+"</button></li>")+('<li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li>")+"</ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one("tw:dialogclosed",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function b(){return jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(s("StoryShare")),!0}var w=null;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},stow:{value:r},unstow:{value:n},setStoryElements:{value:a},hideOutlines:{value:i},showOutlines:{value:o},assembleLinkList:{value:s},alert:{value:u},jumpto:{value:l},restart:{value:c},saves:{value:d},settings:{value:p},share:{value:f},buildAutoload:{value:h},buildJumpto:{value:g},buildRestart:{value:m},buildSaves:{value:v},buildSettings:{value:y},buildShare:{value:b},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:h},buildDialogJumpto:{value:g},buildDialogRestart:{value:m},buildDialogSaves:{value:v},buildDialogSettings:{value:y},buildDialogShare:{value:b},buildLinkListFromPassage:{value:s}}))}(),LoadScreen=function(){function e(){jQuery(document.documentElement).removeClass("init-loading")}function t(){jQuery(document.documentElement).addClass("init-loading")}function r(){a=!0,t()}function n(){a=!1,jQuery(document).trigger("readystatechange")}var a=!1;return jQuery(document).on("readystatechange.SugarCube",function(){if(!a){var e=jQuery(document.documentElement);"complete"===document.readyState?e.hasClass("init-loading")&&(Config.loadDelay>0?setTimeout(function(){return e.removeClass("init-loading")},Math.max(Engine.minDomActionDelay,Config.loadDelay)):e.removeClass("init-loading")):e.addClass("init-loading")}}),Object.freeze(Object.defineProperties({},{hide:{value:e},show:{value:t},lock:{value:r},unlock:{value:n}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:14,patch:0,prerelease:null,build:7780,date:new Date("2017-02-23T19:19:51.191Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UI.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),UI.start(),window.SugarCube={Browser:Browser,Config:Config,Dialog:Dialog,DebugView:DebugView,Engine:Engine,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,Util:Util,Wikifier:Wikifier,macros:macros,session:session,settings:settings,setup:setup,storage:storage,version:version}}catch(e){return jQuery(document).off("readystatechange.SugarCube"),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
+	if(document.documentElement.classList.contains("init-loading")){!function(window,document,jQuery,undefined){"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)}var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),_slicedToArray=function(){function e(e,t){var r=[],n=!0,a=!1,i=undefined;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);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},Alert=function(){function e(e,t,r,n){var a="fatal"===e,i="Apologies! "+(a?"A fatal":"An")+" error has occurred.";i+=a?" Aborting.":" You may be able to continue, but some parts may not work properly.",null==t&&null==r||(i+="\n\nError",null!=t&&(i+=" ["+t+"]"),i+=null!=r?": "+r.replace(/^(?:(?:uncaught\s+(?:exception:\s+)?)?error:\s+)+/i,"")+".":": unknown error."),n&&n.stack&&(i+="\n\nStack Trace:\n"+n.stack),window.alert(i)}function t(t,r,n){e(null,t,r,n)}function r(t,r,n){e("fatal",t,r,n)}return function(e){window.onerror=function(n,a,i,o,s){"complete"===document.readyState?t(null,n,s):(r(null,n,s),window.onerror=e,"function"==typeof window.onerror&&window.onerror.apply(this,arguments))}}(window.onerror),Object.freeze(Object.defineProperties({},{error:{value:t},fatal:{value:r}}))}();!function(){function e(e,t){var a=String(e);switch(t){case"start":return a&&r.test(a)?a.replace(r,""):a;case"end":return a&&n.test(a)?a.replace(n,""):a;default:throw new Error('_trimFrom called with incorrect where parameter value: "'+t+'"')}}function t(e,t){var r=Number.parseInt(e,10)||0;if(r<1)return"";var n="undefined"==typeof t?"":String(t);for(""===n&&(n=" ");n.length<r;){var a=n.length,i=r-a;n+=a>i?n.slice(0,i):n}return n.length>r&&(n=n.slice(0,r)),n}var r=/^[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*/,n=/[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*$/;Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");if(0===arguments.length)return!1;var e=this.length>>>0;if(0===e)return!1;var t=arguments[0],r=Number(arguments[1])||0;for(r<0&&(r=Math.max(0,e+r));r<e;++r){var n=this[r];if(t===n||t!==t&&n!==n)return!0}return!1}}),String.prototype.padStart||Object.defineProperty(String.prototype,"padStart",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padStart called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(e,10);return i<=a?n:t(i-a,r)+n}}),String.prototype.padEnd||Object.defineProperty(String.prototype,"padEnd",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padEnd called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(e,10);return i<=a?n:n+t(i-a,r)}}),String.prototype.trimStart||Object.defineProperty(String.prototype,"trimStart",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimStart called on null or undefined");return e(this,"start")}}),String.prototype.trimLeft||Object.defineProperty(String.prototype,"trimLeft",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimLeft called on null or undefined");return e(this,"start")}}),String.prototype.trimEnd||Object.defineProperty(String.prototype,"trimEnd",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimEnd called on null or undefined");return e(this,"end")}}),String.prototype.trimRight||Object.defineProperty(String.prototype,"trimRight",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimRight called on null or undefined");return e(this,"end")}})}(),function(){function _random(){if(0===arguments.length)throw new Error("_random called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(_nativeMathRandom()*(t-e+1))+e}function _getCodePointStartAndEnd(e,t){var r=e.charCodeAt(t);if(Number.isNaN(r))return{char:"",start:-1,end:-1};if(r<55296||r>57343)return{char:e.charAt(t),start:t,end:t};if(r>=55296&&r<=56319){var n=t+1;if(n>=e.length)throw new Error("high surrogate without trailing low surrogate");var a=e.charCodeAt(n);if(a<56320||a>57343)throw new Error("high surrogate without trailing low surrogate");return{char:e.charAt(t)+e.charAt(n),start:t,end:n}}if(0===t)throw new Error("low surrogate without leading high surrogate");var i=t-1,o=e.charCodeAt(i);if(o<55296||o>56319)throw new Error("low surrogate without leading high surrogate");return{char:e.charAt(i)+e.charAt(t),start:i,end:t}}var _nativeMathRandom=Math.random;Object.defineProperty(Array,"random",{configurable:!0,writable:!0,value:function(e,t,r){var n=t,a=r;return 2===arguments.length&&(a=n,n=0),Array.isArray(e)?e.random(n,a):e.hasOwnProperty("length")?[].concat(_toConsumableArray(e)).random(n,a):void 0}}),Object.defineProperty(Array.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.count called on null or undefined");for(var e=Array.prototype.indexOf,t=arguments[0],r=Number(arguments[1])||0,n=0;(r=e.call(this,t,r))!==-1;)++n,++r;return n}}),Object.defineProperty(Array.prototype,"delete",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.delete called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.indexOf,r=Array.prototype.push,n=Array.prototype.splice,a=Array.prototype.concat.apply([],arguments),i=[],o=0,s=a.length;o<s;++o)for(var u=a[o],l=0;(l=t.call(this,u,l))!==-1;)r.apply(i,n.call(this,l,1));return i}}),Object.defineProperty(Array.prototype,"deleteAt",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.deleteAt called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.splice,r=[].concat(_toConsumableArray(new Set(Array.prototype.concat.apply([],arguments).map(function(t){return t<0?Math.max(0,e+t):t})).values())),n=[].concat(_toConsumableArray(r)).sort(function(e,t){return t-e}),a=[],i=0,o=r.length;i<o;++i)a[i]=this[r[i]];for(var s=0,u=n.length;s<u;++s)t.call(this,n[s],1);return a}}),Object.defineProperty(Array.prototype,"flatten",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.flatten called on null or undefined");return Array.prototype.reduce.call(this,function(e,t){return e.concat(Array.isArray(t)?t.flatten():t)},[])}}),Object.defineProperty(Array.prototype,"includesAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAll called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAll.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(!Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!1;return!0}}),Object.defineProperty(Array.prototype,"includesAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAny called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAny.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!0;return!1}}),Object.defineProperty(Array.prototype,"pluck",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.pluck called on null or undefined");var r=this.length>>>0;if(0!==r){var n=e,a=t;return 1===arguments.length&&(a=n,n=0),null==n?n=0:n<0?(n=r+n,n<0&&(n=0)):n>=r&&(n=r-1),null==a?a=r-1:a<0?(a=r+a,a<0&&(a=r-1)):a>=r&&(a=r-1),Array.prototype.splice.call(this,_random(n,a),1)[0]}}}),Object.defineProperty(Array.prototype,"random",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.random called on null or undefined");var r=this.length>>>0;if(0!==r){var n=e,a=t;return 1===arguments.length&&(a=n,n=0),null==n?n=0:n<0?(n=r+n,n<0&&(n=0)):n>=r&&(n=r-1),null==a?a=r-1:a<0?(a=r+a,a<0&&(a=r-1)):a>=r&&(a=r-1),this[_random(n,a)]}}}),Object.defineProperty(Array.prototype,"shuffle",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.shuffle called on null or undefined");var e=this.length>>>0;if(0!==e){for(var t=e-1;t>0;--t){var r=Math.floor(_nativeMathRandom()*(t+1)),n=[this[r],this[t]];this[t]=n[0],this[r]=n[1]}return this}}}),Object.defineProperty(Function.prototype,"partial",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Function.prototype.partial called on null or undefined");var e=Array.prototype.slice,t=this,r=e.call(arguments,0);return function(){for(var n=[],a=0,i=0;i<r.length;++i)n.push(r[i]===undefined?arguments[a++]:r[i]);return t.apply(this,n.concat(e.call(arguments,a)))}}}),Object.defineProperty(Math,"clamp",{configurable:!0,writable:!0,value:function e(t,r,n){var e=Number(t);return Number.isNaN(e)?NaN:e.clamp(r,n)}}),Object.defineProperty(Math,"easeInOut",{configurable:!0,writable:!0,value:function(e){return 1-(Math.cos(Number(e)*Math.PI)+1)/2}}),Object.defineProperty(Number.prototype,"clamp",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Number.prototype.clamp called on null or undefined");if(2!==arguments.length)throw new Error("Number.prototype.clamp called with an incorrect number of parameters");var e=Number(arguments[0]),t=Number(arguments[1]);if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.min(Math.max(this,e),t)}}),RegExp.escape||!function(){var e=/[\\^$*+?.()|[\]{}]/g,t=new RegExp(e.source);Object.defineProperty(RegExp,"escape",{configurable:!0,writable:!0,value:function(r){var n=String(r);return n&&t.test(n)?n.replace(e,"\\$&"):n}})}(),function(){var e=/{(\d+)(?:,([+-]?\d+))?}/g,t=new RegExp(e.source);Object.defineProperty(String,"format",{configurable:!0,writable:!0,value:function(r){function n(e,t,r){if(!t)return e;var n=Math.abs(t)-e.length;if(n<1)return e;var a=String(r).repeat(n);return t<0?e+a:a+e}if(arguments.length<2)return 0===arguments.length?"":r;var a=2===arguments.length&&Array.isArray(arguments[1])?[].concat(_toConsumableArray(arguments[1])):Array.prototype.slice.call(arguments,1);return 0===a.length?r:t.test(r)?(e.lastIndex=0,r.replace(e,function(e,t,r){var i=a[t];if(null==i)return"";for(;"function"==typeof i;)i=i();switch("undefined"==typeof i?"undefined":_typeof(i)){case"string":break;case"object":i=JSON.stringify(i);break;default:i=String(i)}return n(i,r?Number.parseInt(r,10):0," ")})):r}})}(),Object.defineProperty(String.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.contains called on null or undefined");return String.prototype.indexOf.apply(this,arguments)!==-1}}),Object.defineProperty(String.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.count called on null or undefined");var e=String(arguments[0]||"");if(""===e)return 0;for(var t=String.prototype.indexOf,r=e.length,n=Number(arguments[1])||0,a=0;(n=t.call(this,e,n))!==-1;)++a,n+=r;return a}}),Object.defineProperty(String.prototype,"splice",{configurable:!0,writable:!0,value:function(e,t,r){if(null==this)throw new TypeError("String.prototype.splice called on null or undefined");var n=this.length>>>0;if(0===n)return"";var a=Number(e);Number.isSafeInteger(a)?a<0&&(a+=n,a<0&&(a=0)):a=0,a>n&&(a=n);var i=Number(t);(!Number.isSafeInteger(i)||i<0)&&(i=0);var o=this.slice(0,a);return"undefined"!=typeof r&&(o+=r),a+i<n&&(o+=this.slice(a+i)),o}}),Object.defineProperty(String.prototype,"splitOrEmpty",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.splitOrEmpty called on null or undefined");return""===String(this)?[]:String.prototype.split.apply(this,arguments)}}),Object.defineProperty(String.prototype,"toLocaleUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toLocaleUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return n===-1?"":r.toLocaleUpperCase()+e.slice(n+1)}}),Object.defineProperty(String.prototype,"toUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return n===-1?"":r.toUpperCase()+e.slice(n+1)}}),Object.defineProperty(Date.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:date)",this.toISOString()]}}),Object.defineProperty(Function.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)","("+this.toString()+")"]}}),Object.defineProperty(Map.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:map)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(RegExp.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)",this.toString()]}}),Object.defineProperty(Set.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:set)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(JSON,"reviveWrapper",{configurable:!0,writable:!0,value:function(e,t){if("string"!=typeof e)throw new TypeError("JSON.reviveWrapper code parameter must be a string");return["(revive:eval)",[e,t]]}}),Object.defineProperty(JSON,"_real_parse",{value:JSON.parse}),Object.defineProperty(JSON,"parse",{configurable:!0,writable:!0,value:function value(text,reviver){return JSON._real_parse(text,function(key,val){var value=val;if(Array.isArray(value)&&2===value.length)switch(value[0]){case"(revive:set)":value=new Set(value[1]);break;case"(revive:map)":value=new Map(value[1]);break;case"(revive:date)":value=new Date(value[1]);break;case"(revive:eval)":try{if(Array.isArray(value[1])){var $ReviveData$=value[1][1];value=eval(value[1][0])}else value=eval(value[1])}catch(e){}}else if("string"==typeof value&&"@@revive@@"===value.slice(0,10))try{value=eval(value.slice(10))}catch(e){}if("function"==typeof reviver)try{value=reviver(key,value)}catch(e){}return value})}}),Object.defineProperty(Array.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.contains called on null or undefined");return Array.prototype.includes.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAll called on null or undefined");return Array.prototype.includesAll.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAny called on null or undefined");return Array.prototype.includesAny.apply(this,arguments)}}),Object.defineProperty(String.prototype,"readBracketedList",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.readBracketedList called on null or undefined");for(var e=new RegExp("(?:\\[\\[((?:\\s|\\S)*?)\\]\\])|([^\"'\\s]\\S*)","gm"),t=[],r=void 0;null!==(r=e.exec(this));)r[1]?t.push(r[1]):r[2]&&t.push(r[2]);return t}})}();var Browser=function(){var e={userAgent:navigator.userAgent.toLowerCase()};return e.isGecko=navigator&&"Gecko"===navigator.product&&!/webkit|trident/.test(e.userAgent),e.isIE=/msie|trident/.test(e.userAgent)&&!e.userAgent.includes("opera"),e.ieVersion=function(){var t=/(?:msie\s+|rv:)(\d{1,2}\.\d)/.exec(e.userAgent);return t?Number([1]):0}(),e.isOpera=e.userAgent.includes("opera")||e.userAgent.includes(" opr/"),e.operaVersion=function(){var t=new RegExp((/applewebkit|chrome/.test(e.userAgent)?"opr":"version")+"\\/(\\d{1,2}\\.\\d+)"),r=t.exec(e.userAgent);return r?Number(r[1]):0}(),e.isMobile=Object.freeze({Android:/android/.test(e.userAgent),BlackBerry:/blackberry/.test(e.userAgent),iOS:/ip(?:hone|ad|od)/.test(e.userAgent),Windows:/iemobile/.test(e.userAgent),any:function(){var t=e.isMobile;return t.Android||t.BlackBerry||t.iOS||t.Windows}}),Object.freeze(e)}(),Has=function(){function e(e){try{if(null!=e&&e.length>=0){var t="SugarCube.WebStorage.Test",r="1701 Guilty Scott";if(e.setItem(t,r),e.getItem(t)===r)return e.removeItem(t),!0}}catch(e){}return!1}return Object.freeze({audio:"function"==typeof document.createElement("audio").canPlayType,fileAPI:"File"in window&&"FileList"in window&&"FileReader"in window&&!Browser.isMobile.any()&&(!Browser.isOpera||Browser.operaVersion>=15),geolocation:"geolocation"in navigator&&"function"==typeof navigator.geolocation.getCurrentPosition&&"function"==typeof navigator.geolocation.watchPosition,localStorage:"localStorage"in window&&e(window.localStorage),sessionStorage:"sessionStorage"in window&&e(window.sessionStorage)})}(),_ref4=function(){function e(t){if("object"!==("undefined"==typeof t?"undefined":_typeof(t))||null==t)return t;if("function"==typeof t.clone)return t.clone(!0);if(t.nodeType&&"function"==typeof t.cloneNode)return t.cloneNode(!0);var r=void 0;return Array.isArray(t)?r=[]:t instanceof Date?r=new Date(t.getTime()):t instanceof Map?(r=new Map,t.forEach(function(t,n){r.set(n,e(t))})):t instanceof RegExp?r=new RegExp(t):t instanceof Set?(r=new Set,t.forEach(function(t){r.add(e(t))})):r=Object.create(Object.getPrototypeOf(t)),Object.keys(t).forEach(function(n){return r[n]=e(t[n])}),r}function t(e){for(var t=document.createDocumentFragment(),r=document.createElement("p"),n=void 0;null!==(n=e.firstChild);){if(n.nodeType===Node.ELEMENT_NODE){var a=n.nodeName.toUpperCase();switch(a){case"BR":if(null!==n.nextSibling&&n.nextSibling.nodeType===Node.ELEMENT_NODE&&"BR"===n.nextSibling.nodeName.toUpperCase()){e.removeChild(n.nextSibling),e.removeChild(n),t.appendChild(r),r=document.createElement("p");continue}if(!r.hasChildNodes()){e.removeChild(n);continue}break;case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":r.hasChildNodes()&&(t.appendChild(r),r=document.createElement("p")),t.appendChild(n);continue}}r.appendChild(n)}r.hasChildNodes()&&t.appendChild(r),e.appendChild(t)}function r(){try{return document.activeElement||null}catch(e){return null}}function n(e,t,r){var n="object"===("undefined"==typeof e?"undefined":_typeof(e))?e:document.getElementById(e);if(null==n)return null;var a=Array.isArray(t)?t:[t];jQuery(n).empty();for(var i=0,o=a.length;i<o;++i)if(Story.has(a[i]))return new Wikifier(n,Story.get(a[i]).processText().trim()),n;if(null!=r){var s=String(r).trim();""!==s&&new Wikifier(n,s)}return n}function a(e,t,r){return jQuery(document.createElement("span")).addClass("error").attr("title",r).text(L10n.get("errorTitle")+": "+(t||"unknown error")).appendTo(e),!1}function i(e,t){switch("undefined"==typeof e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return t;break;case"object":if(null===e)return t;if(Array.isArray(e)||e instanceof Set)return[].concat(_toConsumableArray(e)).map(function(e){return i(e,t)}).join(", ");if(e instanceof Map){var r=function(){var r=i,n=[].concat(_toConsumableArray(e)).map(function(e){return r(e[0],t)+" ⇒ "+r(e[1],t)}).join("; ");return{v:"( "+n+" )"}}();if("object"===("undefined"==typeof r?"undefined":_typeof(r)))return r.v}else{if(e instanceof Date)return e.toLocaleString();if("function"==typeof e.toString)return e.toString()}return Object.prototype.toString.call(e);case"function":case"undefined":return t}return String(e)}return Object.freeze(Object.defineProperties({},{clone:{value:e},convertBreaks:{value:t},safeActiveElement:{value:r},setPageElement:{value:n},throwError:{value:a},toStringOrDefault:{value:i}}))}(),clone=_ref4.clone,convertBreaks=_ref4.convertBreaks,safeActiveElement=_ref4.safeActiveElement,setPageElement=_ref4.setPageElement,throwError=_ref4.throwError,toStringOrDefault=_ref4.toStringOrDefault;!function(){function e(e){13!==e.which&&32!==e.which||(e.preventDefault(),jQuery(safeActiveElement()||this).trigger("click"))}function t(e){return function(){var t=jQuery(this);t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments)}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(n,a){if(0===this.length||0===arguments.length)return this;var i=n,o=a;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this}})}(),function(){jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(0===this.length||0===r.length)return this;var a=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(a,t,e)}),this.append(a),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(t))}})}();var Util=function(){function e(e){var t=void 0;switch("undefined"==typeof e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function t(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function r(e){return String(e).trim().replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase()}function n(e){if(null==e)return"";var t=String(e);return t&&p.test(t)?t.replace(d,function(e){return f[e]}):t}function a(e){if(null==e)return"";var t=String(e);return t&&g.test(t)?t.replace(h,function(e){return m[e]}):t}function i(e){var t=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/,r=t.exec(String(e));if(null===r)throw new SyntaxError('invalid time value syntax: "'+e+'"');var n=Number(r[1]);if(/^[Ss]$/.test(r[2])&&(n*=1e3),Number.isNaN(n)||!Number.isFinite(n))throw new RangeError('invalid time value: "'+e+'"');return n}function o(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var t=void 0;switch("undefined"==typeof e?"undefined":_typeof(e)){case"string":t='"'+e+'"';break;case"number":t=String(e);break;default:t=Object.prototype.toString.call(e)}throw new Error("invalid milliseconds: "+t)}return e+"ms"}function s(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}var t="-ms-"===e.slice(0,4)?e.slice(1):e;return t.split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function u(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){var t=e.split("="),n=_slicedToArray(t,2),a=n[0],i=n[1];r[a]=i});var n=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+n+t.search,pathname:n,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}function l(e,t){for(var r=Object.prototype.toString,n=Array.isArray(e),a=[].concat(Object.keys(e),Object.keys(t)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),i={},o=void 0,s=function(e){return e===o},u=0,l=a.length;u<l;++u){var c=a[u],d=e[c],p=t[c];if(e.hasOwnProperty(c))if(t.hasOwnProperty(c)){if(d===p)continue;if(("undefined"==typeof d?"undefined":_typeof(d))===("undefined"==typeof p?"undefined":_typeof(p)))if("function"==typeof d)d.toString()!==p.toString()&&(i[c]=[v.Copy,p]);else if("object"!==("undefined"==typeof d?"undefined":_typeof(d))||null===d)i[c]=[v.Copy,p];else{var f=r.call(d),h=r.call(p);if(f===h)if("[object Date]"===f){var g=Number(p);Number(d)!==g&&(i[c]=[v.CopyDate,g])}else if("[object RegExp]"===f)d.toString()!==p.toString()&&(i[c]=[v.Copy,clone(p)]);else{var m=Util.diff(d,p);null!==m&&(i[c]=m)}else i[c]=[v.Copy,clone(p)]}else i[c]=[v.Copy,"object"!==("undefined"==typeof p?"undefined":_typeof(p))||null===p?p:clone(p)]}else if(n&&Util.isNumeric(c)){var y=Number(c);if(!o){o="";do o+="~";while(a.some(s));i[o]=[v.SpliceArray,y,y]}y<i[o][1]&&(i[o][1]=y),y>i[o][2]&&(i[o][2]=y)}else i[c]=v.Delete;else i[c]=[v.Copy,"object"!==("undefined"==typeof p?"undefined":_typeof(p))||null===p?p:clone(p)]}return Object.keys(i).length>0?i:null}function c(e,t){for(var r=Object.keys(t||{}),n=clone(e),a=0,i=r.length;a<i;++a){var o=r[a],s=t[o];if(s===v.Delete)delete n[o];else if(Array.isArray(s))switch(s[0]){case v.SpliceArray:n.splice(s[1],1+(s[2]-s[1]));break;case v.Copy:n[o]=clone(s[1]);break;case v.CopyDate:n[o]=new Date(s[1])}else n[o]=Util.patch(n[o],s)}return n}var d=/[&<>"'`]/g,p=new RegExp(d.source),f=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"}),h=/&(?:amp|lt|gt|quot|apos|#39|#x27|#96|#x60);/g,g=new RegExp(h.source),m=Object.freeze({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&apos;":"'","&#39;":"'","&#x27;":"'","&#96;":"`","&#x60;":"`"}),v=Object.freeze({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{isNumeric:{value:e},isBoolean:{value:t},slugify:{value:r},escape:{value:n},unescape:{value:a},fromCssTime:{value:i},toCssTime:{value:o},fromCssProperty:{value:s},parseUrl:{value:u},DiffOp:{value:v},diff:{value:l},patch:{value:c},random:{value:Math.random},entityEncode:{value:n},entityDecode:{value:a},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleAudio=function(){function e(){return g}function t(e){g=!!e,l("mute",g)}function r(){return f}function n(e){f=Math.clamp(e,.2,5),l("rate",f)}function a(){return h}function i(e){h=Math.clamp(e,0,1),l("volume",h)}function o(){l("stop")}function s(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");p.set(e,t)}function u(e){p.delete(e)}function l(e,t){p.forEach(function(r){return r(e,t)})}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(m,[null].concat(t)))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(v,[null].concat(t)))}var p=new Map,f=1,h=1,g=!1,m=function(){function e(t){if(_classCallCheck(this,e),Array.isArray(t))this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be an array of either URLs or source objects");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){if(!Array.isArray(t)||0===t.length)throw new Error("sources parameter must be an array of either URLs or source objects");var r=/^data:\s*audio\/([^;,]+)\s*[;,]/i,n=/\.([^.\/\\]+)$/,a=e.getType,i=[],o=document.createElement("audio");if(t.forEach(function(e){var t=null;switch("undefined"==typeof e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(s=r.exec(e),null===s)throw new Error("source data URI missing media type")}else if(s=n.exec(Util.parseUrl(e).pathname),null===s)throw new Error("source URL missing file extension");var u=a(s[1]);null!==u&&(t={src:e,type:u});break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');var l=a(e.format);null!==l&&(t={src:e.src,type:l});break;default:throw new Error("invalid source value (type: "+("undefined"==typeof e?"undefined":_typeof(e))+")")}if(null!==t){var c=document.createElement("source");c.src=t.src,c.type=t.type,o.appendChild(c),i.push(t)}}),!o.hasChildNodes())if(Browser.isIE)o.src=undefined;else{var s=document.createElement("source");s.src=undefined,s.type=undefined,o.appendChild(s)}this._finalize(o,i,clone(t))}},{key:"_copy",value:function(t){if(!(t instanceof e))throw new Error("original parameter must be an instance of AudioWrapper");this._finalize(t.audio.cloneNode(!0),clone(t.sources),clone(t.originalSources))}},{key:"_finalize",value:function(e,t,r){var n=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{configurable:!0,value:Object.freeze(t)},originalSources:{configurable:!0,value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart",function(){return n._error=!1}).on("error",function(){return n._error=!0}).find("source:last-of-type").on("error",function(){return n._trigger("error")}),SimpleAudio.subscribe(this,function(e){if(!n.audio)return void SimpleAudio.unsubscribe(n);switch(e){case"mute":n._updateAudioMute();break;case"rate":n._updateAudioRate();break;case"stop":n.stop();break;case"volume":n._updateAudioVolume()}}),this.load()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"clone",value:function(){return new e(this)}},{key:"destroy",value:function(){SimpleAudio.unsubscribe(this),this.fadeStop(),this.stop();var e=this.audio;for(jQuery(e).off();e.hasChildNodes();)e.removeChild(e.firstChild);e.load(),this._error=!0,delete this.audio,delete this.sources,delete this.originalSources}},{key:"_updateAudioMute",value:function(){this.audio.muted=this._mute||SimpleAudio.mute}},{key:"_updateAudioRate",value:function(){this.audio.playbackRate=this._rate*SimpleAudio.rate}},{key:"_updateAudioVolume",value:function(){this.audio.volume=this._volume*SimpleAudio.volume}},{key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){
+return this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isPlaying",value:function(){return!(this.audio.ended||this.audio.paused||!this.hasSomeData())}},{key:"isPaused",value:function(){return this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended}},{key:"isEnded",value:function(){return this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this.audio.loop}},{key:"load",value:function(){"auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load()}},{key:"play",value:function(){this.audio.play()}},{key:"pause",value:function(){this.audio.pause()}},{key:"stop",value:function(){this.audio.pause(),this.time=0,this._trigger("aw:stop")}},{key:"fadeWithDuration",value:function(e,t,r){var n=this;this.fadeStop();var a=Math.clamp(null==r?this.volume:r,0,1),i=Math.clamp(t,0,1);a!==i&&(this.volume=a,jQuery(this.audio).off("timeupdate.AudioWrapper:fadeWithDuration").one("timeupdate.AudioWrapper:fadeWithDuration",function(){var t=void 0,r=void 0;a<i?(t=a,r=i):(t=i,r=a);var o=Number(e);o<1&&(o=1);var s=25,u=(i-a)/(o/(s/1e3));n._faderId=setInterval(function(){return n.isPlaying()?(n.volume=Math.clamp(n.volume+u,t,r),0===n.volume&&n.pause(),void(n.volume===i&&(n.fadeStop(),n._trigger("aw:fade")))):void n.fadeStop()},s)}),this.play())}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"on",value:function(t,r){if("function"!=typeof r)throw new Error("listener parameter must be a function");var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).on(a,r),this}},{key:"one",value:function(t,r){if("function"!=typeof r)throw new Error("listener parameter must be a function");var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).one(a,r),this}},{key:"off",value:function(t,r){if(r&&"function"!=typeof r)throw new Error("listener parameter must be a function");if(!t)return jQuery(this.audio).off(".AudioWrapperEvent",r);var n=e._events,a=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(t){if(!n.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(n).join(", "));return e.replace(t,n[t])+".AudioWrapperEvent"}return e+".AudioWrapperEvent"}).join(" ");if(""===a)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).off(a,r),this}},{key:"duration",get:function(){return this.audio.duration}},{key:"ended",get:function(){return this.audio.ended}},{key:"loop",get:function(){return this.audio.loop},set:function(e){this.audio.loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,this._updateAudioMute()}},{key:"paused",get:function(){return this.audio.paused}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),this._updateAudioRate()}},{key:"remaining",get:function(){return this.audio.duration-this.audio.currentTime}},{key:"time",get:function(){return this.audio.currentTime},set:function(e){var t=this;try{this.audio.currentTime=e}catch(r){jQuery(this.audio).off("loadedmetadata.AudioWrapper:time").one("loadedmetadata.AudioWrapper:time",function(){return t.audio.currentTime=e})}}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),this._updateAudioVolume()}}],[{key:"_verifyType",value:function(t){if(!t||!Has.audio)return null;var r=e._types;if(!r.hasOwnProperty(t)){var n=document.createElement("audio");r[t]=""!==n.canPlayType(t).replace(/^no$/i,"")}return r[t]?t:null}},{key:"getType",value:function(t){if(!t||!Has.audio)return null;var r=e.formats,n=t.toLowerCase(),a=r.hasOwnProperty(n)?r[n]:"audio/"+n;return e._verifyType(a)}},{key:"canPlayFormat",value:function(t){return null!==e.getType(t)}},{key:"canPlayType",value:function(t){return null!==e._verifyType(t)}}]),e}();Object.defineProperties(m,{formats:{value:{aac:"audio/aac",caf:"audio/x-caf","x-caf":"audio/x-caf",mp3:'audio/mpeg; codecs="mp3"',mpeg:'audio/mpeg; codecs="mp3"',m4a:"audio/mp4",mp4:"audio/mp4","x-m4a":"audio/mp4","x-mp4":"audio/mp4",oga:"audio/ogg",ogg:"audio/ogg",opus:'audio/ogg; codecs="opus"',wav:"audio/wav",wave:"audio/wav",weba:"audio/webm",webm:"audio/webm"}},_types:{value:{}},_events:{value:Object.freeze({canplay:"canplaythrough",end:"ended",error:"error",fade:"aw:fade",pause:"pause",play:"playing",rate:"ratechange",seek:"seeked",stop:"aw:stop",volume:"volumechange"})}});var v=function(){function e(t){var r=this;_classCallCheck(this,e),Object.defineProperties(this,{tracks:{configurable:!0,value:[]},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}}),Array.isArray(t)?t.forEach(function(e){return r.add(e)}):t instanceof e&&t.tracks.forEach(function(e){return r.add(e)})}return _createClass(e,[{key:"add",value:function(e){var t=this;if(null==e||"object"!==("undefined"==typeof e?"undefined":_typeof(e)))throw new Error("track parameter must be an object");var r=void 0,n=void 0,a=void 0,i=void 0;if(e instanceof m)r=!0,n=e.clone(),a=e.volume,i=e.rate;else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof m))throw new Error('track object\'s "track" property must be an AudioWrapper object');r=e.hasOwnProperty("copy")&&e.copy,n=r?e.track.clone():e.track,a=e.hasOwnProperty("volume")?e.volume:e.track.volume,i=e.hasOwnProperty("rate")?e.rate:e.track.rate}n.stop(),n.loop=!1,n.mute=!1,n.volume=a,n.rate=i,n.on("end.AudioListEvent",function(){return t._onEnd()}),this.tracks.push({copy:r,track:n,volume:a,rate:i})}},{key:"destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.copy}).forEach(function(e){return e.track.destroy()}),delete this.tracks,delete this.queue}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this._loop}},{key:"isShuffled",value:function(){return this._shuffle}},{key:"play",value:function(){(null!==this.current&&!this.current.track.isEnded()||(0===this.queue.length&&this._buildList(),this._next()))&&this.current.track.play()}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this.queue.splice(0)}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fadeWithDuration",value:function(e,t,r){if(0===this.queue.length&&this._buildList(),null!==this.current&&!this.current.track.isEnded()||this._next()){var n=Math.clamp(t,0,1)*this.current.volume,a=void 0;null!=r&&(a=Math.clamp(r,0,1)*this.current.volume),this.current.track.fadeWithDuration(e,n,a),this._volume=t}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"_next",value:function(){return null!==this.current&&this.current.track.stop(),0===this.queue.length?(this.current=null,!1):(this.current=this.queue.shift(),!this.current.track.hasSource()||this.current.track.isFailed()?this._next():(this.current.track.mute=this._mute,this.current.track.rate=this.rate*this.current.rate,this.current.track.volume=this.volume*this.current.volume,!0))}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._buildList()}this._next()&&this.current.track.play()}},{key:"_buildList",value:function(){var e;this.queue.splice(0),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks)),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}},{key:"duration",get:function(){return this.tracks.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0)}},{key:"loop",get:function(){return this._loop},set:function(e){this._loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,null!==this.current&&(this.current.track.mute=this._mute)}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),null!==this.current&&(this.current.track.rate=this.rate*this.current.rate)}},{key:"remaining",get:function(){var e=this.queue.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining),e}},{key:"shuffle",get:function(){return this._shuffle},set:function(e){this._shuffle=!!e}},{key:"time",get:function(){return this.duration-this.remaining}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),null!==this.current&&(this.current.track.volume=this.volume*this.current.volume)}}]),e}();return Object.freeze(Object.defineProperties({},{mute:{get:e,set:t},rate:{get:r,set:n},volume:{get:a,set:i},stop:{value:o},subscribe:{value:s},unsubscribe:{value:u},publish:{value:l},create:{value:c},createList:{value:d}}))}(),SimpleStore=function(){function e(e,n){if(r)return r.create(e,n);for(var a=0;a<t.length;++a)if(t[a].init(e,n))return r=t[a],r.create(e,n);throw new Error("no valid adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){return r=Has.localStorage&&Has.sessionStorage}function t(e,t){if(!r)throw new Error("adapter not initialized");return new n(e,t)}var r=!1,n=function(){function e(t,r){_classCallCheck(this,e);var n=t+".",a=null,i=null;r?(a=window.localStorage,i="localStorage"):(a=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:a},_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function e(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){throw/quota_?(?:exceeded|reached)/i.test(e.name)&&(e.message=this.name+" quota exceeded"),e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e){return LZString.compressToUTF16(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromUTF16(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){return n="cookie"in document,n&&r(e),n}function t(e,t){if(!n)throw new Error("adapter not initialized");return new a(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),n=e+"!.",i=e+"*.",o=/\.(?:state|rcWarn)$/,s=document.cookie.split(/;\s*/),u=0;u<s.length;++u){var l=s[u].split("="),c=decodeURIComponent(l[0]);if(r.test(c)){var d=decodeURIComponent(l[1]);""!==d&&!function(){var e=!o.test(c);a._setCookie(c,undefined,"Thu, 01 Jan 1970 00:00:00 GMT"),a._setCookie(c.replace(r,function(){return e?n:i}),d,e?"Tue, 19 Jan 2038 03:14:07 GMT":undefined)}()}}}var n=!1,a=function(){function e(t,r){_classCallCheck(this,e);var n=""+t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function e(){if(""===document.cookie)return[];for(var t=document.cookie.split(/;\s*/),e=[],r=0;r<t.length;++r){var n=t[r].split("="),a=decodeURIComponent(n[0]);if(this._prefixRe.test(a)){var i=decodeURIComponent(n[1]);""!==i&&e.push(a.replace(this._prefixRe,""))}}return e}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?"Tue, 19 Jan 2038 03:14:07 GMT":undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,"Thu, 01 Jan 1970 00:00:00 GMT"),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var n=t[r].split("="),a=decodeURIComponent(n[0]);if(e===a){var i=decodeURIComponent(n[1]);return i||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var n=encodeURIComponent(e)+"=";null!=t&&(n+=encodeURIComponent(t)),null!=r&&(n+="; "+r),n+="; path=/",document.cookie=n}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){var e=function(){function e(t,r,n,a){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:a,"aria-label":a,"data-type":null!=r?r:"","data-name":null!=n?n:""}).addClass("debug"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){var t=this;if(null==e){var r=function(){var e={};return t.view.className.splitOrEmpty(/\s+/).forEach(function(t){"debug"!==t&&(e[t]=!0)}),{v:e}}();if("object"===("undefined"==typeof r?"undefined":_typeof(r)))return r.v}else if("object"===("undefined"==typeof e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"init",value:function(){jQuery('<button id="debug-view-toggle">'+L10n.get("debugViewTitle")+"</button>").ariaClick({label:L10n.get("debugViewToggle")},function(){return e.toggle()}).prependTo("#ui-bar-body"),e.enable()}},{key:"enable",value:function(){jQuery(document.documentElement).addClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}},{key:"toggle",value:function(){jQuery(document.documentElement).toggleClass("debug-view"),jQuery.event.trigger("tw:debugviewupdate")}}]),e}();return e}(),PRNGWrapper=function(){var e=function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),n=t.pull;n>0;--n)r.random();return r}}]),e}();return e}(),StyleWrapper=function(){var e=/\[[<>]?[Ii][Mm][Gg]\[(?:\s|\S)*?\]\]+/g,t=new RegExp(e.source),r=function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var n=r;t.test(n)&&(e.lastIndex=0,n=n.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var n=Story.get(r);n.tags.includes("Twine.image")&&(r=n.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=n:this.style.appendChild(document.createTextNode(n))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}();return r}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=50,o=l10nStrings[r],s=0;a.test(o);){if(++s>i)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");n.lastIndex=0,o=o.replace(n,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return o}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesEmptySlot":t=strings.saves.emptySlot;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesSavedOn":t=strings.saves.savedOn;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var n=/\{\w+\}/g,a=new RegExp(n.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugViewTitle:"Debug View",debugViewToggle:"Toggle the debug view",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",savesDisallowed:"Saving has been disallowed on this passage.",savesEmptySlot:"— slot empty —",savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesSavedOn:"Saved on",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){function e(){throw new Error("Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code")}function t(){throw new Error("Config.history.tracking has been deprecated, use Config.history.maxStates instead")}var r=Object.seal({debug:!1,addVisitedLinkClass:!1,cleanupWikifierOutput:!1,loadDelay:0,history:Object.seal({controls:!0,maxStates:100,get mode(){e()},set mode(t){e()},get tracking(){t()},set tracking(e){t()}}),macros:Object.seal({ifAssignmentError:!0,maxLoopIterations:1e3}),navigation:Object.seal({override:undefined}),passages:Object.seal({descriptions:undefined,displayTitles:!1,start:undefined,transitionOut:undefined}),saves:Object.seal({autoload:undefined,autosave:undefined,id:"untitled-story",isAllowed:undefined,onLoad:undefined,onSave:undefined,slots:8,version:undefined}),ui:Object.seal({stowBarInitially:800,updateStoryElements:!0}),transitionEndEventName:function(){for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),n=0;n<t.length;++n)if(r.style[t[n]]!==undefined)return e.get(t[n]);return""}()});return r}(),Patterns=function(){var e=/[\u0150\u0170]/g.test("Ő"),t="[\\s\\u00A0\\u2028\\u2029]",r="[0-9A-Z_a-z\\-\\u00C0-\\u00D6\\u00D8-\\u00DE\\u00DF-\\u00F6\\u00F8-\\u00FF"+(e?"\\u0150\\u0170\\u0151\\u0171":"")+"]",n=r.replace("\\-",""),a="[$A-Z_a-z]",i=a+"[$0-9A-Z_a-z]*",o="[$_]",s=o+i,u="[A-Za-z][\\w-]*|[=-]",l="("+r+"+)\\(([^\\)\\|\\n]+)\\):",c="("+r+"+):([^;\\|\\n]+);",d="((?:\\."+r+"+)+);",p="((?:#"+r+"+)+);",f=l+"|"+c+"|"+d+"|"+p,h="(?:file|https?|mailto|ftp|javascript|irc|news|data):[^\\s'\"]+";return Object.freeze({space:t,anyLetter:r,anyLetterStrict:n,identifierFirstChar:a,identifier:i,variableSigil:o,variable:s,macroName:u,inlineCss:f,url:h})}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,n,a){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:n,one:!!r}):(i=r,o={namespace:a,one:!!n,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,n,a,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),n&&o.addClass(n),i&&o.attr("title",i),a&&o.text(a),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*a,n(o,Math.easeInOut(i)),(1===a&&i>=1||a===-1&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function n(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var a="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,n(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){c+=i,window.scroll(0,o+l*(u*Math.easeInOut(c))),c>=1&&window.clearInterval(d)}function n(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}function a(e){var t=n(e),r=t+e.offsetHeight,a=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=a+i;return t>=a&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}var i=null!=t?Number(t):.1;Number.isNaN(i)||!Number.isFinite(i)||i<0?i=.1:i>1&&(i=1);var o=window.scrollY?window.scrollY:document.body.scrollTop,s=a(e),u=Math.abs(o-s),l=o>s?-1:1,c=0,d=void 0;d=window.setInterval(r,25)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,n=e.length;r<n;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,n=State.turns,a=0,i=e.length;a<i&&n>-1;++a){var o=t.lastIndexOf(e[a]);n=Math.min(n,o===-1?-1:r-o)}return n}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){if(0===arguments.length)throw new Error("random called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){if(0===arguments.length)throw new Error("randomFloat called with insufficient parameters");var e=void 0,t=void 0;if(1===arguments.length?(e=0,t=arguments[0]):(e=arguments[0],t=arguments[1]),e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,n=e.length;r<n;++r)t=t.concat(Story.get(e[r]).tags);return t}function time(){return null===Engine.lastPlay?0:Date.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,n=0,a=e.length;n<a&&r>0;++n)r=Math.min(r,t.count(e[n]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,n=new Map,a=0,i=0,o=r.length;i<o;++i){var s=r[i];if(n.has(s))n.get(s)&&++a;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++a,n.set(s,!0)):n.set(s,!1)}}}return a}function evalJavaScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,String(code),output)}function evalTwineScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output);
+}var parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var a=e,i=void 0;null!==(i=r.exec(a));)if(i[5]){var o=i[5];if("$"===o||"_"===o)continue;if(n.test(o))o=o[0];else if("is"===o){var s=r.lastIndex,u=a.slice(s);/^\s+not\b/.test(u)&&(a=a.splice(s,u.search(/\S/)),o="isnot")}t.hasOwnProperty(o)&&(a=a.splice(i.index,o.length,t[o]),r.lastIndex+=t[o].length-o.length)}return a}var t=Object.freeze({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),n=new RegExp("^"+Patterns.variable);return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),Wikifier=function(){var e=void 0,t=0,r=function(){function r(n,a,i){_classCallCheck(this,r),"object"!==("undefined"==typeof e?"undefined":_typeof(e))&&r.compileFormatters(),Object.defineProperties(this,{source:{value:String(a)},options:{writable:!0,value:Object.assign({profile:"all"},i)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==n?this.output=document.createDocumentFragment():n.jquery?this.output=n[0]:this.output=n;try{++t,this.subWikify(this.output),1===t&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--t}}return _createClass(r,[{key:"subWikify",value:function(e,t,r){var n=this.output,a=void 0;this.output=e,null!=r&&"object"===("undefined"==typeof r?"undefined":_typeof(r))&&(a=this.options,this.options=Object.assign({},this.options,r));var i=t?new RegExp("(?:"+t+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,o=void 0,s=void 0;do{if(this.formatter.formatterRegExp.lastIndex=this.nextMatch,i&&(i.lastIndex=this.nextMatch),s=this.formatter.formatterRegExp.exec(this.source),o=i?i.exec(this.source):null,o&&(!s||o.index<=s.index))return o.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,o.index),this.matchStart=o.index,this.matchLength=o[0].length,this.matchText=o[0],this.nextMatch=i.lastIndex,this.output=n,void(a&&(this.options=a));if(s){s.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,s.index),this.matchStart=s.index,this.matchLength=s[0].length,this.matchText=s[0],this.nextMatch=this.formatter.formatterRegExp.lastIndex;for(var u=void 0,l=1,c=s.length;l<c;++l)if(s[l]){u=l-1;break}if(this.formatter.formatters[u].handler(this),null!=TempState.break)break}}while(o||s);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=n,a&&(this.options=a)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this.rawArgs())}},{key:"formatter",get:function(){if(!e.hasOwnProperty(this.options.profile))throw new Error('nonexistent formatter profile "'+this.options.profile+'"');return e[this.options.profile]}}],[{key:"compileFormatters",value:function(){var t=r.formatters,n=t.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return e={all:{formatters:t,formatterRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{formatters:n,formatterRegExp:new RegExp(n.map(function(e){return"("+e.match+")"}).join("|"),"gm")}}}},{key:"getValue",value:function(e){var t=r.parseStoryVariable(e),n=void 0;if(null!==t){n=t.store;for(var a=t.names,i=0,o=a.length;i<o;++i){if("undefined"==typeof n[a[i]]){n=undefined;break}n=n[a[i]]}}return n}},{key:"setValue",value:function(e,t){var n=r.parseStoryVariable(e);if(null!==n){for(var a=n.names,i=a.pop(),o=n.store,s=0,u=a.length;s<u;++s){if("undefined"==typeof o[a[s]]){o=undefined;break}o=o[a[s]]}if(o!==undefined)return o[i]=t,!0}return!1}},{key:"parseStoryVariable",value:function(e){for(var t={store:"$"===e[0]?State.variables:State.temporary,names:[]},n=e,a=void 0;null!==(a=r._parseVarRegExp.exec(n));)n=n.slice(a[0].length),a[1]?t.names.push(a[1]):a[2]?t.names.push(a[2]):a[3]?t.names.push(a[3]):a[4]?t.names.push(a[4]):a[5]?t.names.push(r.getValue(a[5])):a[6]&&t.names.push(Number(a[6]));return""===n?t:null}},{key:"wikifyEval",value:function(e){var t=document.createDocumentFragment();new r(t,e);var n=t.querySelector(".error");if(null!==n)throw new Error(n.textContent.replace(/^(?:(?:Uncaught\s+)?Error:\s+)+/,""));return t}},{key:"createInternalLink",value:function(e,t,r,n){var a=jQuery(document.createElement("a"));return null!=t&&(a.attr("data-passage",t),Story.has(t)?(a.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&a.addClass("link-visited")):a.addClass("link-broken"),a.ariaClick({one:!0},function(){"function"==typeof n&&n(),Engine.play(t)})),r&&a.append(document.createTextNode(r)),e&&a.appendTo(e),a[0]}},{key:"createExternalLink",value:function(e,t,r){var n=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&n.attr({href:t,tabindex:0}),n[0]}},{key:"isExternalLink",value:function(e){if(Story.has(e))return!1;var t=new RegExp("^"+Patterns.url,"gim");return t.test(e)||/[\/.?#]/.test(e)}}]),r}();return Object.defineProperties(r,{_parseVarRegExp:{value:new RegExp(["^(?:",Patterns.variableSigil,"(",Patterns.identifier,")|\\.(",Patterns.identifier,")|\\[(?:(?:\"((?:\\\\.|[^\"\\\\])+)\")|(?:'((?:\\\\.|[^'\\\\])+)')|(",Patterns.variableSigil,Patterns.identifierFirstChar,".*)|(\\d+))\\])"].join(""))},helpers:{value:{}},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(r.helpers,{inlineCss:{value:function(){function e(e){var r={classes:[],id:"",styles:{}},n=void 0;do{t.lastIndex=e.nextMatch;var a=t.exec(e.source);n=a&&a.index===e.nextMatch,n&&(a[1]?r.styles[Util.fromCssProperty(a[1])]=a[2].trim():a[3]?r.styles[Util.fromCssProperty(a[3])]=a[4].trim():a[5]?r.classes=r.classes.concat(a[5].slice(1).split(/\./)):a[6]&&(r.id=a[6].slice(1).split(/#/).pop()),e.nextMatch=t.lastIndex)}while(n);return r}var t=new RegExp(Patterns.inlineCss,"gm");return e}()},evalText:{value:function(e){var t=void 0;try{t=Scripting.evalTwineScript(e),null==t||"function"==typeof t?t=e:(t=String(t),/\[(?:object(?:\s+[^\]]+)?|native\s+code)\]/.test(t)&&(t=e))}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:r.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var n=e[r];switch(n.nodeType){case Node.ELEMENT_NODE:var a=n.nodeName.toUpperCase();if("BR"===a)return!0;var i=t?window.getComputedStyle(n,null):n.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(a){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},createShadowSetterCallback:{value:function(){function e(){if(!a&&(a=r.formatters.find(function(e){return"macro"===e.name}),!a))throw new Error('cannot find "macro" formatter');return a}function t(){for(var t=a||e(),r=new Set,n=t.context;null!==n;n=n.parent)n._shadows&&n._shadows.forEach(function(e){return r.add(e)});return[].concat(_toConsumableArray(r))}function n(e){var r={};return t().forEach(function(e){var t=e.slice(1),n="$"===e[0]?State.variables:State.temporary;r[e]=n[t]}),function(){var t=Object.keys(r),n=t.length>0?{}:null;try{return t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;a.hasOwnProperty(t)&&(n[t]=a[t]),a[t]=r[e]}),Scripting.evalJavaScript(e)}finally{t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;r[e]=a[t],n.hasOwnProperty(t)?a[t]=n[t]:delete a[t]})}}}var a=null;return n}()},parseSquareBracketedMarkup:{value:function(e){function t(){return d>=e.source.length?u:e.source[d++]}function r(){return d>=e.source.length?u:e.source[d]}function n(t){return t<1||d+t>=e.source.length?u:e.source[d+t]}function a(){return{error:String.format.apply(String,arguments),pos:d}}function i(){c=d}function o(t){var r=e.source.slice(c,d).trim();if(""===r)throw new Error("malformed wiki "+(h?"link":"image")+", empty "+t+" component");"link"===t&&"~"===r[0]?(l.forceInternal=!0,l.link=r.slice(1)):l[t]=r,c=d}function s(e){++d;e:for(;;){switch(r()){case"\\":++d;var t=r();if(t!==u&&"\n"!==t)break;case u:case"\n":return u;case e:break e}++d}return d}var u=-1,l={},c=e.matchStart,d=c+1,p=void 0,f=void 0,h=void 0,g=void 0;if(g=r(),"["===g)h=l.isLink=!0;else{switch(h=!1,g){case"<":l.align="left",++d;break;case">":l.align="right",++d}if(!/^[Ii][Mm][Gg]$/.test(e.source.slice(d,d+3)))return a("malformed square-bracketed wiki markup");d+=3,l.isImage=!0}if("["!==t())return a("malformed wiki {0}",h?"link":"image");p=1,f=0,i();try{e:for(;;){switch(g=r()){case u:case"\n":return a("unterminated wiki {0}",h?"link":"image");case'"':if(s(g)===u)return a("unterminated double quoted string in wiki {0}",h?"link":"image");break;case"'":if((4===f||3===f&&h)&&s(g)===u)return a("unterminated single quoted string in wiki {0}",h?"link":"image");break;case"|":0===f&&(o(h?"text":"title"),++c,f=1);break;case"-":0===f&&">"===n(1)&&(o(h?"text":"title"),++d,c+=2,f=1);break;case"<":0===f&&"-"===n(1)&&(o(h?"link":"source"),++d,c+=2,f=2);break;case"[":if(f===-1)return a("unexpected left square bracket '['");++p,1===p&&(i(),++c);break;case"]":if(--p,0===p){switch(f){case 0:case 1:o(h?"link":"source"),f=3;break;case 2:o(h?"text":"title"),f=3;break;case 3:h?(o("setter"),f=-1):(o("link"),f=4);break;case 4:o("setter"),f=-1}if(++d,"]"===r()){++d;break e}--d}}++d}}catch(e){return a(e.message)}return l.pos=d,l}}}),Object.defineProperty(r,"formatters",{value:[{name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(\\/?"+Patterns.macroName+")(?:\\s*)((?:(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),argsPattern:["(``)","`((?:\\\\.|[^`\\\\])+)`","(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","(\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)","([^`\"'\\s]+)","(`|\"|')"].join("|"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,n=this.working.source,a=this.working.name,i=this.working.arguments,o=void 0;try{if(o=Macro.get(a),!o){if(Macro.tags.has(a)){var s=Macro.tags.get(a);return throwError(e.output,"child tag <<"+a+">> was found outside of a call to its parent macro"+(1===s.length?"":"s")+" <<"+s.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+a+">> does not exist",e.source.slice(t,e.nextMatch))}var u=null;if(o.hasOwnProperty("tags")&&(u=this.parseBody(e,o),!u))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+a+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof o.handler)return throwError(e.output,"macro <<"+a+">> handler function "+(o.hasOwnProperty("handler")?"is not a function":"does not exist"),e.source.slice(t,e.nextMatch));var l=u?u[0].args:this.createArgs(i,o.hasOwnProperty("skipArgs")&&!!o.skipArgs||o.hasOwnProperty("skipArg0")&&!!o.skipArg0);if(o.hasOwnProperty("_MACRO_API")){this.context=new MacroContext({parent:this.context,macro:o,name:a,args:l,payload:u,parser:e,source:n});try{o.handler.call(this.context)}finally{this.context=this.context.parent}}else{var c=e._rawArgs;e._rawArgs=i,o.handler(e.output,a,l,e,u),e._rawArgs=c}}catch(r){return throwError(e.output,"cannot execute "+(o&&o.isWidget?"widget":"macro")+" <<"+a+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,n="/"+r,a="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=t.hasOwnProperty("skipArgs")&&t.skipArgs,u=t.hasOwnProperty("skipArg0")&&t.skipArg0,l=-1,c=1,d=this.working.source,p=this.working.name,f=this.working.arguments,h=e.nextMatch;(e.matchStart=e.source.indexOf(this.match,e.nextMatch))!==-1;)if(this.parseTag(e)){var g=this.working.source,m=this.working.name,v=this.working.arguments,y=this.working.index,b=e.nextMatch;switch(m){case r:++c;break;case a:case n:--c;break;default:if(1===c&&i)for(var w=0,k=i.length;w<k;++w)m===i[w]&&(o.push({source:d,name:p,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(h,y)}),d=g,p=m,f=v,h=b)}if(0===c){o.push({source:d,name:p,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(h,y)}),l=b;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return l!==-1?(e.nextMatch=l,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},parseArgs:function(e){for(var t=new RegExp(this.argsPattern,"gm"),n=[],a=new RegExp("^"+Patterns.variable),i=void 0;null!==(i=t.exec(e));){var o=void 0;if(i[1])o=undefined;else if(i[2]){o=i[2];try{o=Scripting.evalTwineScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}}else if(i[3])o="";else if(i[4]){o=i[4];try{o=Scripting.evalJavaScript(o)}catch(e){throw new Error("unable to parse macro argument '"+o+"': "+e.message)}}else if(i[5]){o=i[5];try{o=Scripting.evalJavaScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}}else if(i[6]){o=i[6];var s=r.helpers.parseSquareBracketedMarkup({source:o,matchStart:0});if(s.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+o+'": '+s.error);if(s.pos<o.length)throw new Error('unable to parse macro argument "'+o+'": unexpected character(s) "'+o.slice(s.pos)+'" (pos: '+s.pos+")");s.isLink?(o={isLink:!0},o.count=s.hasOwnProperty("text")?2:1,o.link=r.helpers.evalPassageId(s.link),o.text=s.hasOwnProperty("text")?r.helpers.evalText(s.text):o.link,o.external=!s.forceInternal&&r.isExternalLink(o.link),o.setFn=s.hasOwnProperty("setter")?r.helpers.createShadowSetterCallback(Scripting.parse(s.setter)):null):s.isImage&&(o=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(r.helpers.evalPassageId(s.source)),s.hasOwnProperty("align")&&(o.align=s.align),s.hasOwnProperty("title")&&(o.title=r.helpers.evalText(s.title)),s.hasOwnProperty("link")&&(o.link=r.helpers.evalPassageId(s.link),o.external=!s.forceInternal&&r.isExternalLink(o.link)),o.setFn=s.hasOwnProperty("setter")?r.helpers.createShadowSetterCallback(Scripting.parse(s.setter)):null)}else if(i[7])if(o=i[7],a.test(o))o=r.getValue(o);else if(/^(?:settings|setup)[.[]/.test(o))try{o=Scripting.evalTwineScript(o)}catch(e){throw new Error('unable to parse macro argument "'+o+'": '+e.message)}else if("null"===o)o=null;else if("undefined"===o)o=undefined;else if("true"===o)o=!0;else if("false"===o)o=!1;else{var u=Number(o);Number.isNaN(u)||(o=u)}else if(i[8]){var l=void 0;switch(i[8]){case"`":l="backtick expression";break;case'"':l="double quoted string";break;case"'":l="single quoted string"}throw new Error("unterminated "+l+" in macro argument string")}n.push(o)}return n}},{name:"prettyLink",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=r.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var n=r.helpers.evalPassageId(t.link),a=t.hasOwnProperty("text")?r.helpers.evalText(t.text):n,i=t.hasOwnProperty("setter")?r.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,o=(Config.debug?new DebugView(e.output,"wiki-link","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!r.isExternalLink(n)?r.createInternalLink(o,n,a,i):r.createExternalLink(o,n,a)}},{name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(r.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}},{name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=r.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var n=void 0;Config.debug&&(n=new DebugView(e.output,"wiki-image",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),n.modes({block:!0}));var a=t.hasOwnProperty("setter")?r.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,i=(Config.debug?n:e).output,o=void 0;if(t.hasOwnProperty("link")){var s=r.helpers.evalPassageId(t.link);i=t.forceInternal||!r.isExternalLink(s)?r.createInternalLink(i,s,null,a):r.createExternalLink(i,s),i.classList.add("link-image")}if(i=jQuery(document.createElement("img")).appendTo(i).get(0),o=r.helpers.evalPassageId(t.source),"data:"!==o.slice(0,5)&&Story.has(o)){var u=Story.get(o);u.tags.includes("Twine.image")&&(i.setAttribute("data-passage",u.title),o=u.text)}i.src=o,t.hasOwnProperty("title")&&(i.title=r.helpers.evalText(t.title)),t.hasOwnProperty("align")&&(i.align=t.align)}},{name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(jQuery(document.createElement("pre")).text(t[1]).appendTo(e.output),e.nextMatch=this.lookahead.lastIndex)}},{name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}},{name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRegExp:/\s*\n/gm,handler:function(e){var t=r.helpers.inlineCss(e);this.blockRegExp.lastIndex=e.nextMatch;var n=this.blockRegExp.exec(e.source),a=n&&n.index===e.nextMatch,i=jQuery(document.createElement(a?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?i.addClass("marked"):(t.classes.forEach(function(e){return i.addClass(e)}),""!==t.id&&i.attr("id",t.id),i.css(t.styles)),a?(e.nextMatch+=n[0].length,e.subWikify(i[0],"\\n?"+this.terminator)):e.subWikify(i[0],this.terminator)}},{name:"verbatimText",profiles:["core"],match:'"{3}|<nowiki>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<nowiki>((?:.|\n)*?)<\/nowiki>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output),e.nextMatch=this.lookahead.lastIndex)}},{name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<hr\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}},{name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}},{name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}},{name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=toStringOrDefault(r.getValue(e.matchText),null);null===t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new r((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,t)}},{name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){return r.helpers.hasBlockContext(e.output.childNodes)?void e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator):void jQuery(e.output).append(document.createTextNode(e.matchText))}},{name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),n=[],a=null,i=null,o=0,s=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var u=this.lookahead.exec(e.source);if(s=u&&u.index===e.nextMatch){var l=u[2];"k"===l?(t.className=u[1],e.nextMatch+=u[0].length+1):(l!==a&&(a=l,i=jQuery(document.createElement(this.rowTypes[l])).appendTo(t)),"c"===a?(i.css("caption-side",0===o?"top":"bottom"),e.nextMatch+=1,e.subWikify(i[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(i).get(0),n),++o)}}while(s)},rowHandler:function(e,t,n){var a=this,i=new RegExp(this.cellPattern,"gm"),o=0,s=1,u=void 0;do{i.lastIndex=e.nextMatch;var l=i.exec(e.source);if(u=l&&l.index===e.nextMatch){if("~"===l[1]){var c=n[o];c&&(++c.rowCount,c.$element.attr("rowspan",c.rowCount).css("vertical-align","middle")),e.nextMatch=l.index+l[0].length-1}else if(">"===l[1])++s,e.nextMatch=l.index+l[0].length-1;else{if(l[2]){e.nextMatch=l.index+l[0].length;break}!function(){++e.nextMatch;for(var i=r.helpers.inlineCss(e),u=!1,l=!1,c=void 0;" "===e.source.substr(e.nextMatch,1);)u=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(c=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):c=jQuery(document.createElement("td")).appendTo(t),n[o]={rowCount:1,$element:c},s>1&&(c.attr("colspan",s),s=1),e.subWikify(c[0],a.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(l=!0),i.classes.forEach(function(e){return c.addClass(e)}),""!==i.id&&c.attr("id",i.id),u&&l?i.styles["text-align"]="center":u?i.styles["text-align"]="right":l&&(i.styles["text-align"]="left"),c.css(i.styles),e.nextMatch=e.nextMatch-1}()}++o}}while(u)}},{name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],n=null,a=0,i=void 0,o=void 0;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(i=s&&s.index===e.nextMatch){var u=s[2]?"ol":"ul",l=s[0].length;if(e.nextMatch+=s[0].length,l>a)for(o=a;o<l;++o)t.push(jQuery(document.createElement(u)).appendTo(t[t.length-1]).get(0));else if(l<a)for(o=a;o>l;--o)t.pop();else l===a&&u!==n&&(t.pop(),t.push(jQuery(document.createElement(u)).appendTo(t[t.length-1]).get(0)));a=l,n=u,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(i)}},{name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){return r.helpers.hasBlockContext(e.output.childNodes)?void e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator):void jQuery(e.output).append(document.createTextNode(e.matchText))}},{name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!r.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],n=0,a=e.matchLength,i=void 0,o=void 0;do{if(a>n)for(o=n;o<a;++o)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(a<n)for(o=n;o>a;--o)t.pop();n=a,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);i=s&&s.index===e.nextMatch,i&&(a=s[0].length,e.nextMatch+=s[0].length)}while(i)}},{name:"html",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}},{name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:<!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}},{name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.space+"*?(?:\\n|$)|(?:^|\\n)"+Patterns.space+"*?\\\\",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}},{name:"lineBreak",profiles:["core"],match:"\\n|<br\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}},{name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}},{name:"htmlTag",profiles:["core"],match:"<\\w+(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagPattern:"<(\\w+)",voidElements:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],nobrElements:["colgroup","datalist","dl","figure","ol","optgroup","select","table","tbody","tfoot","thead","tr","ul"],handler:function(e){var t=new RegExp(this.tagPattern).exec(e.matchText),r=t&&t[1],n=r&&r.toLowerCase();if(n){var a=this.voidElements.includes(n),i=this.nobrElements.includes(n),o=void 0,s=void 0;if(!a){o="<\\/"+n+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(a||s){var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;c.hasAttribute("data-passage")&&(this.processDataAttributes(c),Config.debug&&(d=new DebugView(e.output,"html-"+n,n,e.matchText),d.modes({block:"img"===n,nonvoid:s}),l=d.output)),s&&(e.subWikify(c,o,{ignoreTerminatorCase:!0,nobr:i}),d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})),l.appendChild(c)}else throwError(e.output,'HTML tag "'+r+'" is not closed',e.matchText+"…")}},processDataAttributes:function(e){var t=e.getAttribute("data-passage");if(null!=t){var n=r.helpers.evalPassageId(t);n!==t&&(t=n,e.setAttribute("data-passage",n)),""!==t&&("IMG"===e.tagName.toUpperCase()?"data:"!==t.slice(0,5)&&Story.has(t)&&(t=Story.get(t),t.tags.includes("Twine.image")&&(e.src=t.text.trim())):!function(){var n=e.getAttribute("data-setter"),a=void 0;null!=n&&(n=String(n).trim(),""!==n&&(a=r.helpers.createShadowSetterCallback(Scripting.parse(n)))),Story.has(t)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof a&&a.call(this),Engine.play(t)})}())}}}]}),r}(),Macro=function(){function e(t,r,a){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r,a)});if(!p.test(t))throw new Error('invalid macro name "'+t+'"');if(n(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===("undefined"==typeof r?"undefined":_typeof(r)))c[t]=a?clone(r):r;else{if(!n(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=a?clone(c[r]):c[r]}Object.defineProperty(c,t,{writable:!1}),c[t]._MACRO_API=!0}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(c[t].hasOwnProperty("tags"))if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(n(e)){c[e].hasOwnProperty("tags")&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function n(e){return c.hasOwnProperty(e)}function a(e){var t=null;return n(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&&macros[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],a=[].concat(r,Array.isArray(t)?t:[]),i=0;i<a.length;++i){var o=a[i];if(n(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);r!==-1&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},p=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:n},get:{value:a},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments);
+}}}))}(),MacroContext=function(){var e=function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{parent:{value:r.parent},self:{value:r.macro},name:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parser:{value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,n=Array(r),a=0;a<r;a++)n[a]=arguments[a];n.flatten().forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+("undefined"==typeof r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var n=void 0;return"function"==typeof e&&(n={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t]})),function(){for(var a=this,i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];"function"==typeof r&&r.apply(this,o),"function"==typeof e&&!function(){var t=Object.keys(n),r=t.length>0?{}:null;try{t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;a.hasOwnProperty(t)&&(r[t]=a[t]),a[t]=n[e]}),e.apply(a,o)}finally{t.forEach(function(e){var t=e.slice(1),a="$"===e[0]?State.variables:State.temporary;n[e]=a[t],r.hasOwnProperty(t)?a[t]=r[t]:delete a[t]})}}(),"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e?e:this.name,t?t:this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.name+">>: "+e,t?t:this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}();return e}();!function(){Macro.add("capture",{skipArgs:!0,tags:null,handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=new RegExp("("+Patterns.variable+")","g"),r=void 0;null!==(r=t.exec(this.args.raw));){var n=r[1],a=n.slice(1),i="$"===n[0]?State.variables:State.temporary;i.hasOwnProperty(a)&&(e[a]=i[a]),this.addShadow(n)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),n="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?n[r]=e[r]:delete n[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],n=t[2];r.hasOwnProperty(n)&&delete r[n]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0;null!==(r=t.exec(this.args.full));){var n=r[1];e[n]=State.variables[n]}return storage.set("remember",e)?void(Config.debug&&this.debugView.modes({hidden:!0})):this.error("unknown error, cannot remember: "+this.args.raw)},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0,n=!1;null!==(r=t.exec(this.args.full));){var a=r[1];State.variables.hasOwnProperty(a)&&delete State.variables[a],e&&e.hasOwnProperty(a)&&(n=!0,delete e[a])}return n&&!storage.set("remember",e)?this.error("unknown error, cannot update remember store"):void(Config.debug&&this.debugView.modes({hidden:!0}))}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e),this.source+this.payload[0].contents+"<</"+this.name+">>")}e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("include",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=toStringOrDefault(Scripting.evalJavaScript(this.args.full),null);null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")",this.source+this.payload[0].contents+"<</"+this.name+">>")}}}),Macro.add("display","include"),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],handler:function(){var e=0;try{for(var t=Scripting.evalJavaScript,r=this.payload.length,n=!1;e<r;++e){switch(this.payload[e].name){case"else":if(e+1!==r)return this.error("<<else>> must be the final clause");if(this.payload[e].args.raw.length>0)return/^\s*if\b/i.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&/[^!=&^|<>*\/%+-]=[^=]/.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||t(this.payload[e].args.full)){n=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<r;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!n,invalid:!n})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===("undefined"==typeof t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArg0:!0,tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length,t=void 0;if(1===e)return this.error("no cases specified");try{t=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}var r=this.debugView,n=1,a=!1;for(Config.debug&&r.modes({nonvoid:!1,hidden:!0});n<e;++n){switch(this.payload[n].name){case"default":if(n+1!==e)return this.error("<<default>> must be the final case");if(this.payload[n].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[n].args.raw);break;default:if(0===this.payload[n].args.length)return this.error("no value(s) specified for <<"+this.payload[n].name+">> (#"+n+")")}if(Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1}),"default"===this.payload[n].name||this.payload[n].args.some(function(e){return e===t})){a=!0,new Wikifier(this.output,this.payload[n].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++n;n<e;++n)this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0,invalid:!0});r.modes({nonvoid:!1,hidden:!0,invalid:!a}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!a})}}}),Macro.add("for",{skipArgs:!0,tags:null,handler:function(){var e=Scripting.evalJavaScript,t=this.payload[0].contents.replace(/\n$/,""),r=void 0,n=this.args.full.trim(),a=void 0,i=!0,o=Config.macros.maxLoopIterations;if(0===n.length)n=!0;else if(n.indexOf(";")!==-1){var s=n.match(/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/);if(null===s)return this.error("invalid 3-part syntax, format: init ; condition ; post");r=s[1],n=s[2],a=s[3]}if("string"==typeof n){if(/^\S+\s+in\s+\S+/i.test(n))return this.error("invalid syntax, for…in is not supported");if(/^\S+\s+of\s+\S+/i.test(n))return this.error("invalid syntax, for…of is not supported")}Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,r)try{e(r)}catch(e){return this.error("bad init expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}for(;e(n);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?t.replace(/^\n/,""):t),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(a)try{e(a)}catch(e){return this.error("bad post expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){return this.contextHas(function(e){return"for"===e.name})?(TempState.break="continue"===this.name?1:2,void(Config.debug&&this.debugView.modes({hidden:!0}))):this.error("must only be used in conjunction with its parent macro <<for>>")}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var n=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(r=this.args[0].link),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=this.args[2],i=document.createElement("input");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.checked?a:n)}).appendTo(this.output),this.args.length>3&&"checked"===this.args[3]?(i.checked=!0,Wikifier.setValue(t,a)):Wikifier.setValue(t,n)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),n=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var a=document.createDocumentFragment();new Wikifier(a,e.payload[0].contents),r.append(a)}n&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),n&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add("radiobutton",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=document.createElement("input");TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(a).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change",function(){this.checked&&Wikifier.setValue(t,n)}).appendTo(this.output),this.args.length>2&&"checked"===this.args[2]&&(a.checked=!0,Wikifier.setValue(t,n))}}),Macro.add("textarea",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),n=this.args[1],a="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.value)}).appendTo(this.output),Wikifier.setValue(t,n),i.textContent=n,a&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("textbox",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),n=this.args[1],a=document.createElement("input"),i=!1,o=void 0;this.args.length>3?(o=this.args[2],i="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?i=!0:o=this.args[2]),jQuery(a).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"text",tabindex:0}).addClass("macro-"+this.name).on("change",function(){Wikifier.setValue(t,this.value)}).on("keypress",function(e){13===e.which&&(e.preventDefault(),Wikifier.setValue(t,this.value),null!=o&&Engine.play(o))}).appendTo(this.output),Wikifier.setValue(t,n),a.value=n,i&&(a.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+a.id]=function(e){delete postdisplay[e],setTimeout(function(){return a.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){for(var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output),t=0;t<this.args.length;++t){var r=void 0,n=void 0,a=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&a.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&a.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&a.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(n=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):n=r=this.args[t],State.variables.hasOwnProperty("#actions")&&State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables.hasOwnProperty("#actions")||(State.variables["#actions"]={}),State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(a||document.createTextNode(n))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,n=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var a=State.length-2;a>=0;--a)if(State.history[a].title!==State.passage){e=a,t=State.history[a].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(e===-1)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||e!==-1?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(n||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,n=void 0,a=void 0;return 1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),t=this.args[0].link,a=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,a=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")&&State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e]?void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(n||document.createTextNode(r)).appendTo(this.output):void jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables.hasOwnProperty("#choice")||(State.variables["#choice"]={}),State.variables["#choice"][e]=!0,"function"==typeof a&&a()})).addClass("macro-"+this.name).append(n||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void(this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass())}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void jQuery(this.output).append(e.html())}}),Macro.add(["append","prepend","replace"],{tags:null,handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var t=document.createDocumentFragment();switch(new Wikifier(t,this.payload[0].contents),this.name){case"replace":e.empty();case"append":e.append(t);break;case"prepend":e.prepend(t)}}else"replace"===this.name&&e.empty()}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);return 0===e.length?this.error('no elements matched the selector "'+this.args[0]+'"'):void e.remove()}}),Has.audio?(Macro.add("audio",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("actions"),this.error("no "+e.join(" or ")+" specified")}var t=Macro.get("cacheaudio").tracks,r=[":all",":looped",":muted",":paused",":playing"],n=String(this.args[0]).trim();if(!r.includes(n)&&!t.hasOwnProperty(n))return this.error('track "'+n+'" does not exist');for(var a=this.args.slice(1),i=void 0,o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=5,p=void 0,f=void 0;a.length>0;){var h=a.shift();switch(h){case"play":case"pause":case"stop":i=h;break;case"fadein":i="fade",c=1;break;case"fadeout":i="fade",c=0;break;case"fadeto":if(0===a.length)return this.error("fadeto missing required level value");if(i="fade",f=a.shift(),c=Number.parseFloat(f),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(a.length<2){var g=[];return a.length<1&&g.push("seconds"),a.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(i="fade",f=a.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);if(f=a.shift(),c=Number.parseFloat(f),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===a.length)return this.error("volume missing required level value");if(f=a.shift(),o=Number.parseFloat(f),Number.isNaN(o)||!Number.isFinite(o))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":s="mute"===h;break;case"time":if(0===a.length)return this.error("time missing required seconds value");if(f=a.shift(),u=Number.parseFloat(f),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse time: "+f);break;case"loop":case"unloop":l="loop"===h;break;case"goto":if(0===a.length)return this.error("goto missing required passage title");if(f=a.shift(),p="object"===("undefined"==typeof f?"undefined":_typeof(f))?f.link:f,!Story.has(p))return this.error('passage "'+p+'" does not exist');break;default:return this.error("unknown action: "+h)}}var m=void 0;switch(n){case":all":m=Object.keys(t);break;case":looped":m=Object.keys(t).filter(function(e){return t[e].isLooped()});break;case":muted":m=Object.keys(t).filter(function(e){return t[e].isMuted()});break;case":paused":m=Object.keys(t).filter(function(e){return t[e].isPaused()});break;case":playing":m=Object.keys(t).filter(function(e){return t[e].isPlaying()});break;default:m=[n]}try{m.forEach(function(e){var r=t[e];switch(null!=o&&(r.volume=o),null!=u&&(r.time=u),null!=s&&(r.mute=s),null!=l&&(r.loop=l),null!=p&&r.one("end",function(){return Engine.play(p)}),i){case"play":r.play();break;case"pause":r.pause();break;case"stop":r.stop();break;case"fade":r.fadeWithDuration(d,c)}}),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing audio action: "+e.message)}}}),Macro.add("cacheaudio",{tracks:{},handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("sources"),this.error("no "+e.join(" or ")+" specified")}var t=String(this.args[0]).trim(),r=/^:|\s/;if(r.test(t))return this.error('invalid track ID "'+t+'": track IDs may not start with a colon or contain whitespace');var n=/^format:\s*([\w-]+)\s*;\s*(\S.*)$/i,a=void 0;try{a=SimpleAudio.create(this.args.slice(1).map(function(e){var t=n.exec(e);return null===t?e:{format:t[1],src:t[2]}}))}catch(e){return this.error('error during track initialization for "'+t+'": '+e.message)}if(Config.debug&&!a.hasSource())return this.error('no supported audio sources found for "'+t+'"');var i=this.self.tracks;i.hasOwnProperty(t)&&i[t].destroy(),i[t]=a,Config.debug&&this.createDebugView()}}),Macro.add("createplaylist",{tags:["track"],lists:{},handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");var t=Macro.get("cacheaudio").tracks,r=String(this.args[0]).trim(),n=/^:|\s/;if(n.test(r))return this.error('invalid list ID "'+r+'": list IDs may not start with a colon or contain whitespace');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var a=SimpleAudio.createList(),i=1,o=this.payload.length;i<o;++i){if(this.payload[i].args.length<2){var s=[];return this.payload[i].args.length<1&&s.push("track ID"),this.payload[i].args.length<2&&s.push("actions"),this.error("no "+s.join(" or ")+" specified")}var u=String(this.payload[i].args[0]).trim();if(!t.hasOwnProperty(u))return this.error('track "'+u+'" does not exist');for(var l=this.payload[i].args.slice(1),c=!1,d=void 0;l.length>0;){var p=l.shift(),f=void 0;switch(p){case"copy":c=!0;break;case"rate":l.length>0&&l.shift();break;case"volume":if(0===l.length)return this.error("volume missing required level value");if(f=l.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse volume: "+f);break;default:return this.error("unknown action: "+p)}}var h=t[u];a.add({copy:c,track:h,volume:null!=d?d:h.volume}),Config.debug&&this.createDebugView(this.payload[i].name,this.payload[i].source).modes({nonvoid:!1,hidden:!0})}var g=this.self.lists;g.hasOwnProperty(r)&&g[r].destroy(),g[r]=a,null===e.from&&(e.from="createplaylist"),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var e=this.args.slice(0),t=!1,r=void 0,n=void 0;e.length>0;){var a=e.shift(),i=void 0;switch(a){case"stop":t=!0;break;case"mute":case"unmute":r="mute"===a;break;case"volume":if(0===e.length)return this.error("volume missing required level value");if(i=e.shift(),n=Number.parseFloat(i),Number.isNaN(n)||!Number.isFinite(n))return this.error("cannot parse volume: "+i);break;default:return this.error("unknown action: "+a)}}try{null!=r&&(SimpleAudio.mute=r),null!=n&&(SimpleAudio.volume=n),t&&SimpleAudio.stop(),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing master audio action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var e=this.self.from;
+if(null===e)return this.error("no playlists have been created");var t=void 0,r=void 0;if("createplaylist"===e){if(this.args.length<2){var n=[];return this.args.length<1&&n.push("list ID"),this.args.length<2&&n.push("actions"),this.error("no "+n.join(" or ")+" specified")}var a=Macro.get("createplaylist").lists,i=String(this.args[0]).trim();if(!a.hasOwnProperty(i))return this.error('playlist "'+i+'" does not exist');t=a[i],r=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");t=Macro.get("setplaylist").list,r=this.args.slice(0)}for(var o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,p=5,f=void 0;r.length>0;){var h=r.shift();switch(h){case"play":case"pause":case"stop":case"skip":o=h;break;case"fadein":o="fade",d=1;break;case"fadeout":o="fade",d=0;break;case"fadeto":if(0===r.length)return this.error("fadeto missing required level value");if(o="fade",f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(r.length<2){var g=[];return r.length<1&&g.push("seconds"),r.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",f=r.shift(),p=Number.parseFloat(f),Number.isNaN(p)||!Number.isFinite(p))return this.error("cannot parse fadeoverto: "+f);if(f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===r.length)return this.error("volume missing required level value");if(f=r.shift(),s=Number.parseFloat(f),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":u="mute"===h;break;case"loop":case"unloop":l="loop"===h;break;case"shuffle":case"unshuffle":c="shuffle"===h;break;default:return this.error("unknown action: "+h)}}try{switch(null!=s&&(t.volume=s),null!=u&&(t.mute=u),null!=l&&(t.loop=l),null!=c&&(t.shuffle=c),o){case"play":t.play();break;case"pause":t.pause();break;case"stop":t.stop();break;case"skip":t.skip();break;case"fade":t.fadeWithDuration(p,d)}Config.debug&&this.createDebugView()}catch(e){return this.error("error playing audio: "+e.message)}}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("createplaylist").lists,t=String(this.args[0]).trim();return e.hasOwnProperty(t)?(e[t].destroy(),delete e[t],void(Config.debug&&this.createDebugView())):this.error('playlist "'+t+'" does not exist')}}),Macro.add("waitforaudio",{skipArgs:!0,queue:[],handler:function(){function e(){if(0===t.length)return LoadScreen.unlock(r);var n=t.shift();return n.hasData()?e():void n.one("canplay.waitforaudio error.waitforaudio",function(){jQuery(this).off(".waitforaudio"),e()}).load()}var t=this.self.queue,r=void 0;t.length>0||(this.self.fillQueue(t),t.length>0&&(r=LoadScreen.lock(),e()))},fillQueue:function(e){var t=Macro.get("cacheaudio").tracks;Object.keys(t).forEach(function(r){return e.push(t[r])});var r=Macro.get("createplaylist").lists;if(Object.keys(r).map(function(e){return r[e].tracks}).flatten().filter(function(e){return e.copy}).forEach(function(t){return e.push(t.track)}),Macro.has("setplaylist")){var n=Macro.get("setplaylist").list;null!==n&&n.tracks.forEach(function(t){return e.push(t.track)})}}}),Macro.add("setplaylist",{list:null,handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");var t=this.self,r=Macro.get("cacheaudio").tracks;null!==t.list&&t.list.destroy(),t.list=SimpleAudio.createList();for(var n=0;n<this.args.length;++n){var a=this.args[n];if(!r.hasOwnProperty(a))return this.error('track "'+a+'" does not exist');t.list.add(r[a])}null===e.from&&(e.from="setplaylist"),Config.debug&&this.createDebugView()}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){var e=Macro.get("cacheaudio").tracks;Object.keys(e).forEach(function(t){return e[t].stop()}),Config.debug&&this.createDebugView()}})):Macro.add(["audio","cacheaudio","createplaylist","masteraudio","playlist","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){}}),Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;return e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],Story.has(e)?void setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay):this.error('passage "'+e+'" does not exist')}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>");var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var n=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=a;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),n&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),n&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.turns,n=this.timers,a=null,i=t.shift(),o=function o(){if(n.delete(a),r===State.turns){var s=i;null!=(i=t.shift())&&(a=setTimeout(o,i.delay),n.add(a)),e.call(this,s)}};a=setTimeout(o,i.delay),n.add(a),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],n.forEach(function(e){return clearTimeout(e)}),n.clear()})}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var a=n;r&&(a=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(a)),a.append(t),r&&setTimeout(function(){return a.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var n=State.turns,a=this.timers,i=null;i=setInterval(function(){if(n!==State.turns)return clearInterval(i),void a.delete(i);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=i,e.call(r)}finally{"undefined"!=typeof t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),a.add(i),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearInterval(e)}),a.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){var t=this,r=void 0;try{var n=function(){State.variables.hasOwnProperty("args")&&(r=State.variables.args),State.variables.args=[].concat(_toConsumableArray(t.args)),State.variables.args.raw=t.args.raw,State.variables.args.full=t.args.full,t.addShadow("$args");var n=document.createDocumentFragment(),a=[];return new Wikifier(n,e),Array.from(n.querySelectorAll(".error")).forEach(function(e){a.push(e.textContent)}),0!==a.length?{v:t.error("error"+(a.length>1?"s":"")+" within widget contents ("+a.join("; ")+")")}:void t.output.appendChild(n)}();if("object"===("undefined"==typeof n?"undefined":_typeof(n)))return n.v}catch(e){return this.error("cannot execute widget: "+e.message)}finally{"undefined"!=typeof r?State.variables.args=r:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(){m=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var n=t.offsetWidth;r.style.overflow="auto";var a=t.offsetWidth;n===a&&(a=r.clientWidth),document.body.removeChild(r),e=n-a}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1>'+('<button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button>')+'</div><div id="ui-dialog-body"></div></div>');d=jQuery(e.find("#ui-overlay").get(0)),p=jQuery(e.find("#ui-dialog").get(0)),f=jQuery(e.find("#ui-dialog-title").get(0)),h=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("#store-area")}function t(e){return p.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return h.hasClass(e)}))}function r(e,t){return h.empty().removeClass(),null!=t&&h.addClass(t),f.empty().append((null!=e?String(e):"")||" "),h.get(0)}function n(){return h.get(0)}function a(){var e;return(e=h).append.apply(e,arguments),Dialog}function i(){var e;return(e=h).wiki.apply(e,arguments),Dialog}function o(e,t,r,n,a){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),s(t,a),"function"==typeof n&&n(e)})}function s(e,r){var n=jQuery.extend({top:50},e),a=n.top;t()||(g=safeActiveElement()),jQuery(document.documentElement).addClass("ui-dialog-open"),d.addClass("open"),null!==h[0].querySelector("img")&&h.imagesLoaded().always(function(){return l({data:{top:a}})}),jQuery("body>:not(script,#store-area,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0);var i=c(a);return p.css(i).addClass("open").focus(),jQuery(window).on("resize.ui-resize",null,{top:a},jQuery.throttle(40,l)),jQuery(document).on("click.ui-close",".ui-close",{closeFn:r},u).on("keypress.ui-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),setTimeout(function(){return jQuery.event.trigger("tw:dialogopened")},Engine.minDomActionDelay),Dialog}function u(e){return jQuery(document).off(".ui-close"),jQuery(window).off("resize.ui-resize"),p.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.empty(),h.empty().removeClass(),d.removeClass("open"),jQuery(document.documentElement).removeClass("ui-dialog-open"),null!==g&&(jQuery(g).focus(),g=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),setTimeout(function(){return jQuery.event.trigger("tw:dialogclosed")},Engine.minDomActionDelay),Dialog}function l(e){var t=e&&e.data&&"undefined"!=typeof e.data.top?e.data.top:50;"block"===p.css("display")&&(p.css({display:"none"}),p.css(jQuery.extend({display:""},c(t))))}function c(e){var t=null!=e?e:50,r=jQuery(window),n={left:"",right:"",top:"",bottom:""};p.css(n);var a=r.width()-p.outerWidth(!0)-1,i=r.height()-p.outerHeight(!0)-1;return a<=32+m&&(i-=m),i<=32+m&&(a-=m),a<=32?n.left=n.right=16:n.left=n.right=~~(a/2),i<=32?n.top=n.bottom=16:i/2>t?n.top=t:n.top=n.bottom=~~(i/2),Object.keys(n).forEach(function(e){""!==n[e]&&(n[e]+="px")}),n}var d=null,p=null,f=null,h=null,g=null,m=0;return Object.freeze(Object.defineProperties({},{init:{value:e},isOpen:{value:t},setup:{value:r},body:{value:n},append:{value:a},wiki:{value:i},addClickHandler:{value:o},open:{value:s},close:{value:u},resize:{value:function(){return l()}}}))}(),Engine=function(){function e(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),h=t.output}}catch(e){Alert.error("StoryInit",e.message)}if(Config.history.maxStates=Math.max(0,Config.history.maxStates),Number.isSafeInteger(Config.history.maxStates)||(Config.history.maxStates=100),1===Config.history.maxStates&&(Config.history.controls=!1),Config.debug&&DebugView.init(),null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(State.restore())u();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildDialogAutoload(),UI.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&l(Config.passages.start)}}function t(){LoadScreen.show(),window.scroll(0,0),State.reset(),window.location.reload()}function r(){return p}function n(){return f}function a(e){var t=State.goTo(e);return t&&u(),t}function i(e){var t=State.go(e);return t&&u(),t}function o(){return i(-1)}function s(){return i(1)}function u(){return l(State.passage,!0)}function l(e,t){var r=e;p="playing",TempState={},State.clearTemporary();var n=void 0,a=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(this,e)},o),t||State.create(o.title),document.body.className&&(document.body.className=""),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(this,e)},o),Story.has("PassageReady"))try{n=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){Alert.error("PassageReady",e.message)}p="rendering";var s=jQuery(o.render()),u=document.getElementById("passages");if(u.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&""!==Config.transitionEndEventName?[].concat(_toConsumableArray(u.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Config.transitionEndEventName,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(d,Config.passages.transitionOut))}else t.remove()}):jQuery(u).empty()),s.addClass("passage-in").appendTo(u),setTimeout(function(){return s.removeClass("passage-in")},d),document.title=Config.passages.displayTitles&&o.title!==Config.passages.start?o.title+" | "+Story.title:Story.title,window.scroll(0,0),p="playing",Story.has("PassageDone"))try{a=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){Alert.error("PassageDone",e.message)}if(Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(this,e)},o),Config.ui.updateStoryElements&&UI.setStoryElements(),Config.debug){var l=void 0;null!=n&&(l=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),l.modes({hidden:!0}),l.append(n),s.prepend(l.output)),null!=a&&(l=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),l.modes({hidden:!0}),l.append(a),s.append(l.output)),1===State.turns&&null!=h&&s.prepend(h)}switch(f=Date.now(),UI.hideOutlines(),jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"string":o.tags.includes(Config.saves.autosave)&&Save.autosave.save();break;case"object":Array.isArray(Config.saves.autosave)&&o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save()}return p="idle",s[0]}function c(e,t,r){var n=!1;switch(r){case undefined:break;case"replace":case"back":n=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}l(e,n)}var d=40,p="idle",f=null,h=null;return Object.freeze(Object.defineProperties({},{minDomActionDelay:{value:d},start:{value:e},restart:{value:t},state:{get:r},lastPlay:{get:n},goTo:{value:a},go:{value:i},backward:{value:o},forward:{value:s},show:{value:u},play:{value:l},display:{value:c}}))}(),Passage=function(){var e=void 0,t=void 0;e=/^(?:debug|nobr|passage|script|stylesheet|widget|twine\..*)$/i,!function(){var e=/(?:\\n|\\t|\\s|\\|\r)/g,r=new RegExp(e.source),n=Object.freeze({"\\n":"\n","\\t":"\t","\\s":"\\","\\":"\\","\r":""});t=function(t){if(null==t)return"";var a=String(t);return a&&r.test(a)?a.replace(e,function(e){return n[e]}):a}}();var r=function(){function r(t,n){var a=this;_classCallCheck(this,r),Object.defineProperties(this,{title:{value:Util.unescape(t)},element:{value:n||null},tags:{value:Object.freeze(n&&n.hasAttribute("tags")?n.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return a.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(r,[{key:"description",value:function(){var e=Config.passages.descriptions;if(null!=e)switch("undefined"==typeof e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e instanceof Map&&e.has(this.title))return e.get(this.title);if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var t=e.call(this);if(t)return t;break;default:throw new TypeError("Config.passages.descriptions must be a boolean, object, or function")}return null===this._excerpt&&(this._excerpt=r.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){var e=this.text;return this.tags.includes("nobr")&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),this.tags.includes("Twine.image")&&(e="[img["+e+"]]"),e}},{key:"render",value:function(){var e=this,t=document.createElement("div");return jQuery(t).attr({id:this.domId,"data-passage":this.title,"data-tags":this.tags.join(" ")}).addClass("passage "+this.className),jQuery(document.body).addClass(this.className),Object.keys(prerender).forEach(function(r){"function"==typeof prerender[r]&&prerender[r].call(e,t,r)}),Story.has("PassageHeader")&&new Wikifier(t,Story.get("PassageHeader").processText()),new Wikifier(t,this.processText()),Story.has("PassageFooter")&&new Wikifier(t,Story.get("PassageFooter").processText()),Object.keys(postrender).forEach(function(r){"function"==typeof postrender[r]&&postrender[r].call(e,t,r)}),this._excerpt=r.getExcerptFromNode(t),t}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escape(this.title);return'<span class="error" title="'+e+'">'+L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e})+"</span>"}return t(this.element.textContent)}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var n=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(n)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),n=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*)(?:|[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return n?n[1]+"…":"…"}}]),r}();return r}(),Save=function(){function e(){if("cookie"===storage.name)return n(),Config.saves.autosave=undefined,Config.saves.slots=0,!1;Config.saves.slots=Math.max(0,Config.saves.slots),Number.isSafeInteger(Config.saves.slots)||(Config.saves.slots=8);var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&S(e.slots,Config.saves.slots-e.slots.length),t=!0),j(e.autosave)&&(t=!0);for(var a=0;a<e.slots.length;++a)j(e.slots[a])&&(t=!0);return E(e)&&(storage.delete("saves"),t=!1),t&&x(e),T=e.slots.length-1,!0}function t(){return{autosave:null,slots:S([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function n(){return storage.delete("saves"),!0}function a(){return i()||d()}function i(){return"cookie"!==storage.name&&"undefined"!=typeof Config.saves.autosave}function o(){var e=r();return null!==e.autosave}function s(){var e=r();return e.autosave}function u(){var e=r();return null!==e.autosave&&O(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var n=r(),a={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(a.metadata=t),n.autosave=C(a),x(n)}function c(){var e=r();return e.autosave=null,x(e)}function d(){return"cookie"!==storage.name&&T!==-1}function p(){return T+1}function f(){if(!d())return 0;for(var e=r(),t=0,n=0,a=e.slots.length;n<a;++n)null!==e.slots[n]&&++t;return t}function h(){return 0===f()}function g(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>T)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&O(t.slots[e])}function y(e,t,n){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>T)return!1;var a=r();if(e>=a.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=n&&(i.metadata=n),a.slots[e]=C(i),x(a)}function b(e){if(e<0||e>T)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,x(t))}function w(e,t){function r(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),n=e.getHours(),a=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),n<10&&(n="0"+n),a<10&&(a="0"+a),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+n+a+i}if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void UI.alert(L10n.get("savesDisallowed"));var n=null==e?Story.domId:Util.slugify(e),a=n+"-"+r()+".save",i=null==t?{}:{metadata:t},o=LZString.compressToBase64(JSON.stringify(C(i)));saveAs(new Blob([o],{type:"text/plain;charset=UTF-8"}),a)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var n=void 0;try{n=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}O(n)}}),r.readAsText(t)}function S(e,t){for(var r=0;r<t;++r)e.push(null);return e}function E(e){for(var t=e.slots,r=!0,n=0,a=t.length;n<a;++n)if(null!==t[n]){r=!1;break}return null===e.autosave&&r}function x(e){return E(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function j(e){if(null===e)return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function C(e){if(null!=e&&"object"!==("undefined"==typeof e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var t=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(t.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(t),t.state.delta=State.deltaEncode(t.state.history),delete t.state.history,t}function O(e){try{if(j(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var T=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:n},ok:{value:a},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:p},isEmpty:{value:h},count:{value:f},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}n(),g.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&g.filter(function(e){return e.type!==m.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function n(){var e=t(),r=storage.get("settings")||t();g.filter(function(e){return e.type!==m.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function a(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)a(),n();else{if(null==e||!p(e))throw new Error('nonexistent setting "'+e+'"');var t=f(e);t.type!==m.Header&&(settings[e]=t.default)}return r()}function o(e,t){g.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var n=[];throw arguments.length<1&&n.push("type"),arguments.length<2&&n.push("name"),arguments.length<3&&n.push("definition"),new Error("missing parameters, no "+n.join(" or ")+" specified")}if("object"!==("undefined"==typeof r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(p(t))throw new Error('cannot clobber existing setting "'+t+'"');var a={type:e,name:t,label:null==r.label?"":String(r.label).trim()};switch(e){case m.Header:break;case m.Toggle:a.default=!!r.default;break;case m.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(a.list=Object.freeze(r.list),null==r.default)a.default=r.list[0];else{var i=r.list.indexOf(r.default);if(i===-1)throw new Error("list does not contain default");a.default=r.list[i]}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(a.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(a.onChange=Object.freeze(r.onChange)),g.push(Object.freeze(a))}function u(e,t){s(m.Header,e,{label:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.List].concat(t))}function d(){return 0===g.length}function p(e){return g.some(function(t){return t.name===e})}function f(e){return g.find(function(t){return t.name===e})}function h(e){p(e)&&delete settings[e];for(var t=0;t<g.length;++t)if(g[t].name===e){g.splice(t,1),h(e);break}}var g=[],m=Object.freeze({Header:0,Toggle:1,List:2});return Object.freeze(Object.defineProperties({},{Types:{value:m},init:{value:e},create:{value:t},save:{value:r},load:{value:n},clear:{value:a},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},isEmpty:{value:d},has:{value:p},get:{value:f},delete:{value:h}}))}(),State=function(){function e(){session.delete("state"),L=[],Q=c(),I=-1,R=[],F=null===F?null:new PRNGWrapper(F.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(n(e),!0)}return!1}function r(e){var t={index:I};return e?t.history=clone(L):t.delta=A(L),R.length>0&&(t.expired=[].concat(_toConsumableArray(R))),null!==F&&(t.seed=F.seed),t}function n(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");
+if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==F&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===F&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");L=t?clone(e.history):_(e.delta),I=e.index,R=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(F.seed=e.seed),g(I)}function a(){return r(!0)}function i(e){return n(e,!0)}function o(){return R}function s(){return R.length+v()}function u(){return R.concat(L.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!R.includes(e)||!!L.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return Q}function p(){return I}function f(){return Q.title}function h(){return Q.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch("undefined"==typeof e?"undefined":_typeof(e)){case"object":Q=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);Q=clone(L[e]);break;default:throw new TypeError('moment activation attempted with a "'+("undefined"==typeof e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==F&&(F=PRNGWrapper.unmarshal({seed:F.seed,pull:Q.pull})),session.set("state",r()),jQuery.event.trigger("tw:historyupdate"),Q}function m(){return L}function v(){return I+1}function y(){return L.length}function b(){return 0===L.length}function w(){return L.length>0?L[I]:null}function k(){return L.length>0?L[L.length-1]:null}function S(){return L.length>0?L[0]:null}function E(e){return b()||e<0||e>I?null:L[e]}function x(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:L[v()-t]}function j(e){if(b()||null==e||""===e)return!1;for(var t=I;t>=0;--t)if(L[t].title===e)return!0;return!1}function C(e){if(v()<y()&&L.splice(v(),y()-v()),L.push(c(e,Q.variables)),F&&(k().pull=F.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)R.push(L.shift().title);return I=y()-1,g(I),v()}function O(e){return!(null==e||e<0||e>=y()||e===I)&&(I=e,g(I),!0)}function T(e){return null!=e&&0!==e&&O(I+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,n=e.length;r<n;++r)t.push(Util.diff(e[r-1],e[r]));return t}function _(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,n=e.length;r<n;++r)t.push(Util.patch(t[r-1],e[r]));return t}function P(e,t){if(!b()){var r=void 0;throw r="a script-tagged passage",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}F=new PRNGWrapper(e,t),Q.pull=F.pull}function D(){return F?F.random():Math.random()}function M(){V={},TempVariables=V}function N(){return V}var L=[],Q=c(),I=-1,R=[],F=null,V={};return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:a},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:p},passage:{get:f},variables:{get:h},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:x},has:{value:j},create:{value:C},goTo:{value:O},go:{value:T},deltaEncode:{value:A},deltaDecode:{value:_},initPRNG:{value:P},random:{value:D},clearTemporary:{value:M},temporary:{get:N},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Story=function(){function e(){function e(e){if(e.tags.includesAny(n))throw new Error('starting passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return n.includes(e)}).sort().join('", "')+'"')}function t(e){if(a.includes(e.title)&&e.tags.includesAny(n))throw new Error('special passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return n.includes(e)}).sort().join('", "')+'"')}var n=["widget"],a=["PassageDone","PassageFooter","PassageHeader","PassageReady","StoryAuthor","StoryBanner","StoryCaption","StoryInit","StoryMenu","StoryShare","StorySubtitle"];!function(){var i=function(e){var t=[].concat(n),r=[];if(e.tags.forEach(function(e){t.includes(e)&&r.push.apply(r,_toConsumableArray(t.delete(e)))}),r.length>1)throw new Error('code passage "'+e.title+'" contains multiple code tags; invalid: "'+r.sort().join('", "')+'"')};if(n.unshift("script","stylesheet"),a.push("StoryTitle"),Config.passages.start=function(){var e="START_AT";return""!==e?(Config.debug=!0,e):"Start"}(),jQuery("#store-area").children(':not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var r=jQuery(this),n=new Passage(r.attr("tiddler"),this);n.title===Config.passages.start?(e(n),c[n.title]=n):n.tags.includes("stylesheet")?(i(n),d.push(n)):n.tags.includes("script")?(i(n),p.push(n)):n.tags.includes("widget")?(i(n),f.push(n)):(t(n),c[n.title]=n)}),!c.hasOwnProperty("StoryTitle"))throw new Error('cannot find the "StoryTitle" special passage');var o=document.createDocumentFragment();new Wikifier(o,c.StoryTitle.processText().trim()),r(o.textContent.trim()),Config.saves.id=Story.domId}()}function t(){!function(){var e=LoadScreen.lock(),t=document.createElement("style");jQuery(t).attr({id:"style-story",type:"text/css"}).one("load",function(){return LoadScreen.unlock(e)}),new StyleWrapper(t).add(d.map(function(e){return e.text.trim()}).join("\n")),document.head.appendChild(t)}();for(var e=0;e<p.length;++e)try{Scripting.evalJavaScript(p[e].text)}catch(t){Alert.error(p[e].title,"object"===("undefined"==typeof t?"undefined":_typeof(t))?t.message:t)}for(var t=0;t<f.length;++t)try{Wikifier.wikifyEval(f[t].processText())}catch(e){Alert.error(f[t].title,"object"===("undefined"==typeof e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e||""===e)throw new Error("story title cannot be null or empty");document.title=h=Util.unescape(e),m=Util.slugify(h)}function n(){return h}function a(){return m}function i(){return g}function o(e){var t="undefined"==typeof e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r);case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function s(e){var t="undefined"==typeof e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r)?c[r]:new Passage(r||"(unknown)");case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.get title parameter cannot be "+t)}function u(e,t){for(var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",n=Object.keys(c),a=[],i=0;i<n.length;++i){var o=c[n[i]];if(o.hasOwnProperty(e))switch(_typeof(o[e])){case"undefined":break;case"object":for(var s=0,u=o[e].length;s<u;++s)if(o[e][s]==t){a.push(o);break}break;default:o[e]==t&&a.push(o)}}return a.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),a}function l(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new Error("Story.lookupWith filter parameter must be a function");for(var r=Object.keys(c),n=[],a=0;a<r.length;++a){var i=c[r[a]];e(i)&&n.push(i)}return n.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),n}var c={},d=[],p=[],f=[],h="",g="",m="";return Object.freeze(Object.defineProperties({},{passages:{value:c},styles:{value:d},scripts:{value:p},widgets:{value:f},load:{value:e},init:{value:t},title:{get:n},domId:{get:a},ifId:{get:i},has:{value:o},get:{value:s},lookup:{value:u},lookupWith:{value:l}}))}(),UI=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),w=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-outline-patch",type:"text/css"}).appendTo(document.head).get(0)}()),function(){var e=jQuery(document.createDocumentFragment()),t=L10n.get("uiBarToggle"),r=L10n.get("uiBarBackward"),n=L10n.get("uiBarJumpto"),a=L10n.get("uiBarForward");e.append('<div id="ui-bar"><div id="ui-bar-tray">'+('<button id="ui-bar-toggle" tabindex="0" title="'+t+'" aria-label="'+t+'"></button>')+'<div id="ui-bar-history">'+('<button id="history-backward" tabindex="0" title="'+r+'" aria-label="'+r+'">î ¡</button>')+('<button id="history-jumpto" tabindex="0" title="'+n+'" aria-label="'+n+'">î ¹</button>')+('<button id="history-forward" tabindex="0" title="'+a+'" aria-label="'+a+'">î ¢</button>')+'</div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core">'+('<li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+"</a></li>")+('<li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+"</a></li>")+('<li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+"</a></li>")+('<li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li>")+'</ul></nav></div></div><div id="story" role="main"><div id="passages"></div></div>').insertBefore("#store-area")}(),jQuery(document).on("tw:historyupdate",function(e,t){return function(){e.prop("disabled",State.length<2),t.prop("disabled",State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward"))).on("mousedown.outline-handler keydown.outline-handler",function(e){switch(e.type){case"mousedown":i();break;case"keydown":o()}})}function t(){var e=jQuery("#ui-bar");("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&!function(){var t=jQuery(e).add("#story");t.addClass("no-transition"),e.addClass("stowed"),setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}(),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return e.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").prop("disabled",State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").prop("disabled",State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),setPageElement("story-title","StoryTitle",Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||a(),Dialog.addClickHandler("#menu-item-saves a",null,v).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():Dialog.addClickHandler("#menu-item-settings a",null,y).text(L10n.get("settingsTitle")),Dialog.addClickHandler("#menu-item-restart a",null,m).text(L10n.get("restartTitle")),Story.has("StoryShare")?Dialog.addClickHandler("#menu-item-share a",null,b).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove(),jQuery(document.documentElement).focus()}function r(){jQuery("#ui-bar").addClass("stow")}function n(){jQuery("#ui-bar").removeClass("stow")}function a(){setPageElement("story-banner","StoryBanner"),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")&&s("StoryMenu",e))}function i(){w.set("*:focus{outline:none}")}function o(){w.clear()}function s(e,t){var r=t,n=Config.debug;Config.debug=!1;try{null==r&&(r=document.createElement("ul"));var a=document.createDocumentFragment();if(new Wikifier(a,Story.get(e).processText().trim()),a.hasChildNodes())for(var i=null;a.hasChildNodes();){var o=a.firstChild;o.nodeType!==Node.ELEMENT_NODE||"A"!==o.nodeName.toUpperCase()?(a.removeChild(o),null!==i&&(i=null)):(null===i&&(i=document.createElement("li"),r.appendChild(i)),i.appendChild(o))}}finally{Config.debug=n}return r}function u(e){jQuery(Dialog.setup("Alert","alert")).append("<p>"+e+'</p><ul class="buttons">'+('<li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li>")+"</ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];Dialog.open.apply(Dialog,r)}function l(){g(),Dialog.open.apply(Dialog,arguments)}function c(){m(),Dialog.open.apply(Dialog,arguments)}function d(){v(),Dialog.open.apply(Dialog,arguments)}function p(){y(),Dialog.open.apply(Dialog,arguments)}function f(){b(),Dialog.open.apply(Dialog,arguments)}function h(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons">'+('<li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+"</button></li>")+('<li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li>")+"</ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one("tw:dialogclosed",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function g(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var n=Story.get(State.history[r].title);n&&n.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one("tw:dialogclosed",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+n.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function m(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons">'+('<li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+"</button></li>")+('<li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li>")+"</ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one("tw:dialogclosed",function(){return Engine.restart()}),Dialog.close()}),!0}function v(){function e(e,t,r,n){var a=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&a.addClass(t),n?a.ariaClick(n):a.prop("disabled",!0),jQuery(document.createElement("li")).append(a)}function t(){function e(e,t,r,n,a){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+n).addClass(e).html(r);return t&&i.addClass(t),a?"auto"===n?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return a()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(n+1)},function(){return a(n)}):i.prop("disabled",!0),i}var t=Save.get(),r=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var n=jQuery(document.createElement("td")),a=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(n),t.autosave?(a.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one("tw:dialogclosed",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(i),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?L10n.get("savesSavedOn")+" "+new Date(t.autosave.date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(i),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),v(),Dialog.resize()}))):(a.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(i),i.addClass("empty"),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(n).append(a).append(i).append(o).appendTo(r)}for(var s=0,u=t.slots.length;s<u;++s){var l=jQuery(document.createElement("td")),c=jQuery(document.createElement("td")),d=jQuery(document.createElement("td")),p=jQuery(document.createElement("td"));l.append(document.createTextNode(s+1)),t.slots[s]?(c.append(e("load","ui-close",L10n.get("savesLabelLoad"),s,function(e){jQuery(document).one("tw:dialogclosed",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[s].title).appendTo(d),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[s].date?L10n.get("savesSavedOn")+" "+new Date(t.slots[s].date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(d),p.append(e("delete",null,L10n.get("savesLabelDelete"),s,function(e){Save.slots.delete(e),v(),Dialog.resize()}))):(c.append(e("save","ui-close",L10n.get("savesLabelSave"),s,Save.slots.save)),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(d),d.addClass("empty"),p.append(e("delete",null,L10n.get("savesLabelDelete"),s))),jQuery(document.createElement("tr")).append(l).append(c).append(d).append(p).appendTo(r)}return jQuery(document.createElement("table")).attr("id","saves-list").append(r)}var r=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),n=Save.ok();if(n&&r.append(t()),n||Has.fileAPI){var a=jQuery(document.createElement("ul")).addClass("buttons").appendTo(r);return Has.fileAPI&&(a.append(e("export","ui-close",L10n.get("savesLabelExport"),function(){return Save.export()})),a.append(e("import",null,L10n.get("savesLabelImport"),function(){return r.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one("tw:dialogclosed",function(){return Save.import(e)}),Dialog.close()}).appendTo(r)),n&&a.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),v(),Dialog.resize()}:null)),!0}return u(L10n.get("savesIncapable")),!1}function y(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,n=Util.slugify(r),a=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2")),o=jQuery(document.createElement("p"));return a.attr("id","header-body-"+n).append(i).append(o).appendTo(e),i.attr("id","header-heading-"+n).wiki(r),void o.attr("id","header-label-"+n).wiki(t.label)}var s=t.name,u=Util.slugify(s),l=jQuery(document.createElement("div")),c=jQuery(document.createElement("label")),d=jQuery(document.createElement("div")),p=void 0;switch(l.attr("id","setting-body-"+u).append(c).append(d).appendTo(e),c.attr({id:"setting-label-"+u,for:"setting-control-"+u}).wiki(t.label),null==settings[s]&&(settings[s]=t.default),t.type){case Setting.Types.Toggle:p=jQuery(document.createElement("button")),settings[s]?p.addClass("enabled").text(L10n.get("settingsOn")):p.text(L10n.get("settingsOff")),p.ariaClick(function(){settings[s]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[s]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[s]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default})});break;case Setting.Types.List:p=jQuery(document.createElement("select"));for(var f=0,h=t.list.length;f<h;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(p);p.val(t.list.indexOf(settings[s])).attr("tabindex",0).on("change",function(){settings[s]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,list:t.list})})}p.attr("id","setting-control-"+u).appendTo(d)}),e.append('<ul class="buttons">'+('<li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+"</button></li>")+('<li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li>")+"</ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one("tw:dialogclosed",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function b(){return jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(s("StoryShare")),!0}var w=null;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},stow:{value:r},unstow:{value:n},setStoryElements:{value:a},hideOutlines:{value:i},showOutlines:{value:o},assembleLinkList:{value:s},alert:{value:u},jumpto:{value:l},restart:{value:c},saves:{value:d},settings:{value:p},share:{value:f},buildAutoload:{value:h},buildJumpto:{value:g},buildRestart:{value:m},buildSaves:{value:v},buildSettings:{value:y},buildShare:{value:b},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:h},buildDialogJumpto:{value:g},buildDialogRestart:{value:m},buildDialogSaves:{value:v},buildDialogSettings:{value:y},buildDialogShare:{value:b},buildLinkListFromPassage:{value:s}}))}(),LoadScreen=function(){function e(){jQuery(document).on("readystatechange.SugarCube",function(){if(!(o.size>0)){var e=jQuery(document.documentElement);"complete"===document.readyState?e.hasClass("init-loading")&&(Config.loadDelay>0?setTimeout(function(){return e.removeClass("init-loading")},Math.max(Engine.minDomActionDelay,Config.loadDelay)):e.removeClass("init-loading")):e.addClass("init-loading")}})}function t(){jQuery(document).off("readystatechange.SugarCube"),o.clear(),r()}function r(){jQuery(document.documentElement).removeClass("init-loading")}function n(){jQuery(document.documentElement).addClass("init-loading")}function a(){return++s,o.add(s),n(),s}function i(e){if(null==e)throw new Error("LoadScreen.unlock called with a null or undefined ID");o.has(e)&&o.delete(e),0===o.size&&jQuery(document).trigger("readystatechange")}var o=new Set,s=0;return Object.freeze(Object.defineProperties({},{init:{value:e},clear:{value:t},hide:{value:r},show:{value:n},lock:{value:a},unlock:{value:i}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:15,patch:0,prerelease:null,build:7847,date:new Date("2017-03-13T14:24:21.491Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{var e=LoadScreen.lock();LoadScreen.init(),document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UI.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),UI.start(),window.SugarCube={Browser:Browser,Config:Config,Dialog:Dialog,DebugView:DebugView,Engine:Engine,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,Util:Util,Wikifier:Wikifier,macros:macros,session:session,settings:settings,setup:setup,storage:storage,version:version},LoadScreen.unlock(e)}catch(e){return LoadScreen.clear(),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
 	</script>
 </body>
 </html>
diff --git a/src/events/intro/initNationalities.tw b/src/events/intro/initNationalities.tw
index 105825f9c78a9f819d2c83b4a2e354dacb4b5530..d908e7326e9ab872b9b68f297594bce23f2f5a87 100644
--- a/src/events/intro/initNationalities.tw
+++ b/src/events/intro/initNationalities.tw
@@ -418,6 +418,7 @@
 <<set $arcologies[0].FSPhysicalIdealistSMR to 0>>
 <<set $arcologies[0].FSChattelReligionistLaw to 0>>
 <<set $arcologies[0].FSChattelReligionistSMR to 0>>
+<<set $arcologies[0].FSChattelReligionistCreed to 0>>
 <<set $arcologies[0].FSRomanRevivalistLaw to 0>>
 <<set $arcologies[0].FSRomanRevivalistSMR to 0>>
 <<set $arcologies[0].FSEgyptianRevivalistLaw to 0>>
diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index 0d7722039028354886fc36c2d60cd0d4988d4769..302371b3ac1a2dd3210c5cd576b23d5619237550 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -306,6 +306,16 @@ Girls will not be able to impregnate others if their age is under <<textbox "$po
 	[[Enable|Intro Summary][$newDescriptions to 1]]
 <</if>>
 
+/* Accordion 000-250-006 */
+<br>
+	Accordion effects on weekly reports are 
+<<if $useAccordion == 0>>
+	@@color:red;DISABLED@@. [[Enable|Intro Summary][$useAccordion to 1]]
+<<else>>
+	@@color:cyan;ENABLED@@. [[Disable|Intro Summary][$useAccordion to 0]]
+<</if>>
+/* Accordion 000-250-006 */
+
 <br>
 
 <<if $plot == 1>>
diff --git a/src/gui/css/accordianStyleSheet.tw b/src/gui/css/accordianStyleSheet.tw
new file mode 100644
index 0000000000000000000000000000000000000000..3f8434a1b403928377f462dac70bd4ff20926e28
--- /dev/null
+++ b/src/gui/css/accordianStyleSheet.tw
@@ -0,0 +1,40 @@
+:: accordionStyleSheet [stylesheet]
+/* Accordion 000-250-006 */
+
+button.accordion {
+    cursor: pointer;
+    padding: 5px;
+    width: 100%;
+    margin-bottom: 10px;
+    border-bottom: 3px double;
+    border-right: 3px double;
+    border-left: none;
+    border-top: none;
+    text-align: left;
+    outline: none;
+    transition: 0.4s;
+    background-color: transparent;
+}
+
+button.accordion.active, button.accordion:hover {
+    background-color: transparent;
+}
+
+button.accordion:before {
+    content: '\002B';
+    color: #777;
+    font-weight: bold;
+    float: left;
+    margin-right: 5px;
+}
+
+button.accordion.active:before {
+    content: "\2212";
+}
+
+.accHidden {
+    padding: 0 18px;
+    max-height: 0;
+    overflow: hidden;
+    transition: max-height 0.2s ease-out;
+}
diff --git a/src/gui/css/mainStyleSheet.tw b/src/gui/css/mainStyleSheet.tw
index c86aaea8f1467f2bc5167cfad60be901d4e03072..6f1b303e08afd1c8395bfaced903735b35b65f50 100644
--- a/src/gui/css/mainStyleSheet.tw
+++ b/src/gui/css/mainStyleSheet.tw
@@ -12,6 +12,9 @@
 }
 
 div.imageRef{
+margin-left: -75px;
+margin-right: -75px;
+overflow:hidden;
 width: 400px;
 height: 400px;
 position: relative;
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 3dc8a196737ef9eaf53ba3d54cfc4c9321dfddd4..8f751154684c3bdf0da5995a7000f9bdbb696ca4 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -60,7 +60,7 @@
 	*/
 	<<for $i to 0; $i < $slaves.length; $i++>>
 	<<if $slaves[$i].relation != 0>>
-		<<set $seed to 0>>
+		<<set $seed = 0>>
 		<<for $j to 0; $j < $slaves.length; $j++>>
 		<<if $slaves[$i].relationTarget is $slaves[$j].ID>>
 			<<if $slaves[$j].relationTarget is $slaves[$i].ID>>
@@ -70,12 +70,12 @@
 		<</if>>
 		<</for>>
 		<<if $seed == 0>>
-		<<set $slaves[$i].relation to 0>>
-		<<set $slaves[$i].relationTarget to 0>>
+		<<set $slaves[$i].relation = 0>>
+		<<set $slaves[$i].relationTarget = 0>>
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].relationship > 0>>
-		<<set $seed to 0>>
+		<<set $seed = 0>>
 		<<for $j to 0; $j < $slaves.length; $j++>>
 		<<if $slaves[$i].relationshipTarget is $slaves[$j].ID>>
 			<<if $slaves[$j].relationshipTarget is $slaves[$i].ID>>
@@ -85,8 +85,8 @@
 		<</if>>
 		<</for>>
 		<<if $seed == 0>>
-		<<set $slaves[$i].relationship to 0>>
-		<<set $slaves[$i].relationshipTarget to 0>>
+		<<set $slaves[$i].relationship = 0>>
+		<<set $slaves[$i].relationshipTarget = 0>>
 		<</if>>
 	<</if>>
 	<</for>>
@@ -109,17 +109,17 @@
 		<<set $slaves[$i].recruiter to "young sister">>
 		<</if>>
 	<<else>>
-		<<set $slaves[$i].recruiter to 0>>
+		<<set $slaves[$i].recruiter = 0>>
 	<</if>>
-	<</if>>
-	<<set $slaves[$i].milk to 0>>
-	<<set $slaves[$i].cum to 0>>
-	<<set $slaves[$i].births to 0>>
-	<<set $slaves[$i].mammaryCount to 0>>
-	<<set $slaves[$i].penetrativeCount to 0>>
-	<<set $slaves[$i].oralCount to 0>>
-	<<set $slaves[$i].analCount to 0>>
-	<<set $slaves[$i].vaginalCount to 0>>
+	<</if>> /*closes family mode */
+	<<set $slaves[$i].milk = 0>>
+	<<set $slaves[$i].cum = 0>>
+	<<set $slaves[$i].births = 0>>
+	<<set $slaves[$i].mammaryCount = 0>>
+	<<set $slaves[$i].penetrativeCount = 0>>
+	<<set $slaves[$i].oralCount = 0>>
+	<<set $slaves[$i].analCount = 0>>
+	<<set $slaves[$i].vaginalCount = 0>>
 	<<if $ver == "0.9">>
 		<<if $slaves[$i].lips != 0>>
 		<<if $slaves[$i].lips == 3>>
@@ -131,7 +131,7 @@
 		<</if>>
 		<</if>>
 	<</if>>
-	<<if ($ver != "0.9.5") && ($ver != "0.9.6") && ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9")>>
+	<<if ($ver != "0.9.5") && ($ver != "0.9.6") && ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9") && ($ver != "0.9.10")>>
 		<<if $slaves[$i].oralSkill > 0>>
 		<<if $slaves[$i].oralSkill == 3>>
 			<<set $slaves[$i].oralSkill = 100>>
@@ -204,25 +204,25 @@
 		<</if>>
 	<</if>>
 	<<if ndef $slaves[$i].aphrodisiacs>>
-		<<set $slaves[$i].aphrodisiacs to 0>>
+		<<set $slaves[$i].aphrodisiacs = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].curatives>>
-		<<set $slaves[$i].curatives to 0>>
+		<<set $slaves[$i].curatives = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].lactationAdaptation>>
-		<<set $slaves[$i].lactationAdaptation to 0>>
+		<<set $slaves[$i].lactationAdaptation = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].dietCum>>
-		<<set $slaves[$i].dietCum to 0>>
+		<<set $slaves[$i].dietCum = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].dietMilk>>
-		<<set $slaves[$i].dietMilk to 0>>
+		<<set $slaves[$i].dietMilk = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].fuckdoll>>
-		<<set $slaves[$i].fuckdoll to 0>>
+		<<set $slaves[$i].fuckdoll = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].customImage>>
-		<<set $slaves[$i].customImage to 0>>
+		<<set $slaves[$i].customImage = 0>>
 	<</if>>
 	<<if ndef $slaves[$i].nationality>>
 		<<set $slaves[$i].nationality = "slave">>
@@ -262,25 +262,28 @@
 <</if>>
 <<set $recruiterCareers = []>>
 <<if ndef $saveImported>>
-	<<set $saveImported to 0>>
+	<<set $saveImported = 0>>
 <</if>>
 <<if ndef $positionMainLinks>>
 	<<set $positionMainLinks to -1>>
 <</if>>
 <<if ndef $seeImages>>
-	<<set $seeImages to 0>>
+	<<set $seeImages = 0>>
 <</if>>
 <<if ndef $imageChoice>>
-	<<set $imageChoice to 0>>
+	<<set $imageChoice = 0>>
 <</if>>
 <<if ndef $seeMainFetishes>>
-	<<set $seeMainFetishes to 0>>
+	<<set $seeMainFetishes = 0>>
 <</if>>
 <<if ndef $seeSummaryImages>>
 	<<set $seeSummaryImages to 1>>
 <</if>>
 <<if ndef $universalRulesBirthing>>
-	<<set $universalRulesBirthing to 0>>
+	<<set $universalRulesBirthing = 0>>
+<</if>>
+<<if ndef $HGSeverity>>
+	<<set $HGSeverity = 0>>
 <</if>>
 <<if def $recruiters>>
 	<<unset $recruiters>>
@@ -292,7 +295,7 @@
 		<<set $seeDicks = 25>>
 	<</if>>
 <</if>>
-<<if ($ver != "0.9.4") && ($ver != "0.9.5") && ($ver != "0.9.6") && ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9")>>
+<<if ($ver != "0.9.4") && ($ver != "0.9.5") && ($ver != "0.9.6") && ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9") && ($ver != "0.9.10")>>
 	<<for _r to 0; _r < $defaultRules.length; _r++>>
 		<<if ndef $defaultRules[_r].aphrodisiacs>>
 			<<set $defaultRules[_r].aphrodisiacs = 0>>
@@ -341,11 +344,11 @@
 
 <<if $saveImported == 0>>
 
-<<set $cheater to 0>>
+<<set $cheater = 0>>
 <<set $PCName to "Anonymous">>
 <<set $PC to {title: 1, ID: -1, dick: 1, vagina: 0, preg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, race: "white", skin: "white", eyeColor: "blue", hColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, intelligence: 3, face: 3, actualAge: 35, physicalAge: 35, visualAge: 35, birthWeek: 0}>>
 <<set $cash = 10000>>
-<<set $normalizedEvents to 0>>
+<<set $normalizedEvents = 0>>
 <<set $autosave to 1>>
 <<set $useFSNames to 1>>
 <<set $seeDetails to 1>>
@@ -354,20 +357,20 @@
 <<set $seeFCNN to 1>>
 <<set $seeBuy to 1>>
 <<set $seeArcology to 1>>
-<<set $seeExtreme to 0>>
+<<set $seeExtreme = 0>>
 <<set $seeHyperPreg to 0>>
 <<set $seeCircumcision to 1>>
 <<set $seeAge to 1>>
 <<set $seeDicks to 25>>
 <<set $seeRace to 1>>
 <<set $seeNationality to 1>>
-<<set $seeImages to 0>>
-<<set $imageChoice to 0>>
-<<set $seeMainFetishes to 0>>
+<<set $seeImages = 0>>
+<<set $imageChoice = 0>>
+<<set $seeMainFetishes = 0>>
 <<set $seeSummaryImages to 1>>
 <<set $lineSeparations to 1>>
 <<set $showSexualHistory to 1>>
-<<set $showBodyMods to 0>>
+<<set $showBodyMods = 0>>
 <<set $showImplantEffects to 1>>
 <<set $showClothing to 1>>
 <<set $showAgeDetail to 1>>
@@ -385,18 +388,18 @@
 <<set $sortSlavesBy to "devotion">>
 <<set $sortSlavesOrder to "descending">>
 <<set $sortSlavesMain to 1>>
-<<set $HGSeverity to 0>>
+<<set $HGSeverity = 0>>
 <<set $HGFormality to 1>>
-<<set $universalRulesConsent to 0>>
-<<set $universalRulesRest to 0>>
+<<set $universalRulesConsent = 0>>
+<<set $universalRulesRest = 0>>
 <<set $universalRulesFacilityWork to 1>>
 <<set $universalRulesImpregnation to "none">>
-<<set $universalRulesBirthing to 0>>
+<<set $universalRulesBirthing = 0>>
 <<set $universalRulesCSec = 0>>
 <<set $universalRulesNewSlavesRA to 1>>
 <<set $slaveDead = 0>>
 <<set $rulesAssistantMain to 1>>
-<<set $rulesAssistantAuto to 0>>
+<<set $rulesAssistantAuto = 0>>
 <<set $abbreviateDevotion to 2>>
 <<set $abbreviateRules to 2>>
 <<set $abbreviateClothes to 2>>
@@ -437,11 +440,11 @@
 	<<else>>
 		<<set $cheater to 0>>
 		<<set $PCName to "Anonymous">>
-		<<set $PC to {title: 1, ID: -1, dick: 1, vagina: 0, preg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, race: "white", skin: "white", eyeColor: "blue", hColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0}>>
+		<<set $PC to {title: 1, ID: -1, dick: 1, vagina: 0, preg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, race: "white", skin: "white", eyeColor: "blue", hColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, intelligence: 3, face: 3, actualAge: 35, physicalAge: 35, visualAge: 35, birthWeek: 0}>>
 	<</if>>
 <</if>>
 
-<<set $ver = "0.9.9">>
+<<set $ver = "0.9.10">>
 
 <<set $targetArcology = {type: "New"}>>
 
@@ -452,16 +455,16 @@
 <<set $REButtholeCheckinIDs to []>>
 <<set $REFutaSisterCheckinIDs to []>>
 <<set $REReductionCheckinIDs to []>>
-<<set $activeSlave to 0>>
+<<set $activeSlave = 0>>
 
 <<set $bioreactorPerfectedID to []>>
 
-<<set $independenceDay to 0>>
-<<set $invasionVictory to 0>>
-<<set $daughtersVictory to 0>>
-<<set $startingGirlCommitted to 0>>
-<<set $startingGirlCopied to 0>>
-<<set $archetyped to 0>>
+<<set $independenceDay = 0>>
+<<set $invasionVictory = 0>>
+<<set $daughtersVictory = 0>>
+<<set $startingGirlCommitted = 0>>
+<<set $startingGirlCopied = 0>>
+<<set $archetyped = 0>>
 
 <<set $slavesVisible = 0>>
 <<set $dormitory = 20>>
@@ -576,7 +579,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $arcadeName = "the Arcade">>
 <<set $arcadeNameCaps = "The Arcade">>
 <<set $arcade = 0>>
-<<set $fuckdollsSold to 0>>
+<<set $fuckdollsSold = 0>>
 <<set $fuckdollPrice to 3000>>
 <<set $cellblockSlaves = 0>>
 <<set $cellblockDecoration = "standard">>
@@ -587,11 +590,11 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $masterSuiteSlaves = 0>>
 <<set $masterSuiteDecoration = "standard">>
 <<set $masterSuiteUpgradeLuxury = 0>>
-<<set $masterSuiteUpgradePregnancy to 0>>				/* Is the upgrade active? */
-<<set $masterSuitePregnancyFertilityDrugs to 0>>		/* Are slaves being put on fertility drugs? */
-<<set $masterSuitePregnancyFertilitySupplements to 0>>	/* Are those drugs being supplemented (health benefits and (even) more multiple pregnancies) */
-<<set $masterSuitePregnancySlaveLuxuries to 0>>			/* Are the slaves being given some nicer things to reduce stress during preg? (health/devotion/trust benefits) */
-<<set $universalHGImpregnateMasterSuiteToggle to 0>>	/* Will the HG impregnate fertile slaves in the MS? */
+<<set $masterSuiteUpgradePregnancy = 0>>				/* Is the upgrade active? */
+<<set $masterSuitePregnancyFertilityDrugs = 0>>		/* Are slaves being put on fertility drugs? */
+<<set $masterSuitePregnancyFertilitySupplements = 0>>	/* Are those drugs being supplemented (health benefits and (even) more multiple pregnancies) */
+<<set $masterSuitePregnancySlaveLuxuries = 0>>			/* Are the slaves being given some nicer things to reduce stress during preg? (health/devotion/trust benefits) */
+<<set $universalHGImpregnateMasterSuiteToggle = 0>>	/* Will the HG impregnate fertile slaves in the MS? */
 <<set $masterSuiteHyperPregnancy = 0>>
 <<set $masterSuite = 0>>
 <<set $masterSuiteName = "the Master Suite">>
@@ -626,47 +629,45 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $servantMilkers = 0>>
 <<set $servantMilkersMultiplier = 1>>
 <<set $servantMilkersJobs to ["be a servant", "work as a servant", "take classes", "please you", "be a subordinate slave", "stay confined", "recruit girls", "rest"]>>
-<<set $SQMilk = 0>>
-<<set $SQMilkSale = 0>>
 <<set $foodCost = 25>>
 
-<<set $legendaryWhoreID to 0>>
-<<set $legendaryEntertainerID to 0>>
-<<set $legendaryCowID to 0>>
-<<set $legendaryBallsID to 0>>
-<<set $legendaryWombID to 0>>
-<<set $legendaryAbolitionistID to 0>>
-
-<<set $FSAnnounced to 0>>
-<<set $FSCredits to 0>>
-<<set $FSCreditCount to 5>>
-<<set $FSCreditCountString to "five">>
-<<set $FSGotRepCreditOne to 0>>
-<<set $FSGotRepCreditTwo to 0>>
-<<set $FSGotRepCreditThree to 0>>
-<<set $FSGotRepCreditFour to 0>>
-<<set $FSGotRepCreditFive to 0>>
-<<set $FSGotRepCreditSix to 0>>
+<<set $legendaryWhoreID = 0>>
+<<set $legendaryEntertainerID = 0>>
+<<set $legendaryCowID = 0>>
+<<set $legendaryBallsID = 0>>
+<<set $legendaryWombID = 0>>
+<<set $legendaryAbolitionistID = 0>>
+
+<<set $FSAnnounced = 0>>
+<<set $FSCredits = 0>>
+<<set $FSCreditCount = 5>>
+<<set $FSCreditCountString = "five">>
+<<set $FSGotRepCreditOne = 0>>
+<<set $FSGotRepCreditTwo = 0>>
+<<set $FSGotRepCreditThree = 0>>
+<<set $FSGotRepCreditFour = 0>>
+<<set $FSGotRepCreditFive = 0>>
+<<set $FSGotRepCreditSix = 0>>
 <<set $FSSingleSlaveRep to 10>>
-<<set $FSSpending to 0>>
+<<set $FSSpending = 0>>
 <<set $FSLockinLevel = 100>>
-<<set $applyLaw to 0>>
-
-<<set $corpAnnounced to 0>>
-<<set $corpIncorporated to 0>>
-<<set $corpPeopleEnslaved to 0>>
-<<set $sharePrice to 0>>
-<<set $personalShares to 0>>
-<<set $publicShares to 0>>
-<<set $corpCash to 0>>
-<<set $corpProfit to 0>>
-<<set $generalAssets to 0>>
-<<set $slaveAssets to 0>>
-<<set $entrapmentAssets to 0>>
-<<set $captureAssets to 0>>
-<<set $trainingAssets to 0>>
-<<set $surgicalAssets to 0>>
-<<set $drugAssets to 0>>
+<<set $applyLaw = 0>>
+
+<<set $corpAnnounced = 0>>
+<<set $corpIncorporated = 0>>
+<<set $corpPeopleEnslaved = 0>>
+<<set $sharePrice = 0>>
+<<set $personalShares = 0>>
+<<set $publicShares = 0>>
+<<set $corpCash = 0>>
+<<set $corpProfit = 0>>
+<<set $generalAssets = 0>>
+<<set $slaveAssets = 0>>
+<<set $entrapmentAssets = 0>>
+<<set $captureAssets = 0>>
+<<set $trainingAssets = 0>>
+<<set $surgicalAssets = 0>>
+<<set $drugAssets = 0>>
 <<set $generalAssetPrice to 10>>
 <<set $slaveAssetPrice to 10>>
 <<set $entrapmentAssetPrice to 10>>
@@ -693,42 +694,44 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $drugUpgradeInjectionOne = "unselected">>
 <<set $drugUpgradeInjectionTwo = "unselected">>
 
-<<set $shelterSlave to 0>>
-<<set $shelterSlaveBought to 0>>
-<<set $shelterAbuse to 0>>
+<<set $shelterSlave = 0>>
+<<set $shelterSlaveBought = 0>>
+<<set $shelterAbuse = 0>>
 
 /* master suite reporting and alternate descriptions */
-<<set $verboseDescriptions to 0>>
+<<set $verboseDescriptions = 0>>
+/* Accordion 000-250-006 */
+<<set $useAccordion to 0>>
 /* alternate clothing access variables */
-<<set $clothesBoughtBunny to 0>>
-<<set $clothesBoughtConservative to 0>>
-<<set $clothesBoughtChains to 0>>
-<<set $clothesBoughtWestern to 0>>
-<<set $clothesBoughtOil to 0>>
-<<set $clothesBoughtHabit to 0>>
-<<set $clothesBoughtToga to 0>>
-<<set $clothesBoughtKimono to 0>>
-<<set $clothesBoughtHarem to 0>>
-<<set $clothesBoughtQipao to 0>>
-<<set $clothesBoughtEgypt to 0>>
-<<set $clothesBoughtBelly to 0>>
-<<set $clothesBoughtMaternityDress to 0>>
-<<set $clothesBoughtMaternityLingerie to 0>>
-<<set $toysBoughtDildos to 0>>
-<<set $toysBoughtGags to 0>>
-<<set $toysBoughtButtPlugs to 0>>
+<<set $clothesBoughtBunny = 0>>
+<<set $clothesBoughtConservative = 0>>
+<<set $clothesBoughtChains = 0>>
+<<set $clothesBoughtWestern = 0>>
+<<set $clothesBoughtOil = 0>>
+<<set $clothesBoughtHabit = 0>>
+<<set $clothesBoughtToga = 0>>
+<<set $clothesBoughtKimono = 0>>
+<<set $clothesBoughtHarem = 0>>
+<<set $clothesBoughtQipao = 0>>
+<<set $clothesBoughtEgypt = 0>>
+<<set $clothesBoughtBelly = 0>>
+<<set $clothesBoughtMaternityDress = 0>>
+<<set $clothesBoughtMaternityLingerie = 0>>
+<<set $toysBoughtDildos = 0>>
+<<set $toysBoughtGags = 0>>
+<<set $toysBoughtButtPlugs = 0>>
 /* assistant FS appearance variable */
 <<set $assistantFSAppearance to "default">>
 
 /*pregmod variables */
-<<set $publiclyouted to 0>>
-<<set $newDescriptions to 0>>
-<<set $sellBaby to 0>>
-<<set $specialSlavesPriceOverride to 0>>
-<<set $pregAccessibility to 0>>
-<<set $dickAccessibility to 0>>
-<<set $ballsAccessibility to 0>>
-<<set $buttAccessibility to 0>>
+<<set $publiclyouted = 0>>
+<<set $newDescriptions = 0>>
+<<set $sellBaby = 0>>
+<<set $specialSlavesPriceOverride = 0>>
+<<set $pregAccessibility = 0>>
+<<set $dickAccessibility = 0>>
+<<set $ballsAccessibility = 0>>
+<<set $buttAccessibility = 0>>
 <<set $loliGrow = 1>>
 <<set $ageMode = 0>>
 <<set $enema = 0>>
@@ -736,9 +739,9 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $PCCumTap = 0>>
 <<set $inflatedSlavesMilk = 0>>
 <<set $inflatedSlavesCum = 0>>
-<<set $milkWeek to 0>>
-<<set $cumWeek to 0>>
-<<set $burstee to 0>>
+<<set $milkWeek = 0>>
+<<set $cumWeek = 0>>
+<<set $burstee = 0>>
 <<set $clinicInflateBelly = 0>>
 <<set $playerBred = 0>>
 <<set $propOutcome = 0>>
@@ -750,8 +753,8 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $familyTesting = 0>>
 <<set $children = 0>>
 <<set $children = []>>
-<<set $missingParentID to -10000>>
-<<set $startingSlaveRelative to 0>>
+<<set $missingParentID = -10000>>
+<<set $startingSlaveRelative = 0>>
 <<set $relationID = 0>>
 <<set $mom = 0>>
 <<set $animalParts = 0>>
@@ -766,7 +769,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 
 <<set $fakeBellies to ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"]>> /* lets fake bellies be separated from other .bellyAccessory */
 
-<<set $schoolSuggestion to 0>>
+<<set $schoolSuggestion = 0>>
 <<set $TSS to {schoolUpgrade: 0, schoolPresent: 0, schoolProsperity: 0, subsidize: 0, schoolAnnexed: 0, studentsBought: 0, schoolSale: 0}>>
 <<set $GRI to {schoolUpgrade: 0, schoolPresent: 0, schoolProsperity: 0, subsidize: 0, schoolAnnexed: 0, studentsBought: 0, schoolSale: 0}>>
 <<set $SCP to {schoolUpgrade: 0, schoolPresent: 0, schoolProsperity: 0, subsidize: 0, schoolAnnexed: 0, studentsBought: 0, schoolSale: 0}>>
@@ -783,217 +786,223 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $day to 19>>
 <<set $year to 2037>>
 
-<<set $weddingPlanned to 0>>
-<<set $weddingSlaveID to 0>>
+<<set $weddingPlanned = 0>>
+<<set $weddingSlaveID = 0>>
 <<set $personalAttention to "business">>
 <<set $trainingRegimen to "break her will">>
-<<set $HeadGirl to 0>>
-<<set $HGRelease to 0>>
-<<set $HGTimeInGrade to 0>>
-<<set $HGEnergy to 0>>
+<<set $HeadGirl = 0>>
+<<set $HGRelease = 0>>
+<<set $HGTimeInGrade = 0>>
+<<set $HGEnergy = 0>>
 <<set $HGCum = 0>>
-<<set $Recruiter to 0>>
+<<set $Recruiter = 0>>
 <<set $recruiterTarget to "desperate whores">>
-<<set $recruiterProgress to 0>>
+<<set $recruiterProgress = 0>>
 <<set $recruiterIdleRule to "number">>
 <<set $recruiterIdleNumber to 20>>
-<<set $Bodyguard to 0>>
-<<set $Madam to 0>>
-<<set $DJ to 0>>
-<<set $Milkmaid to 0>>
-<<set $milkmaidImpregnates to 0>>
-<<set $Collectrix to 0>>
-<<set $Stewardess to 0>>
-<<set $stewardessImpregnates to 0>>
-<<set $Schoolteacher to 0>>
-<<set $Attendant to 0>>
-<<set $Nurse to 0>>
-<<set $Wardeness to 0>>
-<<set $Concubine to 0>>
-<<set $assistant to 0>>
-<<set $assistantPower to 0>>
+<<set $Bodyguard = 0>>
+<<set $Madam = 0>>
+<<set $DJ = 0>>
+<<set $Milkmaid = 0>>
+<<set $milkmaidImpregnates = 0>>
+<<set $Collectrix = 0>>
+<<set $Stewardess = 0>>
+<<set $stewardessImpregnates = 0>>
+<<set $Schoolteacher = 0>>
+<<set $Attendant = 0>>
+<<set $Nurse = 0>>
+<<set $Wardeness = 0>>
+<<set $Concubine = 0>>
+<<set $assistant = 0>>
+<<set $assistantPower = 0>>
 <<set $economicUncertainty to 10>>
-<<set $assistantAnnounced to 0>>
+<<set $assistantAnnounced = 0>>
 <<set $assistantAppearance to "normal">>
-<<set $assistantExtra1 to 0>>
-<<set $assistantOptions to 0>>
-<<set $assistantFSOptions to 0>>
+<<set $assistantExtra1 = 0>>
+<<set $assistantOptions = 0>>
+<<set $assistantFSOptions = 0>>
 <<set $assistantName to "your personal assistant">>
-<<set $assistantNameAnnounced to 0>>
+<<set $assistantNameAnnounced = 0>>
 <<set $assistantBodyDesire = 0>>
-<<set $marketAssistantAnnounced to 0>>
+<<set $marketAssistantAnnounced = 0>>
 <<set $marketAssistantRelationship to "cute">>
-<<set $marketAssistantLimit to 0>>
-<<set $marketAssistantAggressiveness to 0>>
+<<set $marketAssistantLimit = 0>>
+<<set $marketAssistantAggressiveness = 0>>
 
 <<set $justiceEvents to ["slave deal", "slave training", "majority deal", "indenture deal", "virginity deal"]>>
 
-<<set $fixedNationality to 0>>
-<<set $fixedRace to 0>>
+<<set $fixedNationality = 0>>
+<<set $fixedRace = 0>>
 <<set $ui to "start">>
 
 <<set $brandTarget to "buttocks">>
 <<set $brandDesign to "your initials">>
 
-<<set $oralTotal to 0>>
-<<set $vaginalTotal to 0>>
-<<set $analTotal to 0>>
-<<set $mammaryTotal to 0>>
-<<set $penetrativeTotal to 0>>
-<<set $milkTotal to 0>>
-<<set $cumTotal to 0>>
-<<set $birthsTotal to 0>>
-<<set $pitKillsTotal to 0>>
-
-<<set $collaboration to 0>>
-<<set $traitor to 0>>
-<<set $hackerSupport to 0>>
-<<set $hostage to 0>>
-<<set $hostageAnnounced to 0>>
-<<set $hostageCost to 0>>
-<<set $hostageRescued to 0>>
-<<set $hostageGiveIn to 0>>
-<<set $rivalSet to 0>>
-<<set $rivalryFS to 0>>
-<<set $rivalryFSAdopted to 0>>
-<<set $rivalryFSRace to 0>>
-<<set $rivalOwner to 0>>
-<<set $rivalOwnerEnslaved to 0>>
-<<set $rivalryPower to 0>>
-<<set $rivalryDuration to 0>>
-<<set $nationHate to 0>>
-<<set $PShoot to 0>>
-<<set $PSnatch to 0>>
-<<set $PRaid to 0>>
-<<set $PAid to 0>>
-<<set $PPit to 0>>
-
-<<set $dispensary to 0>>
-<<set $dispensaryUpgrade to 0>>
-<<set $organFarmUpgrade to 0>>
-<<set $organsCompleted to 0>>
-<<set $limbsCompleted to 0>>
+<<set $oralTotal = 0>>
+<<set $vaginalTotal = 0>>
+<<set $analTotal = 0>>
+<<set $mammaryTotal = 0>>
+<<set $penetrativeTotal = 0>>
+<<set $milkTotal = 0>>
+<<set $cumTotal = 0>>
+<<set $birthsTotal = 0>>
+<<set $pitKillsTotal = 0>>
+
+<<set $collaboration = 0>>
+<<set $traitor = 0>>
+<<set $hackerSupport = 0>>
+<<set $hostage = 0>>
+<<set $hostageAnnounced = 0>>
+<<set $hostageCost = 0>>
+<<set $hostageRescued = 0>>
+<<set $hostageGiveIn = 0>>
+<<set $rivalSet = 0>>
+<<set $rivalryFS = 0>>
+<<set $rivalryFSAdopted = 0>>
+<<set $rivalryFSRace = 0>>
+<<set $rivalOwner = 0>>
+<<set $rivalOwnerEnslaved = 0>>
+<<set $rivalryPower = 0>>
+<<set $rivalryDuration = 0>>
+<<set $nationHate = 0>>
+<<set $PShoot = 0>>
+<<set $PSnatch = 0>>
+<<set $PRaid = 0>>
+<<set $PAid = 0>>
+<<set $PPit = 0>>
+
+<<set $dispensary = 0>>
+<<set $dispensaryUpgrade = 0>>
+<<set $organFarmUpgrade = 0>>
+<<set $organsCompleted = 0>>
+<<set $limbsCompleted = 0>>
 <<set $limbs to []>>
-<<set $ImplantProductionUpgrade to 0>>
-<<set $implantFillable to 0>>
-<<set $permaPregImplant to 0>>
-<<set $injectionUpgrade to 0>>
-<<set $hormoneUpgradeMood to 0>>
-<<set $hormoneUpgradeShrinkage to 0>>
-<<set $hormoneUpgradePower to 0>>
-<<set $pubertyHormones to 0>>
-<<set $dietXXY to 0>>
+<<set $ImplantProductionUpgrade = 0>>
+<<set $implantFillable = 0>>
+<<set $permaPregImplant = 0>>
+<<set $injectionUpgrade = 0>>
+<<set $hormoneUpgradeMood = 0>>
+<<set $hormoneUpgradeShrinkage = 0>>
+<<set $hormoneUpgradePower = 0>>
+<<set $pubertyHormones = 0>>
+<<set $dietXXY = 0>>
 <<set $cumProDiet = 0>>
-<<set $curativeUpgrade to 0>>
-<<set $aphrodisiacUpgrade to 0>>
-<<set $healthyDrugsUpgrade to 0>>
-<<set $superFertilityDrugs to 0>>
+<<set $curativeUpgrade = 0>>
+<<set $aphrodisiacUpgrade = 0>>
+<<set $healthyDrugsUpgrade = 0>>
+<<set $superFertilityDrugs = 0>>
 <<set $bellyImplants = 0>>
 <<set $cervixImplants = 0>>
-<<set $prostheticsUpgrade to 0>>
+<<set $prostheticsUpgrade = 0>>
 
-<<set $surgeryUpgrade to 0>>
+<<set $surgeryUpgrade = 0>>
 
-<<set $mercenaries to 0>>
-<<set $mercenariesHelpCorp to 0>>
-<<set $personalArms to 0>>
+<<set $mercenaries = 0>>
+<<set $mercenariesHelpCorp = 0>>
+<<set $personalArms = 0>>
 
-<<set $saleDescription to 0>>
-<<set $gingering to 0>>
-<<set $beforeGingering to 0>>
-<<set $gingeringDetected to 0>>
-<<set $gingeringDetection to 0>>
-<<set $surgeryDescription to 0>>
+<<set $saleDescription = 0>>
+<<set $gingering = 0>>
+<<set $beforeGingering = 0>>
+<<set $gingeringDetected = 0>>
+<<set $gingeringDetection = 0>>
+<<set $surgeryDescription = 0>>
 <<set $encyclopedia to "How to Play">>
 <<set $showEncyclopedia to 1>>
 
 <<set $trinkets to []>>
 <<set $SPcost = 1000>>
-<<set $preOwnedViewed to 0>>
-<<set $debtWarned to 0>>
+<<set $preOwnedViewed = 0>>
+<<set $debtWarned = 0>>
 <<set $economy to 1>>
 <<set $neighboringArcologies to 3>>
 <<set $internationalTrade to 1>>
-<<set $internationalVariety to 0>>
+<<set $internationalVariety = 0>>
 <<set $slaveCostFactor to 0.9>>
-<<set $menialDemandFactor to 0>>
+<<set $menialDemandFactor = 0>>
 <<set $minimumSlaveCost to 2500>>
 <<set $facilityCost = 100>>
 <<set $enduringRep = 1000>>
 <<set $rep = 1000>>
-<<set $repGain to 0>>
-<<set $repLoss to 0>>
-<<set $cashLastWeek to 0>>
+<<set $repGain = 0>>
+<<set $repLoss = 0>>
+<<set $cashLastWeek = 0>>
 <<set $AProsperityCap to 60>>
 <<set $ACitizens to ($AProsperityCap+200)*16>>
 <<set $ASlaves to ($AProsperityCap+200)*4>>
 <<set $AHelots to $ASlaves*2>>
-<<set $helots to 0>>
-<<set $fuckdolls to 0>>
-<<set $menialBioreactors to 0>>
+<<set $helots = 0>>
+<<set $fuckdolls = 0>>
+<<set $menialBioreactors = 0>>
 <<set $AGrowth to 2>>
-<<set $prestigeAuctioned to 0>>
+<<set $prestigeAuctioned = 0>>
 <<set $slaveMarketLimit to 20>>
-<<set $slavesSeen to 0>>
-
-<<set $alwaysSubsidizeRep to 0>>
-<<set $alwaysSubsidizeGrowth to 0>>
-<<set $ProImmigrationCash to 0>>
-<<set $ProImmigrationRep to 0>>
-<<set $AntiImmigrationCash to 0>>
-<<set $AntiImmigrationRep to 0>>
-<<set $ProEnslavementCash to 0>>
-<<set $ProEnslavementRep to 0>>
-<<set $AntiEnslavementCash to 0>>
-<<set $AntiEnslavementRep to 0>>
+<<set $slavesSeen = 0>>
+
+<<set $alwaysSubsidizeRep = 0>>
+<<set $alwaysSubsidizeGrowth = 0>>
+<<set $ProImmigrationCash = 0>>
+<<set $ProImmigrationRep = 0>>
+<<set $AntiImmigrationCash = 0>>
+<<set $AntiImmigrationRep = 0>>
+<<set $ProEnslavementCash = 0>>
+<<set $ProEnslavementRep = 0>>
+<<set $AntiEnslavementCash = 0>>
+<<set $AntiEnslavementRep = 0>>
 <<set $BasicSMR to 1>>
-<<set $HealthInspectionSMR to 0>>
-<<set $EducationSMR to 0>>
-<<set $FrigiditySMR to 0>>
-<<set $BasicBeautySMR to 0>>
-<<set $QualityBeautySMR to 0>>
-<<set $BasicIntelligenceSMR to 0>>
-<<set $QualityIntelligenceSMR to 0>>
-<<set $IntelligenceEugenicsSMR to 0>>
-<<set $HeightEugenicsSMR to 0>>
-<<set $FaceEugenicsSMR to 0>>
-<<set $HonestySMR to 0>>
-<<set $ProRefugees to 0>>
-<<set $ProRecruitment to 0>>
-<<set $OralEncouragement to 0>>
-<<set $VaginalEncouragement to 0>>
-<<set $AnalEncouragement to 0>>
-<<set $OralDiscouragement to 0>>
-<<set $VaginalDiscouragement to 0>>
-<<set $AnalDiscouragement to 0>>
-<<set $CashForRep to 0>>
-<<set $RepForCash to 0>>
-<<set $Cash4Babies to 0>>
-<<set $PAPublic to 0>>
-<<set $CoursingAssociation to 0>>
+<<set $HealthInspectionSMR = 0>>
+<<set $EducationSMR = 0>>
+<<set $FrigiditySMR = 0>>
+<<set $BasicBeautySMR = 0>>
+<<set $QualityBeautySMR = 0>>
+<<set $BasicIntelligenceSMR = 0>>
+<<set $QualityIntelligenceSMR = 0>>
+<<set $IntelligenceEugenicsSMR = 0>>
+<<set $HeightEugenicsSMR = 0>>
+<<set $FaceEugenicsSMR = 0>>
+<<set $HonestySMR = 0>>
+<<set $ProRefugees = 0>>
+<<set $ProRecruitment = 0>>
+<<set $OralEncouragement = 0>>
+<<set $VaginalEncouragement = 0>>
+<<set $AnalEncouragement = 0>>
+<<set $OralDiscouragement = 0>>
+<<set $VaginalDiscouragement = 0>>
+<<set $AnalDiscouragement = 0>>
+<<set $CashForRep = 0>>
+<<set $RepForCash = 0>>
+<<set $Cash4Babies = 0>>
+<<set $PAPublic = 0>>
+<<set $CoursingAssociation = 0>>
 	<<set $Lurcher = 0>>
 	<<set $coursed = 0>>
-<<set $MixedMarriage to 0>>
-<<set $CulturalOpenness to 0>>
+<<set $MixedMarriage = 0>>
+<<set $CulturalOpenness = 0>>
 
 <<set $policyCost to 5000>>
-<<set $expiree to 0>>
-<<set $retiree to 0>>
-<<set $birthee to 0>>
+<<set $expiree = 0>>
+<<set $retiree = 0>>
+<<set $birthee = 0>>
 <<set $retirementAge to 45>>
 <<set $customRetirementAge to 45>>
-<<set $CustomRetirementAgePolicy to 0>>
-<<set $BioreactorRetirement to 0>>
-<<set $ArcadeRetirement to 0>>
-<<set $CitizenRetirement to 0>>
-<<set $SexMilestoneRetirement to 0>>
-<<set $MilkMilestoneRetirement to 0>>
-<<set $BirthsMilestoneRetirement to 0>>
-<<set $KillsMilestoneRetirement to 0>>
+<<set $CustomRetirementAgePolicy = 0>>
+<<set $BioreactorRetirement = 0>>
+<<set $ArcadeRetirement = 0>>
+<<set $CitizenRetirement = 0>>
+<<set $SexMilestoneRetirement = 0>>
+<<set $MilkMilestoneRetirement = 0>>
+<<set $BirthsMilestoneRetirement = 0>>
+<<set $KillsMilestoneRetirement = 0>>
 <<set $retirementSex = 10000>>
 <<set $retirementMilk to 50000>>
 <<set $retirementBirths to 5>>
 <<set $retirementKills to 3>>
+<<set $nicaea = 0>>
+<<set $nicaeaAnnounceable = 0>>
+<<set $nicaeaAnnounced = 0>>
+<<set $nicaeaPreparation = 0>>
+<<set $nicaeaPower = 0>>
+<<set $nicaeaHeld = 0>>
 
 <<set $oralUseWeight to 5>>
 <<set $vaginalUseWeight to 5>>
@@ -1377,33 +1386,33 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $nextButton to "END WEEK">>
 <<set $nextLink to "EW Slaves">>
 
-<<set $customSlaveOrdered to 0>>
+<<set $customSlaveOrdered = 0>>
 <<set $customSlave to {slaveName: "custom", birthName: "custom", weekAcquired: 1, origin: 0, career: 0, ID: 0, prestige: 0, pornFame: 0, pornFameSpending: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race:"white", markings: "none", eyes: 1, eyeColor: "brown", hColor: "brown", pubicHColor: "brown", skin: 0, hLength: 60, hStyle: 0, pubicHStyle: "neat", waist: 0, corsetPiercing: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 500, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute",  nipplesPiercing: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 2, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "no default setting", tonguePiercing: 0, vagina: 1, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregType: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 1, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, balls: 0, scrotum: 0, ovaries: 1, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules:"restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", buttplug: "none", intelligence: 0,  intelligenceImplant: 0, energy: 50, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, bellyImplant: 0, bellySag: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, actualAge: 18, visualAge: 18, physicalAge: 18, mother: 0, father: 0, sisters: 0, daughters: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none"}>>
 
-<<set $huskSlaveOrdered to 0>>
-<<set $huskSlave to {age: 18, nationality: "slave", race: "white", sex: 1, virgin: 0}>>
+<<set $huskSlaveOrdered = 0>>
+<<set $huskSlave = {age: 18, nationality: "slave", race: "white", sex: 1, virgin: 0}>>
 
-<<set $familyObject to {ID: 0, slaveName: "blank", actualAge: 0, birthWeek: 0}>>
+<<set $familyObject = {ID: 0, slaveName: "blank", actualAge: 0, birthWeek: 0}>>
 
 /non-vanilla shit/
-<<set $pedo_mode to 0>>
-<<set $one_time_age_overrides_pedo_mode to 0>>
-<<set $minimumSlaveAge to 16>>
-<<set $fertilityAge to 13>>
+<<set $pedo_mode = 0>>
+<<set $one_time_age_overrides_pedo_mode = 0>>
+<<set $minimumSlaveAge = 16>>
+<<set $fertilityAge = 13>>
 <<silently>>
 FertilityAge($fertilityAge)
 <</silently>>
-<<set $potencyAge to 13>>
-<<set $activeSlaveOneTimeMinAge to 0>>
-<<set $activeSlaveOneTimeMaxAge to 999>>
-<<set $AgePenalty to 1>>
-<<set $precociousPuberty to 0>>
+<<set $potencyAge = 13>>
+<<set $activeSlaveOneTimeMinAge = 0>>
+<<set $activeSlaveOneTimeMaxAge = 999>>
+<<set $AgePenalty = 1>>
+<<set $precociousPuberty = 0>>
 <<set $targetAge = $minimumSlaveAge>>
 
 /% Begin mod section: toggle whether slaves lisp. %/
-<<set $disableLisping to 0>>
+<<set $disableLisping = 0>>
 /% End mod section: toggle whether slaves lisp. %/
-<<set $cheatMode to 0>>
+<<set $cheatMode = 0>>
 <<set $weightAffectsAssets to 1>>
 <<set $curativeSideEffects to 1>>
 
@@ -1461,36 +1470,36 @@ FertilityAge($fertilityAge)
 /* Security Force Variables [SFVAR] */
 
 /* Variable for extra content enabling */
-<<set $SFMODToggle to 0>>					/* Does the player want to see the SF module at all? */
+<<set $SFMODToggle = 0>>					/* Does the player want to see the SF module at all? */
 
 /* Variables for the initial events and presentation logic */
-<<set $securityForceCreate to 0>> 					/* Has the player chosen to create the SF? Used for initial events */
-<<set $securityForceEventSeen to 0>>				/* Has the player seen the SF event? Used to avoid re-event */
+<<set $securityForceCreate = 0>> 					/* Has the player chosen to create the SF? Used for initial events */
+<<set $securityForceEventSeen = 0>>				/* Has the player seen the SF event? Used to avoid re-event */
 <<set $securityForceName to "Security Force">>		/* What is the SF's name? */
-<<set $securityForceActive to 0>>					/* SF is active - activates end of turn screen logic */
+<<set $securityForceActive = 0>>					/* SF is active - activates end of turn screen logic */
 
 /* Variables for the SF control panel and logic */
-<<set $securityForceSubsidyActive to 0>>			/* Is the player having to subsidize the SF? */
-<<set $securityForceRecruit to 0>>					/* How many recruits has the SF attracted this week? Used in recruitment calcs */
-<<set $securityForceTrade to 0>>					/* How much trade has the SF encouraged this week? Used for rep calcs */
-<<set $securityForceBooty to 0>>					/* How much money has the SF made this week? Used in money calcs */
-<<set $securityForceIncome to 0>>					/* What was the final, adjusted take for the SF this week? Used for EOW text */
-<<set $securityForceProfitable to 0>>				/* Is the SF profitable? Used for EOW text */
+<<set $securityForceSubsidyActive = 0>>			/* Is the player having to subsidize the SF? */
+<<set $securityForceRecruit = 0>>					/* How many recruits has the SF attracted this week? Used in recruitment calcs */
+<<set $securityForceTrade = 0>>					/* How much trade has the SF encouraged this week? Used for rep calcs */
+<<set $securityForceBooty = 0>>					/* How much money has the SF made this week? Used in money calcs */
+<<set $securityForceIncome = 0>>					/* What was the final, adjusted take for the SF this week? Used for EOW text */
+<<set $securityForceProfitable = 0>>				/* Is the SF profitable? Used for EOW text */
 <<set $securityForceFocus to "recruit">>			/* What is the SF's assigned job? */
 <<set $securityForceRulesOfEngagement to "hold">>	/* What are the SF's ROE outside the arcology? */
 <<set $securityForceAccountability to "strict">>	/* Is the SF being held accountable for its actions outside the arcology? */
-<<set $securityForceDepravity to 0>>				/* How depraved has the SF become? Used for flavor text injections. */
-<<set $securityForceUpgradeToken to 0>>				/* Flag to keep track of single upgrade/week. */
-<<set $securityForceGiftToken to 0>>				/* Flag to keep track of single gift/week. */
+<<set $securityForceDepravity = 0>>				/* How depraved has the SF become? Used for flavor text injections. */
+<<set $securityForceUpgradeToken = 0>>				/* Flag to keep track of single upgrade/week. */
+<<set $securityForceGiftToken = 0>>				/* Flag to keep track of single gift/week. */
 
 /* Variables for the SF Personnel/Gear */
 <<set $securityForcePersonnel to 40>> 				/* How big is the SF? Maxes out at battalion/regimental (~1000) strength */
-<<set $securityForceInfantryPower to 0>>			/* How many infantry upgrades has the player bought? */
-<<set $securityForceVehiclePower to 0>>				/* How many vehicle upgrades has the player bought? */
-<<set $securityForceAircraftPower to 0>>			/* How many aircraft upgrades has the player bought? */
-<<set $securityForceDronePower to 0>>				/* How many drone upgrades has the player bought? */
-<<set $securityForceStimulantPower to 0>>			/* How many stimulant upgrades has the player bought? */
-<<set $securityForceArcologyUpgrades to 0>>			/* How many militarized arcology upgrades has the player bought? */
+<<set $securityForceInfantryPower = 0>>			/* How many infantry upgrades has the player bought? */
+<<set $securityForceVehiclePower = 0>>				/* How many vehicle upgrades has the player bought? */
+<<set $securityForceAircraftPower = 0>>			/* How many aircraft upgrades has the player bought? */
+<<set $securityForceDronePower = 0>>				/* How many drone upgrades has the player bought? */
+<<set $securityForceStimulantPower = 0>>			/* How many stimulant upgrades has the player bought? */
+<<set $securityForceArcologyUpgrades = 0>>			/* How many militarized arcology upgrades has the player bought? */
 <<set $securityForceMissionEfficiency to 1>>		/* How efficient is the SF at completing its assigned task? (Upgrades*Drug Multiplier) */
 
-<<goto "Alpha disclaimer">>
\ No newline at end of file
+<<goto "Alpha disclaimer">>
diff --git a/src/js/accordianJS.tw b/src/js/accordianJS.tw
new file mode 100644
index 0000000000000000000000000000000000000000..b08ece1e15e002a34223e1136d060def95eb0b26
--- /dev/null
+++ b/src/js/accordianJS.tw
@@ -0,0 +1,42 @@
+:: accordionJS [script]
+/* Accordion 000-250-006 */
+
+/*
+ * We're making changes to the DOM, so we need to make them *after* everything has been generated
+ * Sticking this all in postdisplay calls reduces the chance of there being a timing conflict
+ *   with other scripts, since anything poking the DOM here will be done last
+ *
+ * Dev Note: The accordion mod should be able to turn *anything* into an accordion. This iteration
+ *   is configured tightly for the end of week report runs, but it shouldn't be that hard to adapt for 
+ *   other uses, like character bios. For now, I'll see what other extra-long passages of cosmetic text
+ *   might benefit.
+ *
+ * 000-250-006 03092017
+*/
+
+postdisplay["doAccordionSet"] = function (content) {
+    if (variables().useAccordion == 1) {
+        Array.prototype.slice.call(document.querySelectorAll('.macro-display'))
+        .forEach(function(element) {
+            element.classList.add('accHidden');
+        });
+    }
+}
+
+postdisplay["doAccordion"] = function (content) {
+    var acc = document.getElementsByClassName("accordion");
+    var i;
+
+    for (i = 0; i < acc.length; i++) {
+        acc[i].onclick = function() {
+            this.classList.toggle("active");
+            var panel = this.nextElementSibling;
+            if (panel.style.maxHeight){
+                panel.style.maxHeight = null;
+            } else {
+                panel.style.maxHeight = panel.scrollHeight + "px";
+            } 
+        }
+    }
+}
+
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index d29ed4204cb37c77441f3e9da23cacef492d9cc3..868a2febe151b21f39ce49968c111f37db168311 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -387,7 +387,7 @@ The previous owner seems to have left in something of a hurry.
 		<<set $activeSlave.entertainSkill = 100, $activeSlave.whoreSkill = 100>>
 		<<SoftenBehavioralFlaw $activeSlave>>
 		<<SoftenSexualFlaw $activeSlave>>
-		<<set $activeSlave.clothes = "a slutty quipao", $activeSlave.collar = "pretty jewelry", $activeSlave.shoes = "heels">>
+		<<set $activeSlave.clothes = "a slutty qipao", $activeSlave.collar = "pretty jewelry", $activeSlave.shoes = "heels">>
 		<<set $activeSlave.assignment = "be your Head Girl", $HeadGirl = $activeSlave>>
 	<<case "Eugenics">>
 		<<display "Generate New Slave">>
diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw
index 285c885e851bdb23109e8fe26daf2d779573d651..92c74691d80c0e44b787ffc77d7dfb64d02cd98e 100644
--- a/src/npc/fFeelings.tw
+++ b/src/npc/fFeelings.tw
@@ -6,104 +6,38 @@
 	<<set _lisping = 1>>
 <</if>>
 
-<<if _lisping == 1>>
-	<<if def $PC.customTitleLisp>>
-		<<set _PCTitle = $PC.customTitleLisp>>
-	<<elseif $PC.title != 0>>
-		<<set _PCTitle = "Mathter">>
-	<<else>>
-		<<set _PCTitle = "Mithtreth">>
-	<</if>>
-<<else>>
-	<<if def $PC.customTitle>>
-		<<set _PCTitle = $PC.customTitle>>
-	<<elseif $PC.title != 0>>
-		<<set _PCTitle = "Master">>
-	<<else>>
-		<<set _PCTitle = "Mistress">>
-	<</if>>
-<</if>>
-
 <<if ($activeSlave.devotion < -50)>>
 	She
 	<<if ($activeSlave.trust >= -20)>>
-		<<if canTalk($activeSlave) == false>>
-			gestures
-		<<elseif (_lisping == 1)>>
-			lisps
-		<<else>>
-			declares
-		<</if>>
-		angrily that it's wrong to keep her a slave, and that you should free her.
+		<<if canTalk($activeSlave) == false>>gestures<<elseif (_lisping == 1)>>lisps<<else>>declares<</if>>	angrily that it's wrong to keep her a slave, and that you should free her.
 	<<elseif ($activeSlave.trust >= -50)>>
-		<<if canTalk($activeSlave) == false>>
-			gestures
-		<<elseif (_lisping == 1)>>
-			lisps
-		<<else>>
-			mutters
-		<</if>>
-		hesitantly that it's wrong to keep her a slave, and that you should free her.
+		<<if canTalk($activeSlave) == false>>gestures<<elseif (_lisping == 1)>>lisps<<else>>mutters<</if>> hesitantly that it's wrong to keep her a slave, and that you should free her.
 	<<else>>
-		<<if canTalk($activeSlave) == false>>
-			gestures a perfunctory plea not to hurt her.
-		<<elseif (_lisping == 1)>>
-			lisps a perfunctory "Pleathe don't hurt me, _PCTitle."
-		<<else>>
-			mutters a perfunctory "Please don't hurt me, _PCTitle."
-		<</if>>
+		<<if canTalk($activeSlave) == false>>gestures a perfunctory plea not to hurt her.<<else>>mutters a perfunctory "Plea<<s>>e don't hurt me, <<Master>>."<</if>>
 	<</if>>
 
 <<elseif ($activeSlave.devotion < -20)>>
 	She
-	<<if canTalk($activeSlave) == false>>
-		gestures
-	<<elseif (_lisping == 1)>>
-		lisps
-	<<else>>
-		mutters
-	<</if>>
+	<<if canTalk($activeSlave) == false>>gestures<<elseif (_lisping == 1)>>lisps<<else>>mutters<</if>>
 	<<if ($activeSlave.trust >= -20)>>
-		hesitantly that she does not like being a slave, and then
-		<<if canTalk($activeSlave) == false>>
-			lets her hands fall to her sides.
-		<<else>>
-			falls silent.
-		<</if>>
+		hesitantly that she does not like being a slave, and then <<if canTalk($activeSlave) == false>>lets her hands fall to her sides<<else>>falls silent<</if>>.
 	<<elseif ($activeSlave.trust >= -50)>>
-		fearfully that she does not like being a slave, and then
-		<<if canTalk($activeSlave) == false>>
-			lets her hands fall to her sides, shaking a little.
-		<<else>>
-			falls silent, shaking a little.
-		<</if>>
+		fearfully that she does not like being a slave, and then <<if canTalk($activeSlave) == false>>lets her hands fall to her sides, shaking a little<<else>>falls silent, shaking a little<</if>>.
 	<<else>>
-		a perfunctory
-		<<if canTalk($activeSlave) == false>>
-		plea not to hurt her.
-		<<elseif (_lisping == 1)>>
-		"Pleathe don't hurt me, _PCTitle."
-		<<else>>
-		"Please don't hurt me, _PCTitle."
-		<</if>>
+		a perfunctory <<if canTalk($activeSlave) == false>>plea not to hurt her<<else>>"Plea<<s>>e don't hurt me, <<Master>>."<</if>>
 	<</if>>
 
 <<elseif ($activeSlave.devotion <= 20)>>
 	She
-	<<if canTalk($activeSlave) == false>>
-		gestures
-	<<elseif (_lisping == 1)>>
-		lisps
-	<<else>>
-		says
-	<</if>>
-	<<if ($activeSlave.trust >= -20)>>
-		earnestly that she will do whatever you order her to.
-	<<elseif ($activeSlave.trust >= -50)>>
-		fearfully that she will do whatever you order her to, since she does not want to be locked up or beaten.
-	<<else>>
-		shakily that she will do whatever you order her to, since she does not want to be hurt or killed.
-	<</if>>
+	<<if canTalk($activeSlave) == false>>gestures<<else>><<say>>s<</if>> <<if ($activeSlave.trust >= -20)>>earnestly<<elseif ($activeSlave.trust >= -50)>>fearfully<<else>>shakily<</if>>
+	that she will do whatever you order her to, since she does not want to be
+	<<switch $activeSlave.standardPunishment>>
+	<<case "confinement">>shut up in the dark, which is of course her standard punishment.
+	<<case "whipping">>whipped, which is of course her standard punishment.
+	<<case "chastity">>put in restrictive chastity, which is of course her standard punishment.
+	<<default>>punished, not knowing what to expect when she's bad.
+	<</switch>>
+	Once she learns to accept slavery, she will be better able to open up.
 
 <<else>>
 
@@ -111,508 +45,199 @@
 	<<if canTalk($activeSlave) == false>>
 		She gestures that you're her <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>master<<else>>mistress<</if>>, and she will do her best to obey you. She continues to sign<<if $activeSlave.accent == 3>>, using gestures to supplant her poor $language<</if>>:
 	<<else>>
-		"You're my _PCTitle, and I'll do my be<<s>>t to obey you," she says
+		"You're my <<Master>>, and I'll do my be<<s>>t to obey you," she says
 	<</if>>
 <<elseif ($activeSlave.devotion <= 95)>>
 	<<if canTalk($activeSlave) == false>>
-		She gestures that you're her beloved _PCTitle. She continues to sign<<if $activeSlave.accent == 3>>, using gestures to supplant her poor $language<</if>>:
+		She gestures that you're her beloved <<Master>>. She continues to sign<<if $activeSlave.accent == 3>>, using gestures to supplant her poor $language<</if>>:
 	<<else>>
-		"<<if ($activeSlave.relationship == -3)>>I'm content with being your wife,<<else>>You're<</if>> my beloved _PCTitle, and you know
-		<<if (_lisping == 1)>>
-			what'th betht for me," she lisps
-		<<else>>
-			what's best for me," she says
-		<</if>>
+		"<<if ($activeSlave.relationship == -3)>>I'm content with being your wife,<<else>>You're<</if>> my beloved <<Master>>, and you know	what'<<s>> be<<s>>t for me," she <<say>>s.
 	<</if>>
 <<else>>
 	<<if canTalk($activeSlave) == false>>
 		She makes a simple gesture, meaning "I love you." She continues to sign<<if $activeSlave.accent == 3>>, using gestures to supplant her poor $language<</if>>:
 	<<else>>
-		<<if (_lisping == 1)>>
-			"I love you," she lisps
-		<<else>>
-			"I love you," she says
-		<</if>>
-		<<if ($activeSlave.voice == 1)>>
-			in her deep voice.
-		<<elseif ($activeSlave.voice == 2)>>
-			in her pretty voice.
-		<<else>>
-			<<if ($activeSlave.voiceImplant == 1)>>
-				in her high bimbo voice.
-			<<else>>
-				in her girly voice.
-			<</if>>
-		<</if>>
+		"I love you," she <<says>> in her <<if ($activeSlave.voice == 1)>>deep<<elseif ($activeSlave.voice == 2)>>pretty<<else>><<if ($activeSlave.voiceImplant == 1)>>high bimbo<<else>>girly<</if>><</if>> voice.
 	<</if>>
 <</if>>
 
 <<if $activeSlave.trust < -50>>
-	<<if (_lisping == 1)>>
 	"I'm terrified of you.
-	<<else>>
-	"I'm terrified of you.
-	<</if>>
 <<elseif $activeSlave.trust < -20>>
-	<<if (_lisping == 1)>>
-	"You frighten me, thometimeth.
-	<<else>>
-	"You frighten me, sometimes.
-	<</if>>
+	"You frighten me, <<s>>ometime<<s>>.
 <<elseif $activeSlave.trust < 20>>
 	"I know you have total power over me.
 <<elseif $activeSlave.trust < 50>>
-	<<if (_lisping == 1)>>
-	"You know what'th betht for me.
-	<<else>>
-	"You know what's best for me.
-	<</if>>
+	"You know what'<<s>> be<<s>>t for me.
 <<elseif $activeSlave.trust < 95>>
-	<<if (_lisping == 1)>>
-	"I trutht you to know what'th betht for me.
-	<<else>>
-	"I trust you to know what's best for me.
-	<</if>>
+	"I tru<<s>>t you to know what'<<s>> be<<s>>t for me.
 <<else>>
-	<<if (_lisping == 1)>>
-	"I trutht you completely.
-	<<else>>
-	"I trust you completely.
-	<</if>>
+	"I tru<<s>>t you completely.
 <</if>>
 
 <<if ($activeSlave.speechRules == "restrictive")>>
 	<<if ($activeSlave.devotion > 20)>>
-	<<if (_lisping == 1)>>
-		Thank you tho much for a chance to talk a little, _PCTitle. I underthtand why I mutht be thilent, but it'th nice to get the chance.
-	<<else>>
-		Thank you so much for a chance to talk a little, _PCTitle. I understand why I must be silent, but it's nice to get the chance.
-	<</if>>
+		Thank you <<s>>o much for a chance to talk a little, <<Master>>. I under<<s>>tand why I must be <<s>>ilent, but it's ni<<c>>e to get the chance.
 	<<else>>
-	<<if (_lisping == 1)>>
-		Thank you tho much for a chance to talk a little, _PCTitle. It'th hard, never thpeaking.
-	<<else>>
-		Thank you so much for a chance to talk a little, _PCTitle. It's hard, never speaking.
-	<</if>>
+		Thank you <<s>>o much for a chance to talk a little, <<Master>>. It's hard, never <<s>>peaking.
 	<</if>>
 <</if>>
 
 <<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.energy > 95)>>
-		I love being your nympho
-		<<if _lisping == 1>>
-			thlut.
-		<<else>>
-			slut.
-		<</if>>
+		I love being your nympho <<s>>lut.
 	<<elseif ($activeSlave.fetishStrength > 60)>>
 		<<switch $activeSlave.fetish>>
 		<<case "submissive">>
-			I love it when you
-			<<if _lisping == 1>>
-				uthe me.
-			<<else>>
-				use me.
-			<</if>>
+			I love it when you u<<s>>e me.
 		<<case "dom">>
-			I love fucking the other
-			<<if _lisping == 1>>
-				thlaveth.
-			<<else>>
-				slaves.
-			<</if>>
+			I love fucking the other <<s>>lave<<s>>.
 		<<case "sadist">>
-			I love hurting the other
-			<<if _lisping == 1>>
-				thlaveth.
-			<<else>>
-				slaves.
-			<</if>>
+			I love hurting the other <<s>>lave<<s>>.
 		<<case "masochist">>
 			I love it when you hurt me.
 		<<case "cumslut">>
-			I love
-			<<if _lisping == 1>>
-				<<if $PC.dick != 0>>thucking your cock<<if $PC.vagina == 1>> and eathing you out<</if>>.<<else>>eating you out.<</if>>
-			<<else>>
-				<<if $PC.dick != 0>>sucking on your cock<<if $PC.vagina == 1>> and eathing you out<</if>>.<<else>>eating you out.<</if>>
-			<</if>>
+			I love <<if $PC.dick != 0>><<s>>ucking on your cock<<if $PC.vagina == 1>> and eating you out<</if>>.<<else>>eating you out.<</if>>
 		<<case "humiliation">>
-			I love it when you
-			<<if _lisping == 1>>
-				uthe
-			<<else>>
-				use
-			<</if>>
-			me in public.
+			I love it when you u<<s>>e me in public.
 		<<case "buttslut">>
-			I love it when you
-			<<if _lisping == 1>>
-				uthe my ath.
-			<<else>>
-				use my ass.
-			<</if>>
+			I love it when you u<<s>>e my a<<ss>>.
 		<<case "pregnancy">>
 			I love being your breeder.
 		<<case "boobs">>
-			I love it when you pinch my
-			<<if _lisping == 1>>
-				nippleth.
-			<<else>>
-				nipples.
-			<</if>>
+			I love it when you pinch my nipple<<s>>.
 		<<default>>
-			<<if _lisping == 1>>
-				It'th boring of me, _PCTitle, but I really do love normal thex.
-			<<else>>
-				It's boring of me, _PCTitle, but I really do love normal sex.
-			<</if>>
+			It'<<s>> boring of me, <<Master>>, but I really do love normal <<s>>ex.
 		<</switch>>
 	<</if>>
 <</if>>
 <<if ($activeSlave.attrKnown == 1)>>
 	<<if ($activeSlave.attrXX > 80)>>
-	I love fucking the other
-	<<if _lisping == 1>>
-		girlth.
-	<<else>>
-		girls.
-	<</if>>
+		I love fucking the other girl<<s>>.
 	<<elseif ($activeSlave.attrXX > 60)>>
-	<<if _lisping == 1>>
-		It's nithe, fucking the other girlth.
-	<<else>>
-		It's nice, fucking the other girls.
-	<</if>>
+		It's ni<<c>>e, fucking the other girl<<s>>.
 	<</if>>
 	<<if ($activeSlave.attrXY > 80)>>
-	I love, you know,
-	<<if _lisping == 1>>
-		thpending time with thlaveth with dickth,
-	<<else>>
-		spending time with slaves with dicks,
-	<</if>>
-	_PCTitle.
+		I love, you know, <<s>>pending time with <<s>>lave<<s>> with dick<<s>>, <<Master>>.
 	<<elseif ($activeSlave.attrXY > 60)>>
-	<<if _lisping == 1>>
-		It'th nithe, you know, thpending time with thlaveth with dickth,
-	<<else>>
-		It's nice, you know, spending time with slaves with dicks,
-	<</if>>
-	_PCTitle.
+		It's ni<<c>>e, you know, <<s>>pending time with <<s>>laves with dick<<s>>, <<Master>>.
 	<</if>>
 <<else>>
-	<<if _lisping == 1>>
-		I wish I underthtood my own thexuality better.
-	<<else>>
-		I wish I understood my own sexuality better.
-	<</if>>
+	I wish I under<<s>>tood my own <<s>>exuality better.
 <</if>>
 
-My favorite part of my body is
+My favorite part of my body i<<s>>
 <<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.energy > 95)>>
-	- is - I can't
-	<<if _lisping == 1>>
-		dethide!
-	<<else>>
-		decide!
-	<</if>>
-	<<if $activeSlave.vagina > -1>>
-		<<if _lisping == 1>>
-		I love my puthy of courthe.
-		<<else>>
-		I love my pussy of course.
-		<</if>>
-		<<if $activeSlave.clit > 0>>
-			<<if _lisping == 1>>
-			Having another thlave thuck my big clit ith incredible.
-			<<else>>
-			Having another slave suck my big clit is incredible.
-			<</if>>
-		<</if>>
-		But
-	<<else>>
-		Of course
-	<</if>>
-	<<if $activeSlave.anus > 1>>
-		<<if _lisping == 1>>
-		taking big dickth up my ath ith lotth of fun.
-		<<else>>
-		taking big dicks up my ass is lots of fun.
-		<</if>>
-	<<elseif $activeSlave.anus > 0>>
-		taking cock in my tight
-		<<if _lisping == 1>>
-		ath ith lotth of fun.
-		<<else>>
-		ass is lots of fun.
-		<</if>>
-	<<else>>
-		I can't wait to get
-		<<if _lisping == 1>>
-		buttraped for the firtht time.
-		<<else>>
-		buttraped for the first time.
-		<</if>>
-	<</if>>
-	<<if $activeSlave.dick > 3>>
-		<<if _lisping == 1>>
-		My big cock thwingth around when I get thodomized from behind, it'th great.
-		<<else>>
-		My big cock swings around when I get sodomized from behind, it's great.
-		<</if>>
-	<<elseif $activeSlave.dick > 1>>
-		<<if _lisping == 1>>
-		My dick flopth around when I get thodomized from behind, it'th great.
-		<<else>>
-		My dick flops around when I get sodomized from behind, it's great.
-		<</if>>
-	<<elseif $activeSlave.dick > 0>>
-		My tiny little bitch dick
-		<<if _lisping == 1>>
-		ith only good for encouraging people to moletht my butthole,
-		<<else>>
-		is only good for encouraging people to molest my butthole,
-		<</if>>
-		but I don't mind at all.
-	<</if>>
-	<<if ($activeSlave.nipples != "tiny")>>
-		<<if _lisping == 1>>
-		I love my big nippleth, it'th like having clitth on my chetht.
-		<<else>>
-		I love my big nipples, it's like having clits on my chest.
-		<</if>>
-	<</if>>
-	<<if ($activeSlave.lactation > 0)>>
-		<<if _lisping == 1>>
-		Being able to nurthe ith really thexy, I alwayth
-		<<else>>
-		Being able to nurse is really sexy, I always
-		<</if>>
-		want to fuck right after. Or during.
-	<</if>>
-	<<if ($activeSlave.boobs > 2000)>>
-		<<if _lisping == 1>>
-		My huge boobth are great, they're like an advertithement I want to fuck.
-		<<else>>
-		My huge boobs are great, they're like an advertisement I want to fuck.
-		<</if>>
-	<<elseif ($activeSlave.boobs > 700)>>
-		I like showing off my big
-		<<if _lisping == 1>>
-		boobth.
-		<<else>>
-		boobs.
-		<</if>>
-	<</if>>
-	<<if ($activeSlave.lips > 40)>>
-		<<if _lisping == 1>>
-		Can't forget my dick thucking lipth,
-		<<else>>
-		Can't forget my dick sucking lips,
+		- i<<s>> - I can't de<<c>>ide!
+		<<if $activeSlave.vagina > -1>>
+			I love my pu<<ss>>y of cour<<s>>e.
+			<<if $activeSlave.clit > 0>>Having another <<s>>lave <<s>>uck my big clit i<<s>> incredible.<</if>>
+			But
+		<<else>>
+			Of cour<<s>>e
+		<</if>>
+		<<if $activeSlave.anus > 1>>
+			taking big dick<<s>> up my a<<ss>> i<<s>> lot<<s>> of fun.
+		<<elseif $activeSlave.anus > 0>>
+			taking cock in my tight	a<<ss>> i<<s>> lot<<s>> of fun.
+		<<else>>
+			I love my little virgin butthole, but I can't wait to get a<<ss>>raped for the fir<<s>>t time.
+		<</if>>
+		<<if $activeSlave.dick > 3>>
+			My big cock <<s>>wing<<s>> around when I get <<s>>odomized from behind, it'<<s>> great.
+		<<elseif $activeSlave.dick > 1>>
+			My dick flop<<s>> around when I get <<s>>odomized from behind, it'<<s>> great.
+		<<elseif $activeSlave.dick > 0>>
+			My tiny little bitch dick i<<s>> good for encouraging people to mole<<s>>t my butthole.
+		<</if>>
+		<<if ($activeSlave.nipples != "tiny")>>I love my big nipple<<s>>, it's like having clit<<s>> on my che<<s>>t.<</if>>
+		<<if ($activeSlave.lactation > 0)>>Being able to nur<<s>>e is really <<s>>exy, I alway<<s>> want to fuck right after. Or during.<</if>>
+		<<if ($activeSlave.boobs > 2000)>>
+			My huge boob<<s>> are great, they're like an adverti<<s>>ement I want to fuck.
+		<<elseif ($activeSlave.boobs > 700)>>
+			I like showing off my big boob<<s>>.
 		<</if>>
-		I don't know what I'd do without them.
-	<<else>>
-		<<if _lisping == 1>>
-		Can't forget my lipth and tongue, getting people off ith fun too.
+		<<if ($activeSlave.lips > 40)>>
+			Can't forget my dick <<s>>ucking lip<<s>>, I don't know what I'd do without them.
 		<<else>>
-		Can't forget my lips and tongue, getting people off is fun too.
+			Can't forget my lip<<s>> and tongue, getting people off with them i<<s>> fun too.
 		<</if>>
-	<</if>>
 	<<elseif ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
-		<<if _lisping == 1>>
-		my $activeSlave.skin thkin, I like how it feelth
-		<<else>>
-		my $activeSlave.skin skin, I like how it feels
-		<</if>>
-		when you look me all over before you grab me.
+		my bare $activeSlave.skin <<s>>kin, I like how it feel<<s>> when you look me all over before you take me.
 	<<elseif ($activeSlave.fetish == "dom") && ($activeSlave.fetishStrength > 60) && ($activeSlave.muscles > 30)>>
-		<<if _lisping == 1>>
-		my muthcleth, I like how it feelth to be strong, forthing another thlave.
-		<<else>>
-		my muscles, I like how it feels to be strong, forcing another slave.
-		<</if>>
+		my mu<<s>>cle<<s>>, I like how it feel<<s>> to be <<s>>trong, forcing another <<s>>lave.
 	<<elseif ($activeSlave.fetish == "sadist") && ($activeSlave.fetishStrength > 60) && ($activeSlave.muscles > 30)>>
-		<<if _lisping == 1>>
-		my muthcleth, I like how it feelth to be strong, hitting another thlave.
-		<<else>>
-		my muscles, I like how it feels to be strong, hitting another slave.
-		<</if>>
+		my mu<<s>>cle<<s>>, I like how it feel<<s>> to be <<s>>trong, for<<c>>ing another <<s>>lave.
 	<<elseif ($activeSlave.fetish == "masochist") && ($activeSlave.fetishStrength > 60)>>
-		<<if _lisping == 1>>
-		my $activeSlave.skin thkin, I like how it lookth when it bruitheth.
-		<<else>>
-		my $activeSlave.skin skin, I like how it looks when it bruises.
-		<</if>>
+		my $activeSlave.skin <<s>>kin, I like how it looks when it brui<<s>>e<<s>>.
 	<<elseif ($activeSlave.fetish == "cumslut") && ($activeSlave.fetishStrength > 60)>>
-		<<if ($activeSlave.lips > 70)>>
-			my huge lipth, I like how everyone expecth to fathefuck me.
-		<<elseif ($activeSlave.lips > 40)>>
-			<<if ($activeSlave.lipsPiercing + $activeSlave.tonguePiercing > 2)>>
-			my lipth, I like how everyone expecth to fathefuck me.
-			<<else>>
-			my lips, I like how everyone expects to facefuck me.
-			<</if>>
+		<<if $activeSlave.lips > 40>>
+			my <<if $activeSlave.lips > 70>>huge <</if>>lip<<s>>, I like how everyone expect<<s>> to fa<<c>>efuck me.
+		<<elseif $PC.dick == 1>>
+			my mouth, I love how it	feel<<s>> to <<s>>uck a dick and drink the cum
 		<<else>>
-			my mouth, I love how it
-			<<if ($activeSlave.lipsPiercing + $activeSlave.tonguePiercing > 2)>>
-			feelth to thuck a dick.
-			<<else>>
-			feels to suck a dick.
-			<</if>>
+			my mouth, I love how it	feel<<s>> to eat pu<<ss>>y.
 		<</if>>
 	<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishStrength > 60)>>
-		my whole $activeSlave.race body, I like how it feels when everyone stares at me getting fucked.
+		my whole $activeSlave.skin body, I like how it feel<<s>> when everyone stare<<s>> at me getting fucked.
 	<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishStrength > 60)>>
 		<<if ($activeSlave.anus > 3)>>
-			<<if _lisping == 1>>
-			my gaping butthole, though I'm thad it'th tho fucked out. I can barely remember what anal pain feelth like.
-			<<else>>
-			my gaping butthole, though I'm sad it's so fucked out. I can barely remember what anal pain feels like.
-			<</if>>
+			my gaping butthole, though I'm <<s>>ad it's <<s>>o fucked out. I can barely remember what anal pain feel<<s>> like.
 		<<elseif ($activeSlave.anus > 2)>>
-			<<if _lisping == 1>>
-			my athputhy - I can take anything! It'th bathically replaced my <<if $activeSlave.dick > 0>>cock<<else>>cunt<</if>> ath my main thex organ.
-			<<else>>
-			my asspussy - I can take anything! It's basically replaced my <<if $activeSlave.dick > 0>>cock<<else>>pussy<</if>> as my main sex organ.
-			<</if>>
+			my a<<ss>>pu<<ss>>y - I can take anything! It's ba<<s>>ically replaced my <<if $activeSlave.dick > 0>>cock<<else>>pu<<ss>>y<</if>> as my main sex organ.
 		<<elseif ($activeSlave.anus > 1)>>
-			<<if _lisping == 1>>
-			my athhole, I like how I can take anyone'th cock. It'th bathically replaced my <<if $activeSlave.dick > 0>>cock<<else>>cunt<</if>> ath my main thex organ.
-			<<else>>
 			my asshole, I like how I can take anyone's cock. It's basically replaced my <<if $activeSlave.dick > 0>>cock<<else>>pussy<</if>> as my main sex organ.
-			<</if>>
 		<<else>>
-			<<if _lisping == 1>>
-			my tight little anuth, I like feeling it thtretch to take a dick.
-			<<else>>
-			my tight little anus, I like feeling it stretch to take a dick. It's basically replaced my <<if $activeSlave.dick > 0>>cock<<else>>pussy<</if>> as my main sex organ.
-			<</if>>
+			my tight little anu<<s>>, I like feeling it <<s>>tretch to take a fuck. It's ba<<s>>ically replaced my <<if $activeSlave.dick > 0>>cock<<else>>pu<<ss>>y<</if>> as my main <<s>>ex organ.
 		<</if>>
 	<<elseif ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
 		<<if ($activeSlave.preg > 0)>>
-			my pregnant belly, of
-			<<if _lisping == 1>>
-			courthe.
-			<<else>>
-			course.
-			<</if>>
+			my pregnant belly, of cour<<s>>e.
 		<<elseif ($activeSlave.dick > 0) && ($activeSlave.balls > 0)>>
-			my cock, I imagine knocking another
-			<<if _lisping == 1>>
-			thlave up all the time.
-			<<else>>
-			slave up all the time.
-			<</if>>
+			my cock, I imagine knocking another	<<s>>lave up all the time.
 		<<elseif ($activeSlave.weight > 10)>>
-			<<if _lisping == 1>>
-			my pluth tummy, I can imagine mythelf pregnant.
-			<<else>>
-			my plush tummy, I can imagine myself pregnant.
-			<</if>>
+			my plush tummy, I can imagine my<<s>>elf pregnant.
 		<<else>>
-			my tight tummy, I can imagine
-			<<if _lisping == 1>>
-			mythelf pregnant.
-			<<else>>
-			myself pregnant.
-			<</if>>
+			my tight tummy, I like to imagine how it would <<s>>well if I got pregnant.
 		<</if>>
 	<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
 		<<if ($activeSlave.lactation > 0)>>
-			<<if _lisping == 1>>
-			my milky nippleth of courthe.
-			<<else>>
-			my milky nipples of course.
-			<</if>>
+			my milky nipple<<s>> of cour<<s>>e.
 		<<elseif ($activeSlave.boobs > 2000)>>
-			<<if _lisping == 1>>
-			my huge boobth, I like how they're tho
-			<<else>>
-			my huge tits, I like how they're so
-			<</if>>
-			big they're the center of attention.
+			my huge tit<<s>>, I like how they're <<s>>o big they're the center of attention.
 		<<elseif ($activeSlave.nipples != "tiny")>>
-			<<if _lisping == 1>>
-			my big nippleth, it'th like having clitth on my chetht.
-			<<else>>
-			my big nipples, it's like having clits on my chest.
-			<</if>>
+			my big nipple<<s>>, it's like having clit<<s>> on my che<<s>>t.
 		<<elseif ($activeSlave.boobs > 700)>>
-			<<if _lisping == 1>>
-			my big boobth,
-			<<else>>
-			my big boobs,
-			<</if>>
-			I like how they feel wrapped around a dick.
+			my big boob<<s>>, I like how they feel wrapped around a dick.
 		<<else>>
-			<<if _lisping == 1>>
-			my boobs, of courthe.
-			<<else>>
-			my boobs, of course.
-			<</if>>
+			my boob<<s>>, of cour<<s>>e.
 		<</if>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
 		<<if ($activeSlave.lips > 70)>>
 			my huge lipth, I like how the other girlth will do anything for oral from me.
 		<<elseif ($activeSlave.dick > 1) && ($activeSlave.balls > 0)>>
-			my cock; I still do like fucking
-			<<if _lisping == 1>>
-			puthy.
-			<<else>>
-			pussy.
-			<</if>>
+			my cock; I still do like <<s>>laying pu<<ss>>y.
 		<<elseif ($activeSlave.lips > 40)>>
-			<<if _lisping == 1>>
-			my kithy lipth, I like how the other girlth
-			<<else>>
-			my kissy lips, I like how the other girls
-			<</if>>
-			will do anything for oral from me.
+			my ki<<ss>>y lip<<s>>, I like how it feels to make out with the other girl<<s>>.
 		<<else>>
-			<<if _lisping == 1>>
-			my lipth, I gueth. They're the betht way I have of getting girlth to like me.
-			<<else>>
-			my lips, I guess. They're the best way I have of getting girls to like me.
-			<</if>>
+			my lip<<s>>, I gue<<ss>>. They're the be<<s>>t way I have of getting girl<<s>> to like me.
 		<</if>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
 		<<if ($activeSlave.lips > 70)>>
 			my huge lipth, I like how anyone with a dick wants oral from me.
 		<<elseif ($activeSlave.dick > 1) && ($activeSlave.balls > 0)>>
-			<<if _lisping == 1>>
-			my cock. It'th fun doing it with two dickth involved!
-			<<else>>
-			my cock. It's fun having sex with two dicks involved!
-			<</if>>
+			my cock. It's fun having <<s>>ex with two dick<<s>> involved!
 		<<elseif ($activeSlave.lips > 40)>>
-			<<if _lisping == 1>>
-			my kithy lipth,
-			<<else>>
-			my kissy lips,
-			<</if>>
-			I like how anyone with a dick wants oral from me.
+			my ki<<ss>>y lips, I like how anyone with a dick <<s>>ee<<s>> them and want<<s>> to fuck them.
 		<<else>>
-			<<if _lisping == 1>>
-			my rear, I gueth. It'th the betht way I have of getting boyth to like me.
-			<<else>>
-			my rear, I guess. It's the best way I have of getting boys to like me.
-			<</if>>
+			my butt, I gue<<ss>>. It's the be<<s>>t way I have of getting boy<<s>> to like me.
 		<</if>>
 	<<else>>
-		<<if ($activeSlave.face > 0)>>
-		 my face, it's nice to be pretty.
-		<<else>>
-		 my face, I guess.
-		<</if>>
+		my fa<<c>>e, <<if ($activeSlave.face > 0)>>it's ni<<c>>e to be pretty<<else>>I gue<<ss>><</if>>.
 	<</if>>
 <<else>>
-	<<if ($activeSlave.face > 0)>>
-	 my face, it's nice to be pretty.
-	<<else>>
-	 my face, I guess.
-	<</if>>
+	my fa<<c>>e, <<if ($activeSlave.face > 0)>>it's ni<<c>>e to be pretty<<else>>I gue<<ss>><</if>>.
 <</if>>
 
 <<SexualRelease $activeSlave>>
@@ -635,59 +260,24 @@ My favorite part of my body is
 		Thank you for letting me
 		<<if ($activeSlave.fetishKnown == 1)>>
 			<<if ($activeSlave.energy > 95)>>
-				<<if _lisping == 1>>
-				_Amp _PCTitle. It'th
-				<<else>>
-				_Amp _PCTitle. It's
-				<</if>>
-				a good thing I can't actually go blind from it.
+				_Amp <<Master>>. It'<<s>> a good thing I can't actually go blind from it.
 			<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishStrength > 60)>>
-				_Amp _PCTitle. I love doing it where people can
-				<<if _lisping == 1>>
-				thee me.
-				<<else>>
-				see me.
-				<</if>>
+				_Amp <<Master>>. I love doing it where people can <<s>>ee me.
 			<<elseif ($activeSlave.fetish == "sadist") && ($activeSlave.fetishStrength > 60)>>
-				_Amp _PCTitle. I try to be nearby when a bitch
-				<<if _lisping == 1>>
-				getth punithed to I can mathturbate to it.
-				<<else>>
-				gets punished to I can masturbate to it.
-				<</if>>
+				_Amp <<Master>>. I try to be nearby when a bitch gets punished to I can ma<<s>>turbate to it.
 			<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				fuck my own athhole, _PCTitle.
-				<<else>>
-				fuck my own asshole, _PCTitle.
-				<</if>>
+				fuck my own a<<ss>>hole, <<Master>>.
 			<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				pamper my own nippleth, _PCTitle.
-				<<else>>
-				pamper my own nipples, _PCTitle.
-				<</if>>
+				pamper my own nipple<<s>>, <<Master>>.
 			<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-				_Amp _PCTitle. With all
-				<<if _lisping == 1>>
-				thethe hot girlth around, it'th
-				<<else>>
-				these hot girls around, it's
-				<</if>>
-				a good thing I can't actually go blind from it.
+				_Amp <<Master>>. With all the<<s>>e hot girl<<s>> around, it'<<s>> a good thing I can't actually go blind from it.
 			<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
-				_Amp _PCTitle. With all
-				<<if _lisping == 1>>
-				thethe hot cockth around, it'th
-				<<else>>
-				these hot cocks around, it's
-				<</if>>
-				a good thing I can't actually go blind from it.
+				_Amp <<Master>>. With all these hot cock<<s>> around, it'<<s>> a good thing I can't actually go blind from it.
 			<<else>>
-				_Amp _PCTitle.
+				_Amp <<Master>>.
 			<</if>>
 		<<else>>
-			_Amp _PCTitle.
+			_Amp <<Master>>.
 		<</if>>
 	<<elseif ($activeSlave.releaseRules == "sapphic")>>
 		Thank you for letting
@@ -695,138 +285,54 @@ My favorite part of my body is
 			<<if ($activeSlave.energy > 95)>>
 				me fuck everyone,
 			<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				the other thlaveth fuck me,
-				<<else>>
-				the other slaves fuck me,
-				<</if>>
-				I love doing it in the dormitory where they can all see me.
+				the other <<s>>lave<<s>> fuck me, I love doing it in the dormitory where they can all <<s>>ee me.
 			<<elseif ($activeSlave.fetish == "sadist") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				me abuthe the other thlaveth,
-				<<else>>
-				me abuse the other slaves,
-				<</if>>
+				me abu<<s>>e the other <<s>>lave<<s>>,
 			<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				the other thlaveth fuck my butthole,
-				<<else>>
-				the other slaves fuck my butthole,
-				<</if>>
+				the other <<s>>lave<<s>> fuck my butthole,
 			<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
-				<<if _lisping == 1>>
-				the other thlaveth play with my boobth,
-				<<else>>
-				the other slaves play with my boobs,
-				<</if>>
+				the other <<s>>laves play with my boob<<s>>,
 			<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-				<<if _lisping == 1>>
-				me bone the ladieth,
-				<<else>>
-				me bone the ladies,
-				<</if>>
+				me bone the ladie<<s>>,
 			<<else>>
-				me get off with the other
-				<<if _lisping == 1>>
-				girlth,
-				<<else>>
-				girls,
-				<</if>>
+				me get off with the other girl<<s>>,
 			<</if>>
 		<<else>>
 			me _Amp
 		<</if>>
-		_PCTitle.
+		<<Master>>.
 	<<else>>
 		<<if ($activeSlave.fetishKnown == 1)>>
 			<<if ($activeSlave.energy > 95)>>
-				I feel like I'm going
-				<<if _lisping == 1>>
-				crathy, _PCTitle, I'm tho horny.
-				<<else>>
-				crazy, _PCTitle, I'm so horny.
-				<</if>>
+				I feel like I'm going crazy, <<Master>>, I'm <<s>>o horny.
 			<<elseif ($activeSlave.fetishStrength > 60)>>
-			<<switch $activeSlave.fetish>>
-			<<case "submissive">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop
-				<</if>>
-				thinking about you holding me down and fucking me.
-			<<case "masochist">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thinking about you thpanking my worthleth bottom.
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop thinking about you spanking my worthless bottom.
-				<</if>>
-			<<case "humiliation">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thinking about everyone thtaring at my worthleth body.
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop thinking about everyone staring at my worthless body.
-				<</if>>
-			<<case "dom">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thinking about the other thlaveth,
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop thinking about the other slaves,
-				<</if>>
-				how it would feel to fuck them.
-			<<case "sadist">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thinking about the other thlaveth, how it would feel to hurt them.
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop thinking about the other slaves, how it would feel to hurt them.
-				<</if>>
-			<<case "cumslut">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thtaring at <<if $PC.dick == 1>>cockth and imagining them down my throat, cumming and cumming<<else>>cuntth and imagining how their juitheth tathte<</if>>.
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop staring at <<if $PC.dick == 1>>cocks and imagining them down my throat, cumming and cumming<<else>>pussies and imagining how their juices taste<</if>>.
-				<</if>>
-			<<case "buttslut">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. My aththhole ith killing me, all I want to to ith touch it and maththage it and thtretch it out.
-				<<else>>
-				I'm so horny, _PCTitle. My anus is killing me, all I want to to is touch it and massage it and stretch it out.
-				<</if>>
-			<<case "boobs">>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I want to rub my nippleth againtht everything.
-				<<else>>
-				I'm so horny, _PCTitle. I want to rub my nipples against everything.
-				<</if>>
-			<<case "pregnancy">>
-				<<if _lisping == 1>>
-				I withh I could _Amp _PCTitle. I can't get thethe thoughth of
-				<<else>>
-				I wish I could _Amp _PCTitle. I can't get these thoughts of
-				<</if>>
-				<<if ($activeSlave.preg < 4)>>pregnancy<<else>>birth<</if>> out of my head.
-			<</switch>>
+				<<switch $activeSlave.fetish>>
+				<<case "submissive">>
+					I'm <<s>>o horny, <<Master>>. I can't <<s>>top thinking about you holding me down and fucking me.
+				<<case "masochist">>
+					I'm <<s>>o horny, <<Master>>. I can't <<s>>top thinking about you <<s>>panking my worthle<<ss>> bottom.
+				<<case "humiliation">>
+					I'm <<s>>o horny, <<Master>>. I can't <<s>>top thinking about everyone <<s>>taring at my lewd body.
+				<<case "dom">>
+					I'm <<s>>o horny, <<Master>>. I can't <<s>>top thinking about the other <<s>>lave<<s>>,	how it would feel to fuck them.
+				<<case "sadist">>
+					I'm so horny, <<Master>>. I can't <<s>>top thinking about the other <<s>>lave<<s>>, how it would feel to hurt them.
+				<<case "cumslut">>
+					I'm <<s>>o horny, <<Master>>. I can't <<s>>top <<s>>taring at <<if $PC.dick == 1>>cock<<s>> and imagining them down my throat, cumming and cumming<<else>>pu<<ss>>ie<<s>> and imagining how their jui<<c>>e<<s>> ta<<s>>te<</if>>.
+				<<case "buttslut">>
+					I'm <<s>>o horny, <<Master>>. My anu<<s>> is killing me, all I want to to i<<s>> touch it and ma<<ss>>age it and fill it.
+				<<case "boobs">>
+					I'm <<s>>o horny, <<Master>>. I want to rub my nipple<<s>> against everything.
+				<<case "pregnancy">>
+					I wish I could _Amp <<Master>>. I can't get the<<s>>e thought<<s>> of <<if ($activeSlave.preg < 4)>>pregnan<<c>>y<<else>>birth<</if>> out of my head.
+				<</switch>>
 			<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-				<<if _lisping == 1>>
-				I'm tho horny, _PCTitle. I can't thtop thinking about the other thlaveth' beautiful puthieth and boobth and, and I want to fuck them tho bad.
-				<<else>>
-				I'm so horny, _PCTitle. I can't stop thinking about the other slaves' beautiful pussies and boobs and, and I want to fuck them so bad.
-				<</if>>
+				I'm <<s>>o horny, <<Master>>. I can't <<s>>top thinking about the other slaves' beautiful pu<<ss>>ie<<s>> and boob<<s>> and, and I want to fuck them <<s>>o bad.
 			<<else>>
-				I haven't been touching
-				<<if _lisping == 1>>
-				mythelf, _PCTitle, jutht like you thaid, but I'm really horny.
-				<<else>>
-				myself, _PCTitle, just like you said, but I'm really horny.
-				<</if>>
+				I haven't been touching	my<<s>>elf, <<Master>>, just like you <<s>>aid, but I'm really horny.
 			<</if>>
 		<<else>>
-			I haven't been touching
-			<<if _lisping == 1>>
-			mythelf, _PCTitle, jutht like you thaid, but I'm really horny.
-			<<else>>
-			myself, _PCTitle, just like you said, but I'm really horny.
-			<</if>>
+			I haven't been touching	my<<s>>elf, <<Master>>, just like you <<s>>aid, but I'm really horny.
 		<</if>>
 	<</if>>
 <</if>> /* Closes release check */
@@ -836,96 +342,37 @@ My favorite part of my body is
 		I love your
 		<<if $PC.dick == 1>>
 			<<if $PC.vagina == 1>>
-				body, _PCTitle," she
-				<<if _lisping == 1>>
-				lisps forthrightly. "I love your cock in my holeth, and your puthy is delithiouth.
-				<<else>>
-				says forthrightly. "I love your cock in my holes, and your pussy is delicious.
-				<</if>>
+				body, <<Master>>," she <<say>>s eagerly. "I love your cock in my hole<<s>>, and your pu<<ss>>y i<<s>> <<s>>o deliciou<<s>>.
 			<<else>>
-				cock, _PCTitle," she
-				<<if _lisping == 1>>
-				lisps forthrightly. "I love it in my holeth.
-				<<else>>
-				says forthrightly. "I love it in my holes.
-				<</if>>
+				cock, <<Master>>," she <<say>>s eagerly. "I love it in my hole<<s>>.
 			<</if>>
 		<<else>>
-			<<if _lisping == 1>>
-			puthy, _PCTitle," she lisps forthrightly. "I can jutht imagine your clit againtht my tongue.
-			<<else>>
-			pussy, _PCTitle," she says forthrightly. "I can just imagine your clit against my tongue.
-			<</if>>
+			pu<<ss>>y, <<Master>>," she <<say>>s eagerly. "I can ju<<s>>t imagine your clit again<<s>>t my tongue.
 		<</if>>
 	<<elseif ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
-		<<if $PC.boobs == 0>>
-			<<if _lisping == 1>>
-			Your thtrong chetht feelth tho
-			<<else>>
-			Your strong chest feels so
-			<</if>>
-			good on my back when you pin me down.
-		<</if>>
+		<<if $PC.boobs == 0>>Your <<s>>trong arm<<s>> feel<<s>> <<s>>o good when you hold me down.<</if>>
 	<<elseif ($activeSlave.fetish == "cumslut") && ($activeSlave.fetishStrength > 60)>>
 		<<if $PC.dick == 1>>
-			Your cum
-			<<if _lisping == 1>>ith<<else>>Your cum is<</if>>
-			incredible, _PCTitle. I would drink every drop of it, if I could.
+			Your cum i<<s>> incredible, <<Master>>. I would drink every drop of it, if I could.
 			<<if $PC.vagina == 1>>Oh, your femcum, too!<</if>>
 		<</if>>
 	<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishStrength > 60)>>
 		<<if $PC.dick == 1>>
-			I love, uh." She looks down, hesitating. "I love your cock, _PCTitle.
+			I love, uh." She looks down, hesitating. "I love your cock, <<Master>>.
 			<<if $PC.vagina == 1>>Um, and your vagina, too.<</if>>
 		<</if>>
 	<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishStrength > 60)>>
-		<<if $PC.dick == 1>>
-			I love your cock, _PCTitle," she
-			<<if _lisping == 1>>
-			lisps
-			<<else>>
-			says
-			<</if>>
-			forthrightly. "I love it up my hole.
-		<</if>>
+		<<if $PC.dick == 1>>I love your cock, <<Master>>," she <<says>>	eagerly. "I love it in my backdoor.<</if>>
 	<<elseif ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
-		<<if $PC.boobs == 1>>
-			You, uh." She looks down, hesitating. "You have really nice
-			<<if _lisping == 1>>
-			breathtth, _PCTitle.
-			<<else>>
-			breasts, _PCTitle.
-			<</if>>
-		<</if>>
+		<<if $PC.boobs == 1>>You, uh." She looks down, hesitating. "You have really ni<<c>>e breast<<s>>, <<Master>>.<</if>>
 	<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
-		<<if $PC.boobs == 1>>
-			<<if _lisping == 1>>
-			Your breathtth are incredible, _PCTitle," she lisps
-			<<else>>
-			Your breasts are incredible, _PCTitle," she says
-			<</if>>
-			forthrightly. "I love them.
-		<</if>>
+		<<if $PC.boobs == 1>>Your brea<<s>>t<<s>> are incredible, <<Master>>," she <<say>>s	eagerly. "I love them.
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-		<<if $PC.boobs == 1>>
-		You're, uh." She looks down, hesitating. "You're really hot, _PCTitle.
-		<</if>>
+		<<if $PC.boobs == 1>>You're, uh." She looks down, hesitating. "You're really hot, <<Master>>.<</if>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
-		<<if $PC.dick == 1>>
-		Your, uh." She looks down, hesitating. "Your cock is really hot, _PCTitle.
-		<</if>>
+		<<if $PC.dick == 1>>Your, uh." She looks down, hesitating. "Your cock is really hot, <<Master>>.<</if>>
 	<<else>>
-		<<if $PC.title == 1>>
-			You're, uh." She looks down, hesitating. "You're really
-			<<if _lisping == 1>>
-			handthome,
-			<<else>>
-			handsome,
-			<</if>>
-		<<else>>
-			You're, uh." She looks down, hesitating. "You're really pretty,
-		<</if>>
-		_PCTitle.
+		You're, uh." She looks down, hesitating. "You're really <<if $PC.title == 1>>hand<<s>>ome<<else>>pretty<</if>>,	<<Master>>.
 	<</if>>
 <</if>>
 
@@ -933,236 +380,96 @@ My favorite part of my body is
 <<if ($activeSlave.balls == 0)>>
 	<<if ($activeSlave.fetishKnown == 1)>>
 		<<if ($activeSlave.energy > 95)>>
-			I like being gelded." She giggles. "More
-			<<if _lisping == 1>>
-			cockth for me!
-			<<else>>
-			cocks for me!
-			<</if>>
+			I like being gelded." She giggles. "I don't have to be hard to get fucked!
 		<<elseif ($activeSlave.fetishStrength > 60)>>
-		<<switch $activeSlave.fetish>>
-		<<case "submissive">>
-			I don't mind being clipped; I like taking it.
-		<<case "masochist">>
-			Being gelded," she shivers,
-			<<if _lisping == 1>>
-			"hurtth thometimeth. I like it.
-			<<else>>
-			"hurts sometimes. I like it.
-			<</if>>
-		<<case "humiliation">>
-			I don't mind being clipped." She shivers. "Everyone
-			<<if _lisping == 1>>
-			knowth! It'th tho embarrathing.
-			<<else>>
-			knows! It's so embarrassing.
-			<</if>>
-		<<case "dom">>
-			<<if _lisping == 1>>
-			I thometimeth mith my ballth. It'th
-			<<else>>
-			I sometimes miss my balls. It's
-			<</if>>
-			a little harder to be dominant without them.
-		<<case "sadist">>
-			<<if _lisping == 1>>
-			I thometimeth mith my ballth. I thtill fantathize about raping the other girlth.
-			<<else>>
-			I sometimes miss my balls. I still fantasize about raping the other girls.
-			<</if>>
-		<<case "pregnancy">>
-			<<if _lisping == 1>>
-			I thometimeth mith my ballth. I thtill fantathize about getting the other girlth pregnant.
-			<<else>>
-			I sometimes miss my balls. I still fantasize about getting the other girls pregnant.
-			<</if>>
-		<<case "cumslut">>
-			I barely cum without my
-			<<if _lisping == 1>>
-			ballth. I mith, you know, cleaning up after mythelf. With my mouth.
-			<<else>>
-			balls. I miss, you know, cleaning up after myself. With my mouth.
-			<</if>>
-		<<case "buttslut">>
-			I really like being clipped. I think
-			<<if _lisping == 1>>
-			it'th leth dithtracting, you know, from my butthole.
-			<<else>>
-			it's less distracting, you know, from my butthole.
-			<</if>>
-		<<case "boobs">>
-			I don't mind being clipped. Between that and my
-			<<if _lisping == 1>>
-			boobth I feel like a nice little thlave girl.
-			<<else>>
-			boobs I feel like a nice little slave girl.
-			<</if>>
-		<</switch>>
+			<<switch $activeSlave.fetish>>
+			<<case "submissive">>
+				I don't mind being clipped. I like belong on the bottom.
+			<<case "masochist">>
+				Being gelded," she shivers,	"hurt<<s>> <<s>>ometime<<s>>. Make<<s>> people want to hurt you. I like it.
+			<<case "humiliation">>
+				I don't mind being clipped." She shivers. "Everyone	know<<s>>! It'<<s>> <<s>>o embarra<<ss>>ing.
+			<<case "dom">>
+				I <<s>>ometime<<s>> mi<<ss>> my ball<<s>>. It'<<s>> harder to be dominant without them.
+			<<case "sadist">>
+				I <<s>>ometime<<s>> mi<<ss>> my ball<<s>>. I <<s>>till fanta<<s>>ize about raping the other girl<<s>>.
+			<<case "pregnancy">>
+				I <<s>>ometime<<s>> mi<<ss>> my ball<<s>>. I <<s>>till fanta<<s>>ize about getting the other girl<<s>> pregnant.
+			<<case "cumslut">>
+				I barely cum without my	ball<<s>>. I mi<<ss>>, you know, cleaning up after my<<s>>elf. With my mouth.
+			<<case "buttslut">>
+				I really like being clipped. I think it'<<s>> le<<ss>> di<<s>>tracting, you know, from my butthole. And I <<s>>till have my pro<<s>>tate which i<<s>> what matter<<s>>.
+			<<case "boobs">>
+				I don't mind being clipped. Between that and my boob<<s>> I feel like a ni<<c>>e little <<s>>lave girl.
+			<</switch>>
 		<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-			<<if _lisping == 1>>
-			I thometimeth mith my ballth. I thtill fantathize about boning the other girlth.
-			<<else>>
-			I sometimes miss my balls. I still fantasize about boning the other girls.
-			<</if>>
+			I <<s>>ometime<<s>> mi<<ss>> my ball<<s>>. I <<s>>till fanta<<s>>ize about boning the other girl<<s>>.
 		<<else>>
 			<<if $activeSlave.devotion > 75>>
-				I love being your gelded
-				<<if _lisping == 1>>
-				thlave girl, _PCTitle.
-				<<else>>
-				slave girl, _PCTitle.
-				<</if>>
+				I love being your gelded <<s>>lave girl, <<Master>>.
 			<<else>>
-				<<if _lisping == 1>>
-				To be honetht, _PCTitle, I do mith having ballth, thometimeth.
-				<<else>>
-				To be honest, _PCTitle, I do miss having balls, sometimes.
-				<</if>>
+				To be hone<<s>>t, <<Master>>, I do mi<<ss>> having ball<<s>>, <<s>>ometime<<s>>.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $activeSlave.devotion > 75>>
-			I love being your gelded
-			<<if _lisping == 1>>
-			thlave girl, _PCTitle.
-			<<else>>
-			gelded slave girl, _PCTitle.
-			<</if>>
+			I love being your gelded <<s>>lave girl, <<Master>>.
 		<<else>>
-			<<if _lisping == 1>>
-			To be honetht, _PCTitle, I do mith having ballth, thometimeth.
-			<<else>>
-			To be honest, _PCTitle, I do miss having balls, sometimes.
-			<</if>>
+			To be hone<<s>>t, <<Master>>, I do mi<<ss>> having ball<<s>>, <<s>>ometime<<s>>.
 		<</if>>
 	<</if>>
 <<elseif ($activeSlave.hormones > 0)>>
 	<<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		I thometimeth with I could thtill get hard." She looks pensive. "Actually I don't care, getting fucked ith nice too.
-		<<else>>
-		I sometimes wish I could still get hard." She looks pensive. "Actually I don't care, getting fucked is nice too.
-		<</if>>
+		I <<s>>ometime<<s>> wish I could <<s>>till get hard." She looks pensive. "Actually, I don't really care, getting fucked i<<s>> ni<<c>>e too.
 	<<elseif ($activeSlave.fetishStrength > 60)>>
-	<<switch $activeSlave.fetish>>
-	<<case "submissive">>
-		I don't mind the
-		<<if _lisping == 1>>
-		hormoneth keeping me thoft.
-		<<else>>
-		hormones keeping me soft.
-		<</if>>
-		I like getting fucked, anyway.
-	<<case "masochist">>
-		I don't mind the
-		<<if _lisping == 1>>
-		hormoneth keeping me thoft. I think it encourageth people to hurt me.
-		<<else>>
-		hormones keeping me soft. I think it encourages people to hurt me.
-		<</if>>
-	<<case "humiliation">>
-		I don't mind being impotent." She shivers. "Everyone
-		<<if _lisping == 1>>
-		knowth! It'th tho embarrathing.
-		<<else>>
-		knows! It's so embarrassing.
-		<</if>>
-	<<case "dom">>
-		<<if _lisping == 1>>
-		I with the hormoneth didn't thtop me from getting hard. It'th tough to be dominant when I'm all thoft.
-		<<else>>
-		I wish the hormones didn't stop me from getting hard. It's tough to be dominant when I'm all soft.
-		<</if>>
-	<<case "sadist">>
-		<<if _lisping == 1>>
-		I with the hormoneth didn't thtop me from getting hard. I thtill fantathize about raping the other girlth.
-		<<else>>
-		I wish the hormones didn't stop me from getting hard. I still fantasize about raping the other girls.
-		<</if>>
-	<<case "cumslut">>
-		<<if _lisping == 1>>
-		I cum a lot leth on thethe hormoneth. I mith, you know, cleaning up after mythelf. With my mouth.
-		<<else>>
-		I cum a lot less on these hormones. I miss, you know, cleaning up after myself. With my mouth.
-		<</if>>
-	<<case "buttslut">>
-		<<if _lisping == 1>>
-		I don't mind the hormoneth keeping me thoft.
-		<<else>>
-		I don't mind the hormones keeping me soft.
-		<</if>>
-		I prefer taking it, anyway." She turns and sticks her ass out. "Up the butt.
-	<<case "boobs">>
-		<<if _lisping == 1>>
-		I don't mind the hormoneth keeping me thoft. Between that and my boobth I feel like a cute thlave girl.
-		<<else>>
-		I don't mind the hormones keeping me soft. Between that and my boobs I feel like a cute slave girl.
-		<</if>>
-	<<case "pregnancy">>
-		<<if _lisping == 1>>
-		I with the hormoneth didn't thtop me from getting hard. I thtill fantathize about getting the other girlth pregnant.
-		<<else>>
-		I wish the hormones didn't stop me from getting hard. I still fantasize about getting the other girls pregnant.
-		<</if>>
-	<</switch>>
+		<<switch $activeSlave.fetish>>
+		<<case "submissive">>
+			I don't mind the hormone<<s>> keeping me <<s>>oft. I like getting fucked, anyway.
+		<<case "masochist">>
+			I don't mind the hormone<<s>> keeping me <<s>>oft. I think it encourage<<s>> people to treat me like I de<<s>>erve.
+		<<case "humiliation">>
+			I don't mind being impotent." She shivers. "Everyone know<<s>>! It'<<s>> <<s>>o embarra<<ss>>ing.
+		<<case "dom">>
+			I wish the hormone<<s>> didn't <<s>>top me from getting hard. It's tough to be dominant when I'm all <<s>>oft.
+		<<case "sadist">>
+			I wish the hormone<<s>> didn't <<s>>top me from getting hard. I <<s>>till fanta<<s>>ize about raping the other girl<<s>>.
+		<<case "cumslut">>
+			I cum a lot le<<ss>> on the<<s>>e hormone<<s>>. I mi<<ss>>, you know, cleaning up after my<<s>>elf. With my mouth.
+		<<case "buttslut">>
+			I don't mind the hormone<<s>> keeping me <<s>>oft. I prefer taking it, anyway." She turns and sticks her ass out. "Up the butt.
+		<<case "boobs">>
+			I don't mind the hormone<<s>> keeping me <<s>>oft. Between that and my boob<<s>> I feel like a cute vlave girl.
+		<<case "pregnancy">>
+			I wish the hormones didn't <<s>>top me from getting hard. I <<s>>till fanta<<s>>ize about getting the other girl<<s>> pregnant.
+		<</switch>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-		<<if _lisping == 1>>
-		I with the hormoneth didn't thtop me from getting hard. I thtill fantathize about boning the other girlth.
-		<<else>>
-		I wish the hormones didn't stop me from getting hard. I still fantasize about boning the other girls.
-		<</if>>
+		I wish the hormone<<s>> didn't <<s>>top me from getting hard. I <<s>>till fanta<<s>>ize about boning the other girl<<s>>.
 	<<else>>
 		<<if $activeSlave.devotion > 75>>
-			I love you, _PCTitle,
-			<<if _lisping == 1>>
-			tho I don't mind how thethe hormoneth keep me thoft, if that'th how you want me.
-			<<else>>
-			so I don't mind how these hormones keep me soft, if that's how you want me.
-			<</if>>
+			I love you, <<Master>>,	<<s>>o I don't mind how the hormone<<s>> I'm on keep me <<s>>oft, if that'<<s>> how you want me.
 		<<else>>
-			<<if _lisping == 1>>
-			I thometimeth with thethe hormoneth let me get hard.
-			<<else>>
-			I sometimes wish these hormones let me get hard.
-			<</if>>
+			I <<s>>ometime<<s>> wish the hormone<<s>> I'm on would let me get hard.
 		<</if>>
 	<</if>>
 	<<else>>
-	<<if $activeSlave.devotion > 75>>
-		I love you, _PCTitle,
-		<<if _lisping == 1>>
-		tho I don't mind how thethe hormoneth keep me thoft, if that'th how you want me.
-		<<else>>
-		so I don't mind how these hormones keep me soft, if that's how you want me.
-		<</if>>
-	<<else>>
-		<<if _lisping == 1>>
-		I thometimeth with thethe hormoneth let me get hard.
+		<<if $activeSlave.devotion > 75>>
+			I love you, <<Master>>,	<<s>>o I don't mind how the hormone<<s>> I'm on keep me <<s>>oft, if that'<<s>> how you want me.
 		<<else>>
-		I sometimes wish these hormones let me get hard.
+			I <<s>>ometime<<s>> wish the hormone<<s>> I'm on would let me get hard.
 		<</if>>
 	<</if>>
-	<</if>>
 <</if>> /* closes balls check */
 <<elseif $activeSlave.preg == -1>>
 	<<if ($activeSlave.fetishKnown == 1)>>
 		<<if ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
-			<<if _lisping == 1>>
-			I fantathize about my belly getting heavy with pregnancy, but I know it won't happen while I'm on contraceptiveth.
-			<<else>>
-			I fantasize about my belly getting heavy with pregnancy, but I know it won't happen while I'm on contraceptives.
-			<</if>>
+			I fanta<<s>>ize about my belly getting heavy with pregnan<<c>>y, but I know it won't happen while I'm on contraceptive<<s>>.
 		<</if>>
 	<</if>>
 <<elseif $activeSlave.mpreg == 1>>
 	<<if ($activeSlave.fetishKnown == 1)>>
 		<<if ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 0)>>
-			<<if _lisping == 1>>
-			I fantathize about my belly getting heavy with pregnancy, and I'm tho glad you made me able to get pregnant.
-			<<else>>
-			I fantasize about my belly getting heavy with pregnancy, and I'm so glad you made me able to get pregnant.
-			<</if>>
+			I fanta<<s>>ize about my belly getting heavy with pregnancy, and I'm <<s>>o glad you made me able to get pregnant!
 		<</if>>
 	<</if>>
 <</if>> /* closes dick check */
@@ -1170,356 +477,147 @@ My favorite part of my body is
 <<if $activeSlave.inflation == 3>>
 	I feel really full, can I let the $activeSlave.inflationType out now?
 <<elseif  $activeSlave.inflation == 2>>
-	I feel <<if _lisping == 1>>tho<<else>>so<</if>> full, can I let the $activeSlave.inflationType out now?
+	I feel <<s>>o full, can I let the $activeSlave.inflationType out now?
 <<elseif  $activeSlave.inflation == 1>>
-	I feel <<if _lisping == 1>>tho<<else>>so<</if>> uncomfortable, can I let the $activeSlave.inflationType out now?
+	I feel <<s>>o uncomfortable, can I let the $activeSlave.inflationType out now?
 <</if>>
 
-<<if $activeSlave.hormones == 2 && ($activeSlave.actualAge > 35) && ($activeSlave.devotion > 50)>>
-	<<if _lisping == 1>>
-	On all thethe hormoneth I'm almotht going through puberty all over again. Kind of a thurprithe at my age." She grins suggestively. "I'll do my betht
-	<<else>>
-	On all these hormones I'm almost going through puberty all over again. Kind of a surprise at my age." She grins suggestively. "I'll do my best
-	<</if>>
-	to fuck like a teenager, _PCTitle.
+<<if $activeSlave.hormones >= 2>>
+<<if $activeSlave.physicalAge > 35>>
+<<if $activeSlave.devotion > 50>>
+<<if $activeSlave.energy > 40>>
+	On all the<<s>>e hormones I'm almo<<s>>t going through puberty all over again. Kind of a <<s>>urpri<<s>>e at my age." She grins suggestively. "I'll do my be<<s>>t to fuck like a teenager, <<Master>>.
+<</if>>
+<</if>>
+<</if>>
 <</if>>
 
 <<if ($activeSlave.curatives > 1)>>
 	<<if ($activeSlave.health < 0)>>
-		I don't feel good, but I can
-		<<if _lisping == 1>>
-		almotht feel the curativeth
-		<<else>>
-		almost feel the curatives
-		<</if>>
-		fixing me. Thank you, _PCTitle.
+		I don't feel good, but I can almo<<s>>t feel the curative<<s>> fixing me. Thank you, <<Master>>.
 	<<elseif ($activeSlave.physicalAge > 35)>>
-		<<if _lisping == 1>>
-		I can almotht feel the curativeth working. They make me feel tho
-		<<else>>
-		I can almost feel the curatives working. They make me feel so
-		<</if>>
-		young! Thank you, _PCTitle.
+		I can almo<<s>>t feel the curative<<s>> working. They make me feel <<s>>o young! Thank you, <<Master>>.
 	<<else>>
-		<<if _lisping == 1>>
-		I can almotht feel the curativeth
-		<<else>>
-		I can almost feel the curatives
-		<</if>>
-		working. They're pretty incredible. Thank you, _PCTitle.
+		I can almo<<s>>t feel the curative<<s>>	working. They're pretty incredible. Thank you, <<Master>>.
 	<</if>>
 <</if>>
 
 <<switch $activeSlave.drugs>>
 <<case "penis enhancement">>
 	<<if ($activeSlave.balls == 0)>>
-		I can feel my dick growing, _PCTitle, but
-		<<if _lisping == 1>>
-		it'th thtill tho thoft. I gueth it'll jutht flop around more when you buttfuck me.
-		<<else>>
-		it's still so soft. I guess it'll just flop around more when you buttfuck me.
-		<</if>>
+		I can feel my dick growing, <<Master>>, but	it'<<s>> <<s>>till <<s>>o <<s>>oft. I gue<<ss>> it'll just flop around more when I get buttfucked.
 	<<elseif ($activeSlave.fetishKnown == 1)>>
 		<<if ($activeSlave.fetish == "sadist") && ($activeSlave.fetishStrength > 60)>>
-			I can feel my dick growing, _PCTitle. I can
-			<<if _lisping == 1>>
-			jutht imagine puthhing it into thome poor thtruggling girl'th athhole.
-			<<else>>
-			just imagine pushing it into some poor struggling girl's asshole.
-			<</if>>
+			I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine pushing it into <<s>>ome poor <<s>>truggling girl'<<s>> a<<ss>>hole.
 		<<elseif ($activeSlave.fetish == "dom") && ($activeSlave.fetishStrength > 60)>>
-			I can feel my dick growing, _PCTitle. I can
-			<<if _lisping == 1>>
-			jutht imagine thmacking it againtht thome little thlut'th face.
-			<<else>>
-			just imagine smacking it against some little slut's face.
-			<</if>>
+			I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine pushing it into <<s>>ome little <<s>>lut'<<s>> fa<<c>>e.
 		<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-			I can feel my dick growing, _PCTitle. I can
-			<<if _lisping == 1>>
-			jutht imagine puthing it into a warm, wet puthy.
-			<<else>>
-			just imagine pushing it into a warm, wet pussy.
-			<</if>>
+			I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine pushing it into a warm, wet pu<<ss>>y.
 		<<else>>
-			<<if _lisping == 1>>
-			I can almotht feel my dick growing, _PCTitle. It'th kind of uncomfortable.
-			<<else>>
-			I can almost feel my dick growing, _PCTitle. It's kind of uncomfortable.
-			<</if>>
+			I can almo<<s>>t feel my dick growing, <<Master>>. It'<<s>> kind of uncomfortable.
 		<</if>>
 	<<else>>
-		<<if _lisping == 1>>
-		I can almotht feel my dick growing, _PCTitle. It'th kind of uncomfortable.
-		<<else>>
-		I can almost feel my dick growing, _PCTitle. It's kind of uncomfortable.
-		<</if>>
+		I can almo<<s>>t feel my dick growing, <<Master>>. It'<<s>> kind of uncomfortable.
 	<</if>>
 <<case "hyper penis enhancement">>
 	<<if ($activeSlave.balls is 0)>>
-	I can feel my dick growing, _PCTitle, but
-	  <<if _lisping is 1>>
-		it'th thtill tho thoft. I gueth it'll jutht flop around more when you buttfuck me, until it toucheth the floor, that ith.
-	  <<else>>
-		it's still so soft. I guess it'll just flop around more when you buttfuck me, until it touches the floor, that is.
-	  <</if>>
+	I can feel my dick growing, <<Master>>, but it'<<s>> <<s>>till <<s>>o <<s>>oft. I gue<<ss>> it'll ju<<s>>t flop around more when you buttfuck me, until it touche<<s>> the floor, that i<<s>>.
 	<<elseif ($activeSlave.fetishKnown is 1)>>
-	<<if ($activeSlave.fetish is "sadist") and ($activeSlave.fetishStrength gt 60)>>
-		I can feel my dick growing, _PCTitle. I can
-		<<if _lisping is 1>>
-		jutht imagine puthhing it into thome poor thtruggling girl'th athhole and having it thwellth more and more in her.
-		<<else>>
-		just imagine pushing it into some poor struggling girl's asshole and having it swell more and more in her.
-		<</if>>
-	<<elseif ($activeSlave.fetish is "dom") and ($activeSlave.fetishStrength gt 60)>>
-		I can feel my dick growing, _PCTitle. I can
-		<<if _lisping is 1>>
-		jutht imagine pinning thome poor little thlut to the floor with it.
-		<<else>>
-		just imagine pinning some poor little slut to the floor with it.
-		<</if>>
-	<<elseif ($activeSlave.attrKnown is 1) and ($activeSlave.attrXX gt 1)>>
-		I can feel my dick growing, _PCTitle. I can
-		<<if _lisping is 1>>
-		jutht imagine thhoving it into a warm, wet puthy.
-		<<else>>
-		just imagine shoving it into a warm, wet pussy.
-		<</if>>
+	<<if ($activeSlave.fetish == "sadist") && ($activeSlave.fetishStrength > 60)>>
+		I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine pushing it into <<s>>ome poor <<s>>truggling girl'<<s>> a<<ss>>hole and having it <<s>>well more and more in her.
+	<<elseif ($activeSlave.fetish == "dom") && ($activeSlave.fetishStrength > 60)>>
+		I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine pinning <<s>>ome poor little <<s>>lut to the floor with it.
+	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
+		I can feel my dick growing, <<Master>>. I can ju<<s>>t imagine <<s>>hoving it into a warm, wet pu<<ss>>y.
 	<<else>>
-		<<if _lisping is 1>>
-		I can feel my dick growing, _PCTitle. It'th kind of painful.
-		<<else>>
-		I can feel my dick growing, _PCTitle. It's kind of painful.
-		<</if>>
+		I can feel my dick growing, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 	<<else>>
-	<<if _lisping is 1>>
-		I can feel my dick growing, _PCTitle. It'th kind of painful.
-	<<else>>
-		I can feel my dick growing, _PCTitle. It's kind of painful.
-	<</if>>
+		I can feel my dick growing, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 <<case "testicle enhancement">>
-	<<if _lisping == 1>>
-		My ballth
-	<<else>>
-		My balls
-	<</if>>
-	feel incredibly full, _PCTitle. They're really uncomfortable.
+	My ball<<s>> feel incredibly full, <<Master>>. They're really uncomfortable.
 	<<if ($activeSlave.fetishKnown == 1) && (($activeSlave.fetish == "dom") || ($activeSlave.fetish == "sadist")) && ($activeSlave.fetishStrength > 60)>>
-		But I can't wait to
-		<<if _lisping == 1>>
-		forthe
-		<<else>>
-		force
-		<</if>>
-		a bitch to take the whole load.
+		But I can't wait to	for<<c>>e a bitch to take the whole load.
 	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
-		I feel like I could fill a
-		<<if _lisping == 1>>
-		girl'th
-		<<else>>
-		girl's
-		<</if>>
-		womb with cum in one shot.
+		I feel like I could fill a girl'<<s>> womb with cum in one shot.
 	<<else>>
-		I really need to cum. After I finish, would you
-		<<if _lisping == 1>>
-		pleathe, pleathe buttfuck me? I can barely thtand it.
-		<<else>>
-		please, please buttfuck me? I can barely stand it.
-		<</if>>
+		I really need to cum. After we finish talking, would you plea<<s>>e, plea<<s>>e buttfuck me so I can cum? I can barely stand it.
 	<</if>>
 <<case "hyper testicle enhancement">>
-	<<if _lisping is 1>>
-	My ballth
-	<<else>>
-	My balls
-	<</if>>
-	feel tho incredibly full, _PCTitle. They're really painful.
-	<<if ($activeSlave.fetishKnown is 1) and (($activeSlave.fetish is "dom") or ($activeSlave.fetish is "sadist")) and ($activeSlave.fetishStrength gt 60)>>
-	But I can't wait to fill a bitch with my load. Bet they'll look pregnant when I'm done.
-	<<elseif ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "pregnancy") and ($activeSlave.fetishStrength gt 60)>>
-	I feel like I could fertilize all a
-	<<if _lisping is 1>>
-		girl'th eggth
-	<<else>>
-		girl's eggs
-	<</if>>
-	with my cum.
-	<<else>>
-	I really need to cum. After I finish, would you
-	<<if _lisping is 1>>
-		pleathe, pleathe buttfuck me? I can barely thtand it.
+	My ball<<s>> feel <<s>>o incredibly full, <<Master>>. They're really painful.
+	<<if ($activeSlave.fetishKnown == 1) && (($activeSlave.fetish == "dom") || ($activeSlave.fetish == "sadist")) && ($activeSlave.fetishStrength > 60)>>
+		But I can't wait to fill a bitch with my load. Bet they'll look pregnant when I'm done.
+	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
+		I feel like I could fertilize all a girl'<<s>> egg<<s>> with my cum.
 	<<else>>
-		please, please buttfuck me? I can barely stand it.
-	<</if>>
+		I really need to cum. After I fini<<s>>h, would you plea<<s>>e, plea<<s>>e buttfuck me? I can barely <<s>>tand it.
 	<</if>>
 <<case "breast injections">>
 	<<if ($activeSlave.fetishKnown == 1) && (($activeSlave.fetish == "boobs") || ($activeSlave.energy > 95))>>
-		<<if _lisping == 1>>
-		I can almotht feel my boobth thwelling, _PCTitle. Thank you for injecting them with hormoneth, and pleathe, never thtop.
-		<<else>>
-		I can almost feel my boobs swelling, _PCTitle. Thank you for injecting them with hormones, and please, never stop.
-		<</if>>
+		I can almo<<s>>t feel my boobs <<s>>welling, <<Master>>. Thank you for injecting them with hormone<<s>>, and plea<<s>>e, never <<s>>top.
 	<<else>>
-		<<if _lisping == 1>>
-		I can almotht feel my boobth thwelling, _PCTitle. It'th kind of uncomfortable.
-		<<else>>
-		I can almost feel my boobs swelling, _PCTitle. It's kind of uncomfortable.
-		<</if>>
+		I can almo<<s>>t feel my boob<<s>> <<s>>welling, <<Master>>. It's kind of uncomfortable.
 	<</if>>
 <<case "hyper breast injections">>
-	<<if ($activeSlave.fetishKnown is 1)>>
-	<<if ($activeSlave.fetish is "boobs") or ($activeSlave.energy gt 95)>>
-		<<if _lisping is 1>>
-		I can feel my boobth thwelling, _PCTitle. Thank you for injecting them with hormoneth, and pleathe, never thtop.
-		<<else>>
-		I can feel my boobs swelling, _PCTitle. Thank you for injecting them with hormones, and please, never stop.
-		<</if>>
+	<<if ($activeSlave.fetishKnown == 1)>>
+	<<if ($activeSlave.fetish == "boobs") || ($activeSlave.energy > 95)>>
+		I can feel my boob<<s>> <<s>>welling, <<Master>>. Thank you for injecting them with hormone<<s>>, and plea<<s>>e, never <<s>>top.
 	<<else>>
-		<<if _lisping is 1>>
-		I can feel my boobth thwelling, _PCTitle. It'th kind of painful.
-		<<else>>
-		I can feel my boobs swelling, _PCTitle. It's kind of painful.
-		<</if>>
+		I can feel my boob<<s>> <<s>>welling, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 	<<else>>
-	<<if _lisping is 1>>
-		I can feel my boobth thwelling, _PCTitle. It'th kind of painful.
-	<<else>>
-		I can feel my boobs swelling, _PCTitle. It's kind of painful.
-	<</if>>
+		I can feel my boob<<s>> <<s>>welling, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 <<case "butt injections">>
 	<<if ($activeSlave.fetishKnown == 1) && (($activeSlave.fetish == "buttslut") || ($activeSlave.energy > 95))>>
-		<<if _lisping == 1>>
-		I can almotht feel my butt growing, _PCTitle. I can't wait to feel a dick thliding up in between my buttockth.
-		<<else>>
-		I can almost feel my butt growing, _PCTitle. I can't wait to feel a dick sliding up in between my buttocks.
-		<</if>>
+		I can almo<<s>>t feel my butt growing, <<Master>>. I can't wait to feel a dick <<s>>liding up in between my buttock<<s>>.
 	<<else>>
-		<<if _lisping == 1>>
-		I can almotht feel my butt growing, _PCTitle. It'th kind of uncomfortable.
-		<<else>>
-		I can almost feel my butt growing, _PCTitle. It's kind of uncomfortable.
-		<</if>>
+		I can almo<<s>>t feel my butt growing, <<Master>>. It'<<s>> kind of uncomfortable.
 	<</if>>
 <<case "hyper butt injections">>
-	<<if ($activeSlave.fetishKnown is 1)>>
-	<<if ($activeSlave.fetish is "buttslut") or ($activeSlave.energy gt 95)>>
-		<<if _lisping is 1>>
-		I can feel my butt growing, _PCTitle. I can't wait for a dick to get lotht in between my buttockth.
-		<<else>>
-		I can feel my butt growing, _PCTitle. I can't wait for a dick to get lost in between my buttocks.
-		<</if>>
+	<<if ($activeSlave.fetishKnown == 1)>>
+	<<if ($activeSlave.fetish == "buttslut") || ($activeSlave.energy > 95)>>
+		I can feel my butt growing, <<Master>>. I can't wait for a dick to get lo<<s>>t in between my buttocks.
 	<<else>>
-		<<if _lisping is 1>>
-		I can feel my butt growing, _PCTitle. It'th kind of painful.
-		<<else>>
-		I can feel my butt growing, _PCTitle. It's kind of painful.
-		<</if>>
+		I can feel my butt growing, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 	<<else>>
-	<<if _lisping is 1>>
-		I can feel my butt growing, _PCTitle. It'th kind of painful.
-	<<else>>
-		I can feel my butt growing, _PCTitle. It's kind of painful.
-	<</if>>
+		I can feel my butt growing, <<Master>>. It'<<s>> kind of painful.
 	<</if>>
 <<case "lip injections">>
 	<<if ($activeSlave.fetishKnown == 1) && (($activeSlave.fetish == "cumslut") || ($activeSlave.energy > 95))>>
-		<<if _lisping == 1>>
-		I can almotht feel my lipth thwelling,
-		<<else>>
-		I can almost feel my lips swelling,
-		<</if>>
-		_PCTitle. I can't wait to wrap them around a cock.
+		I can almost feel my lip<<s>> <<s>>welling,	<<Master>>. I can't wait to wrap them around a cock.
 	<<else>>
-		<<if _lisping == 1>>
-		I can almotht feel my lipth thwelling, _PCTitle. It'th kind of uncomfortable.
-		<<else>>
-		I can almost feel my lips swelling, _PCTitle. It's kind of uncomfortable.
-		<</if>>
+		I can almost feel my lip<<s>> <<s>>welling, <<Master>>. It'<<s>> kind of uncomfortable.
 	<</if>>
 <<case "fertility drugs">> 
 <<if isFertile($activeSlave)>>
-	I feel like I need to have a baby, _PCTitle, like right now.
-	<<if ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "submissive") and ($activeSlave.fetishStrength gt 60)>>
-	I can't wait for someone to cum in me and knock me up.
-	<<elseif ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "pregnancy") and ($activeSlave.fetishStrength gt 60)>>
-	I can't wait till my belly 
-	<<if _lisping is 1>>
-		thwellth
-	<<else>>
-		swells
-	<</if>>
-	with life.
-	<<else>>
-	<<if _lisping is 1>>
-		Thethe
+	I feel like I need to have a baby, <<Master>>, like right now.
+	<<if ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
+		I can't wait for <<s>>omeone to cum in me and knock me up.
+	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
+		I can't wait till my belly swell<<s>> with life.
 	<<else>>
-		These
-	<</if>>
-	will get me pregnant, right?
+		The<<s>>e will get me pregnant, right?
 	<</if>>
 <</if>>
 <<case "super fertility drugs">>
 <<if isFertile($activeSlave)>>
-	My womb
-	<<if _lisping is 1>>
-		feelth tho full
-	<<else>>
-		feels so full
-	<</if>>
-	, _PCTitle, I need to be fertilized!
-	<<if ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "submissive") and ($activeSlave.fetishStrength gt 60)>>
-	I can't wait to be pinned to the floor by my life 
-	<<if _lisping is 1>>
-		thwollen
-	<<else>>
-		swollen
-	<</if>>
-	belly.
-	<<elseif ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "pregnancy") and ($activeSlave.fetishStrength gt 60)>>
-	I can't wait till my belly 
-	<<if _lisping is 1>>
-		thwellth ath big ath me.
-	<<else>>
-		swells as big as me.
-	<</if>>
-	<<else>>
-	<<if _lisping is 1>>
-		Thethe
-	<<else>>
-		These
-	<</if>>
-	will get me pregnant, right? Like,
-	<<if _lisping is 1>>
-		tho
+	My womb feel<<s>> <<s>>o full, <<Master>>, I need to be fertilized!
+	<<if ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
+		I can't wait to be pinned to the floor by my life <<s>>wollen belly.
+	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60)>>
+		I can't wait till my belly <<s>>well<<s>> a<<s>> big a<<s>> me.
 	<<else>>
-		so
-	<</if>>
-	pregnant I'll be filled to my limit?
+		The<<s>>e will get me pregnant, right? Like, <<s>>o pregnant I'll be filled to my limit?
 	<</if>>
 <</if>>
 <<case "anti-aging cream">>
 	<<if $activeSlave.visualAge+20 < $activeSlave.actualAge>>
-		I look
-		<<if _lisping is 1>>
-		tho young, I can barely recognize mythelf
-		<<else>>
-		so young, I can barely recognize myself
-		<</if>>
-		anymore.
+		I look <<s>>o young, <<Master>>, I can barely recognize my<<s>>elf anymore.
 	<<else>>
-		I can practically feel the
-		<<if _lisping is 1>>
-		yearth
-		<<else>>
-		years
-		<</if>>
-		peeling off me.
+		I can practically feel the year<<s>> peeling off me, <<Master>>.
 	<</if>>
 <</switch>>
 
@@ -1527,309 +625,141 @@ My favorite part of my body is
 <<case "whore" "work in the brothel">>
 	<<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		It'th great being a whore. I can't imagine being thatithfied doing anything elthe.
-		<<else>>
-		It's great being a whore. I can't imagine being satisfied doing anything else.
-		<</if>>
-	<<elseif ($activeSlave.fetishStrength > 60) && ($activeSlave.fetish != "pregnancy")>>
+		It'<<s>> great being a whore. I can't imagine being <<s>>ati<<s>>fied doing anything el<<s>>e.
+	<<elseif ($activeSlave.fetishStrength > 60)>>
 	<<switch $activeSlave.fetish>>
 	<<case "submissive">>
-		<<if _lisping == 1>>
-		It'th nice being a whore, I get treated like I detherve.
-		<<else>>
-		It's nice being a whore, I get treated like I deserve.
-		<</if>>
+		It'<<s>> ni<<c>>e being a whore, I get treated like I de<<s>>erve.
 	<<case "dom">>
-		<<if _lisping == 1>>
-		Being a whore ith okay, thometimeth thomebody wanth to be dommed.
-		<<else>>
-		Being a whore is okay, sometimes somebody wants to be dommed.
-		<</if>>
+		Being a whore i<<s>> okay, <<s>>ometime<<s>> <<s>>omebody want<<s>> to be dommed.
 	<<case "sadist">>
-		<<if _lisping == 1>>
-		Being a whore ith okay, thometimeth thomebody wanth me to hurt one of their thlaveth for them.
-		<<else>>
-		Being a whore == okay, sometimes somebody wants me to hurt one of their slaves for them.
-		<</if>>
+		Being a whore i<<s>> okay, <<s>>ometime<<s>> <<s>>omebody want<<s>> me to hurt one of their <<s>>lave<<s>> for them.
 	<<case "masochist">>
-		<<if _lisping == 1>>
-		It'th nice being a whore, I get hurt like I detherve.
-		<<else>>
-		It's nice being a whore, I get hurt like I deserve.
-		<</if>>
+		It'<<s>> ni<<c>>e being a whore, I get hurt like I de<<s>>erve.
 	<<case "cumslut">>
-		<<if _lisping == 1>>
-		It'th great being a whore. If I wath thtill free, I would fantathize about thucking thith many men off.
-		<<else>>
-		It's great being a whore. If I was still free, I would fantasize about sucking this many men off.
-		<</if>>
+		It'<<s>> great being a whore. If I wa<<s>> still free, I would fanta<<s>>ize about getting to <<s>>uck thi<<s>> many dick<<s>>.
 	<<case "humiliation">>
-		<<if _lisping == 1>>
-		It'th great being a whore, the shame keeps me really horny.
-		<<else>>
-		It's great being a whore, the shame keeps me really horny.
-		<</if>>
+		It'<<s>> great being a whore, the shame keep<<s>> me really horny.
 	<<case "buttslut">>
-		<<if _lisping == 1>>
-		It'th great being a whore. If I wath thtill free, I would fantathize about taking thith much anal.
-		<<else>>
-		It's great being a whore. If I was still free, I would fantasize about taking this much anal.
-		<</if>>
+		It'<<s>> great being a whore. If I wa<<s>> still free, I would fanta<<s>>ize about taking this much anal.
 	<<case "boobs">>
-		<<if _lisping == 1>>
-		It'th nice being a whore, thometimeth cuthtomerth jutht play with my boobth for hourth.
+		It'<<s>> ni<<c>>e being a whore, <<s>>ometime<<s>> customer<<s>> ju<<s>>t play with my boob<<s>> for hour<<s>>.
+	<<case "pregnancy">>
+		<<if bigBelly($activeSlave)>>
+			It'<<s>> ni<<c>>e being a whore, <<s>>ometime<<s>> customer<<s>> ju<<s>>t play with my belly for hour<<s>>.
+		<<elseif isFertile($activeSlave)>>
+			It'<<s>> great being a whore, I'm going to get pregnant and there'<<s>> nothing I can do to <<s>>top it.
+		<<elseif $activeSlave.preg > 0>>
+			It'<<s>> great being a pregnant whore, I get to watch my belly <<s>>well a<<s>> I get fucked. Every week it gets a little bigger.
 		<<else>>
-		It's nice being a whore, sometimes customers just play with my boobs for hours.
+			Being a whore i<<s>> okay, <<s>>ometime<<s>> I can pretend I can get pregnant.
 		<</if>>
 	<</switch>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 60)>>
-		<<if _lisping == 1>>
-		It'th nice being a whore, I get fucked by a lot of hot guyth.
-		<<else>>
-		It's nice being a whore, I get fucked by a lot of hot guys.
-		<</if>>
+		It'<<s>> ni<<c>>e being a whore, I get fucked by a lot of hot guy<<s>>.
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 60)>>
-		<<if _lisping == 1>>
-		It'th nice being a whore, I get women customerth thometimeth.
-		<<else>>
-		It's nice being a whore, I get women customers sometimes.
-		<</if>>
+		It'<<s>> okay being a whore, I get female customer<<s>> <<s>>ometime<<s>>.
 	<</if>>
 	<</if>>
 <<case "public service" "serve in the club">>
 	<<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		It'th great being a public thlut. I can't imagine being thatithfied doing anything elthe.
-		<<else>>
-		It's great being a public slut. I can't imagine being satisfied doing anything else.
-		<</if>>
-	<<elseif ($activeSlave.fetishStrength > 60) && ($activeSlave.fetish != "pregnancy")>>
+		It'<<s>> great being a public <<s>>lut. I can't imagine being <<s>>ati<<s>>fied doing anything el<<s>>e.
+	<<elseif ($activeSlave.fetishStrength > 60)>>
 	<<switch $activeSlave.fetish>>
 	<<case "submissive">>
-		<<if _lisping == 1>>
-		It'th nice being a public thlut, I get treated like I detherve.
-		<<else>>
-		It's nice being a public slut, I get treated like I deserve
-		<</if>>
+		It'<<s>> ni<<c>>e being a public <<s>>lut, I get treated like I de<<s>>erve.
 	<<case "dom">>
-		<<if _lisping == 1>>
-		Being a public thlut ith okay, thometimeth thomebody wanth to be dommed.
-		<<else>>
-		Being a public slut is okay, sometimes somebody wants to be dommed.
-		<</if>>
+		Being a public <<s>>lut i<<s>> okay, <<s>>ometime<<s>> <<s>>omebody want<<s>> to be dommed.
 	<<case "sadist">>
-		<<if _lisping == 1>>
-		Being a public thlut ith okay, thometimeth thomebody wanth me to hurt one of their thlaveth for them.
-		<<else>>
-		Being a public slut is okay, sometimes somebody wants me to hurt one of their slaves for them.
-		<</if>>
+		Being a public <<s>>lut i<<s>> okay, <<s>>ometime<<s>> <<s>>omebody want<<s>> me to hurt one of their <<s>>lave<<s>> for them.
 	<<case "masochist">>
-		<<if _lisping == 1>>
-		It'th nice being a public thlut, I get hurt like I detherve.
-		<<else>>
-		It's nice being a public slut, I get hurt like I deserve.
-		<</if>>
+		It'<<s>> ni<<c>>e being a public <<s>>lut, I get hurt like I de<<s>>erve.
 	<<case "cumslut">>
-		<<if _lisping == 1>>
-		It'th great being a public thlut. If I wath thtill free, I would fantathize about thucking thith many men off.
-		<<else>>
-		It's great being a public slut. If I was still free, I would fantasize about sucking this many men off.
-		<</if>>
+		It'<<s>> great being a public <<s>>lut. If I wa<<s>> still free, I would fanta<<s>>ize about getting to <<s>>uck thi<<s>> many dick<<s>>.
 	<<case "humiliation">>
-		<<if _lisping == 1>>
-		It'th great being a public thlut,
-		<<else>>
-		It's great being a public slut,
-		<</if>>
-		the shame keeps me really horny.
+		It'<<s>> great being a public <<s>>lut, the shame keep<<s>> me really horny.
 	<<case "buttslut">>
-		<<if _lisping == 1>>
-		It'th great being a public thlut. If I wath thtill free, I would fantathize about taking thith much anal.
-		<<else>>
-		It's great being a public slut. If I was still free, I would fantasize about taking this much anal.
-		<</if>>
+		It'<<s>> great being a public <<s>>lut. If I wa<<s>> still free, I would fanta<<s>>ize about taking this much anal.
 	<<case "boobs">>
-		<<if _lisping == 1>>
-		It'th nice being a public thlut, thometimeth people jutht play with my boobth for hourth.
+		It'<<s>> ni<<c>>e being a public <<s>>lut, <<s>>ometime<<s>> citizen<<s>> ju<<s>>t play with my boob<<s>> for hour<<s>>.
+	<<case "pregnancy">>
+		<<if bigBelly($activeSlave)>>
+			It'<<s>> ni<<c>>e being a public <<s>>lut, <<s>>ometime<<s>> citizen<<s>> ju<<s>>t play with my belly for hour<<s>>.
+		<<elseif isFertile($activeSlave)>>
+			It'<<s>> great being a public <<s>>lut, I'm going to get pregnant and there'<<s>> nothing I can do to <<s>>top it.
+		<<elseif $activeSlave.preg > 0>>
+			It'<<s>> great being a pregnant public <<s>>lut, I get to <<s>>how off my belly all the time.
 		<<else>>
-		It's nice being a public slut, sometimes people just play with my boobs for hours.
+			Being a public <<s>>lut i<<s>> okay, <<s>>ometime<<s>> I can pretend I can get pregnant.
 		<</if>>
 	<</switch>>
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 60)>>
-		<<if _lisping == 1>>
-		It'th nice being a slut, I get fucked by a lot of hot guyth.
-		<<else>>
-		It's nice being a slut, I get fucked by a lot of hot guys.
-		<</if>>
+		It'<<s>> ni<<c>>e being a public <<s>>lut, I get fucked by a lot of hot guy<<s>>.
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 60)>>
-		<<if _lisping == 1>>
-		It'th nice being a slut, I get women customerth thometimeth.
-		<<else>>
-		It's nice being a slut, I get women customers sometimes.
-		<</if>>
+		It'<<s>> okay being a public <<s>>lut, I get female citizen<<s>> <<s>>ometime<<s>>.
 	<</if>>
 	<</if>>
 <<case "get milked" "work in the dairy">>
-	<<if ($activeSlave.fetishKnown == 1)>>
-	<<if ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		It'th
-		<<else>>
-		It's
-		<</if>>
-		pretty nice, being a cow.
-	<<elseif ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
-		<<if _lisping == 1>>
-		It'th nice being a cow, I get treated like I detherve.
-		<<else>>
-		It's nice being a cow, I get treated like I deserve.
-		<</if>>
-	<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
-		<<if _lisping == 1>>
-		It'th tho, tho wonderful being a cow.
+	<<if $activeSlave.balls = 0>>
+		<<if ($activeSlave.fetishKnown == 1)>>
+		<<if ($activeSlave.energy > 95)>>
+			It'<<s>> pretty ni<<c>>e, being milked.
+		<<elseif ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
+			It'<<s>> ni<<c>>e being milked, I get treated like I de<<s>>erve.
+		<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60)>>
+			It'<<s>> <<s>>o, <<s>>o wonderful being milked.
+		<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
+			It'<<s>> okay being milked, with all the girl<<s>> and boob<<s>> around.
 		<<else>>
-		It's so, so wonderful being a cow.
+			Being milked is hard work.
 		<</if>>
-	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-		<<if _lisping == 1>>
-		It'th okay being a cow, with all the girlth around.
-		<<else>>
-		It's okay being a cow, with all the girls around.
 		<</if>>
 	<<else>>
-		<<if _lisping == 1>>
-		Being a cow ith hard work.
-		<<else>>
-		Being a cow is hard work.
-		<</if>>
-	<</if>>
-	<</if>>
-<<case "get cockmilked" "work in the collection facility">>
-	<<if ($activeSlave.fetishKnown == 1)>>
-	<<if ($activeSlave.fetish == "buttslut") || ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		Getting buttfucked to orgathm whenever I can get hard ith a dream come true. Actually, getting buttfucked until I cum even when I'm thoft is pretty nice too.
-		<<else>>
-		Getting buttfucked to orgasm whenever I can get hard is a dream come true. Actually, getting buttfucked until I cum even when I'm soft is pretty nice too.
-		<</if>>
-	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
-		<<if _lisping == 1>>
-		It'th okay getting cockmilked, I like all the dickth around.
+		<<if ($activeSlave.fetishKnown == 1)>>
+		<<if ($activeSlave.fetish == "buttslut") || ($activeSlave.energy > 95)>>
+			Getting buttfucked to orga<<s>>m whenever I can get hard i<<s>> a dream come true. Actually, getting buttfucked until I cum even when I'm <<s>>oft is pretty ni<<c>>e too.
+		<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
+			It'<<s>> okay getting cockmilked, I like all the dick<<s>> around.
 		<<else>>
-		It's okay getting cockmilked, I like all the dicks around.
+			It'<<s>> <<s>>urpri<<s>>ingly hard work, coming all day.
 		<</if>>
-	<<else>>
-		<<if _lisping == 1>>
-		It'th thurprithingly
-		<<else>>
-		It's surprisingly
 		<</if>>
-		hard work, coming all day.
-	<</if>>
 	<</if>>
 <<case "please you" "serve in the master suite">>
 	<<if ($activeSlave.fetishKnown == 1)>>
-	<<if ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		I love how taking your cock ith my only job, and I love having your other toyth to fuck too.
-		<<else>>
-		I love how taking your cock is my only job, and I love having your other toys to fuck too.
-		<</if>>
+	<<if ($activeSlave.energy > 95) && ($PC.dick == 1)>>
+		I love how taking your cock i<<s>> my only job, and I love having your other toy<<s>> to have <<s>>ex too.
 	<<else>>
-		<<if _lisping == 1>>
-		It'th
-		<<else>>
-		It's
-		<</if>>
-		nice being your girl.
+		It'<<s>> ni<<c>>e being your girl.
 	<</if>>
 	<</if>>
 <<case "rest" "rest in the spa">>
-	Thank you for letting me
-	<<if _lisping == 1>>
-	retht.
-	<<else>>
-	rest.
-	<</if>>
+	Thank you for letting me re<<s>>t.
 <<default>>
-	<<if _lisping == 1>>
-	Being a fuckthlave is hard work.
-	<<else>>
-	Being a sex slave is hard work.
-	<</if>>
+	Being a <<s>>ex <<s>>lave is hard work.
 <</switch>>
 
 <<if (($activeSlave.oralSkill + $activeSlave.analSkill) >= 120) && ($activeSlave.vagina == -1)>>
-	I'm really proud of my
-	<<if _lisping == 1>>
-	thex thkillth, it'th nice to be good at what you do. Without a cunt my poor <<if $activeSlave.anus > 2>>athputhy<<elseif $activeSlave.anus == 2>>butthole<<else>>little anuth<</if>> doeth
-	<<else>>
-	sex skills, it's nice to be good at what you do. Without a cunt my poor <<if $activeSlave.anus > 2>>asspussy<<elseif $activeSlave.anus == 2>>butthole<<else>>little anus<</if>> does
-	<</if>>
-	double duty, but I can take it.
+	I'm really proud of my <<s>>ex <<s>>kill<<s>>, it's ni<<c>>e to be good at what you do. Without a cunt my poor <<if $activeSlave.anus > 2>>a<<ss>>pu<<ss>>y<<elseif $activeSlave.anus == 2>>butthole<<else>>little anu<<s>><</if>> does double duty, but I can take it.
 <<elseif ($activeSlave.oralSkill + $activeSlave.vaginalSkill + $activeSlave.analSkill) >= 180>>
-	I'm really proud of my
-	<<if _lisping == 1>>
-	thex thkillth, it'th
-	<<else>>
-	sex skills, it's
-	<</if>>
-	nice to be good at what you do.
+	I'm really proud of my <<s>>ex <<s>>kill<<s>>, it's ni<<c>>e to be good at what you do.
 <<elseif ($activeSlave.whoreSkill >= 100)>>
-	I'm really proud of my whoring
-	<<if _lisping == 1>>
-	thkillth, prothtitution ith jutht
-	<<else>>
-	skills, prostitution is just
-	<</if>>
-	a job like any other to me.
+	I'm really proud of my whoring <<s>>kill<<s>>, pro<<s>>titution i<<s>> ju<<s>>t	a job like any other to me.
 <<elseif ($activeSlave.entertainSkill >= 100)>>
-	I'm really proud of my
-	<<if _lisping == 1>>
-	thkillth,
-	<<else>>
-	skills,
-	<</if>>
-	I feel like I can make anyone want me.
+	I'm really proud of my <<s>>kill<<s>>, I feel like I can make anyone want me.
 <<elseif ($activeSlave.analSkill >= 100)>>
 	<<if ($activeSlave.vagina == -1)>>
-	I'm really proud of my anal
-	<<if _lisping == 1>>
-		thkillth, I can take a dick ath well ath anyone.
+	I'm really proud of my anal <<s>>kill<<s>>, I can take a dick a<<s>> well a<<s>> anyone.
 	<<else>>
-		skills, I can take a dick as well as anyone.
-	<</if>>
-	<<else>>
-	I'm really proud of my anal
-	<<if _lisping == 1>>
-		thkillth, it'th fun having three fuckholeth.
-	<<else>>
-		skills, it's fun having three fuckholes.
-	<</if>>
+	I'm really proud of my anal	<<s>>kill<<s>>, it'<<s>> fun having three fuckhole<<s>>.
 	<</if>>
 <<elseif ($activeSlave.analSkill <= 30) && ($activeSlave.anus > 0)>>
-	I
-	<<if _lisping == 1>>
-	with I were better at anal, if I learned to relax getting buttfucked wouldn't hurt tho much.
-	<<else>>
-	wish I were better at anal, if I learned to relax getting buttfucked wouldn't hurt so much.
-	<</if>>
+	I wish I were better at anal, if I could learn to relax getting buttfucked wouldn't hurt <<s>>o much.
 <<elseif ($activeSlave.vaginalSkill <= 30) && ($activeSlave.vagina > 0)>>
-	I wish I were better at
-	<<if _lisping == 1>>
-	thex, thometimeth all I can think to do ith jutht lie there.
-	<<else>>
-	sex, sometimes all I can think to do is just lie there.
-	<</if>>
+	I wish I were better at <<s>>ex, <<s>>ometime<<s>> all I can think to do is just lie there
 <<elseif ($activeSlave.oralSkill <= 30)>>
-	I 
-	<<if _lisping == 1>>
-	with I were better at blowjobth, it would be nice not to gag tho much.
-	<<else>>
-	wish I were better at blowjobs, it would be nice not to gag so much.
-	<</if>>
+	I wish I were better at blowjob<<s>>, it would be ni<<c>>e not to gag <<s>>o much.
 <</if>>
 
 <<if ($activeSlave.relationship > 0)>>
@@ -1837,111 +767,38 @@ My favorite part of my body is
 <<for _j = 0; _j < _SL; _j++>>
 	<<if $slaves[_j].ID == $activeSlave.relationshipTarget>>
 	<<if $activeSlave.relationship <= 2>>
-		<<if _lisping == 1>>
-		I really like theeing $slaves[_j].slaveName every day, she's a good friend." She blushes. "She'th kind of hot, too.
-		<<else>>
-		I really like seeing $slaves[_j].slaveName every day, she's a good friend." She blushes. "She's kind of hot, too.
-		<</if>>
+		I really like <<s>>eeing $slaves[_j].slaveName every day, she'<<s>> a good friend." She blushes. "<<S>>he'<<s>> kind of hot, too.
 	<<elseif $activeSlave.relationship <= 3>>
-		<<if _lisping == 1>>
-		I really like theeing
-		<<else>>
-		I really like seeing
-		<</if>>
-		$slaves[_j].slaveName every day, she's a good friend -" She blushes. "- even when we're not fucking.
+		I really like <<s>>eeing $slaves[_j].slaveName every day, she's a good friend -" She blushes. "- even when we're not fucking.
 	<<elseif $activeSlave.relationship <= 4>>
-		I really love $slaves[_j].slaveName." She blushes. "Thank you for letting
-		<<if _lisping == 1>>
-		uth
-		<<else>>
-		us
-		<</if>>
-		be together, _PCTitle.
+		I really love $slaves[_j].slaveName." She blushes. "Thank you for letting u<<s>> be together, <<Master>>.
 	<<else>>
-		<<if _lisping == 1>>
-		I'm tho
-		<<else>>
-		I'm so
-		<</if>>
-		happy with $slaves[_j].slaveName." She blushes. "Thank you for her, _PCTitle.
+		I'm <<s>>o happy with $slaves[_j].slaveName." She blushes. "Thank you for her, <<Master>>.
 	<</if>>
 	<<if $activeSlave.relationship >= 3>>
 		<<if $activeSlave.mother == $slaves[_j].ID>>
-			"I - I'm fucking my mother," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but the'th thuch a hot MILF, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she's such a hot MILF, I can't stop.
-			<</if>>
+			"I - I'm fucking my mother," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he's <<s>>uch a hot MILF, I can't <<s>>top.
 		<<elseif $activeSlave.father == $slaves[_j].ID>>
-			I - I'm fucking my father," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but the knowth tho much about penetration, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she knows so much about penetration, I can't stop.
-			<</if>>
+			I - I'm fucking my father," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he knows <<s>>o much about penetration, I can't <<s>>top.
 		<<elseif $slaves[_j].mother == $activeSlave.ID>>
-			I - I'm fucking my daughter," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but the hath thuch a hot little body, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she has such a hot little body, I can't stop.
-			<</if>>
+			I - I'm fucking my daughter," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he ha<<s>> <<s>>uch a hot little body, I can't <<s>>top.
 		<<elseif $slaves[_j].father == $activeSlave.ID>>
-			I - I'm fucking my daughter," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but the hath thuch a hot little body. The lookth tho much like her mother, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she has such a hot little body. She looks so much like her mother, I can't stop.
-			<</if>>
+			I - I'm fucking my daughter," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he ha<<s>> <<s>>uch a hot little body. <<S>>he looks <<s>>o much like her mother, I can't <<s>>top.
 		<<elseif areSisters($activeSlave, $slaves[_j]) == 1>>
-			I - I'm fucking my twin sister," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but she's so hot, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she's so hot, I can't stop.
-			<</if>>
+			I - I'm fucking my twin <<s>>ister," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he'<<s>> <<s>>o hot, I can't <<s>>top.
 		<<elseif areSisters($activeSlave, $slaves[_j]) == 2>>
-			I - I'm fucking my sister," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but she's so hot, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she's so hot, I can't stop.
-			<</if>>
+			I - I'm fucking my <<s>>ister," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he'<<s>> <<s>>o hot, I can't <<s>>top.
 		<<elseif areSisters($activeSlave, $slaves[_j]) == 3>>
-			I - I'm fucking my half-sister," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but she's so hot, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but she's so hot, I can't stop.
-			<</if>>
+			I - I'm fucking my half-<<s>>ister," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<s>>he's <<s>>o hot, I can't <<s>>top.
 		<<elseif ($activeSlave.relation != 0) && ($slaves[_j].ID is $activeSlave.relationTarget)>>
-			I - I'm fucking my <<if ($activeSlave.relation == "mother")>>daughter<<elseif ($activeSlave.relation == "daughter")>>mother<<else>>$activeSlave.relation<</if>>," she bursts out, blushing even harder.
-			<<if _lisping == 1>>
-			"It'th tho fucking wrong, but <<if ($activeSlave.relation == "mother")>>the hath thuch a hot little body<<elseif ($activeSlave.relation == "daughter")>>the'th thuch a hot MILF<<else>>the'th tho hot<</if>>, I can't thtop.
-			<<else>>
-			"It's so fucking wrong, but <<if ($activeSlave.relation == "mother")>>she has such a hot little body<<elseif ($activeSlave.relation == "daughter")>>she's such a hot MILF<<else>>she's so hot<</if>>, I can't stop.
-			<</if>>
+			I - I'm fucking my <<if ($activeSlave.relation == "mother")>>daughter<<elseif ($activeSlave.relation == "daughter")>>mother<<else>>$activeSlave.relation<</if>>," she bursts out, blushing even harder. "It'<<s>> <<s>>o fucking wrong, but <<if ($activeSlave.relation == "mother")>><<s>>he has <<s>>uch a hot little body<<elseif ($activeSlave.relation == "daughter")>><<s>>he'<<s>> <<s>>uch a hot MILF<<else>><<s>>he'<<s>> <<s>>o hot<</if>>, I can't <<s>>top.
 		<<elseif ($activeSlave.actualAge + 14) < $slaves[_j].actualAge>>
-			<<if _lisping == 1>>
-			The'th old enough to be my mother." She looks down, blushing a little harder. "But I'm lucky, the'th thuch a hot MILF.
-			<<else>>
-			She's old enough to be my mother." She looks down, blushing a little harder. "But I'm lucky, she's such a hot MILF.
-			<</if>>
+			<<S>>he'<<s>> old enough to be my mother." She looks down, blushing a little harder. "But I'm lucky, <<s>>he'<<s>> <<s>>uch a hot MILF.
 		<<elseif ($activeSlave.actualAge - 14) > $slaves[_j].actualAge>>
-			<<if _lisping == 1>>
-			The'th
-			<<else>>
-			She's
-			<</if>>
-			young enough to be my daughter." She looks down, blushing a little harder. "But I love her hot young body.
+			<<S>>he'<<s>> young enough to be my daughter." She looks down, blushing a little harder. "But I love her hot young body.
 		<</if>>
 		<<if (($activeSlave.actualAge - 5) > $slaves[_j].actualAge) && (20 > $slaves[_j].actualAge)>>
-			<<if _lisping == 1>>
-			The'th a little immature at timeth, but fucking a teenager is tho awethome, it'th worth it.
-			<<else>>
-			She's a little immature at times, but having sex with a teenager is so awesome, it's worth it.
-			<</if>>
+			She'<<s>> a little immature at time<<s>>, but having <<s>>ex with a teenager i<<s>> so awe<<s>>ome, it'<<s>> worth it.
 		<</if>>
 		<<if $slaves[_j].amp != 0>>
 		<<if $slaves[_j].amp == -1>>
@@ -1951,12 +808,11 @@ My favorite part of my body is
 		<<elseif $slaves[_j].amp == -3>>
 			I really like her P-Limbs. They're very pretty, but kind of cold. <<if _lisping == 1>>That'th jutht how she ith<<else>>That's just how she is<</if>>.
 		<<elseif $slaves[_j].amp == -4>>
-			Her P-Limbs do <<if _lisping == 1>>thcare me a little, thometimeth. Though of courthe she disableth the weaponth when we're together." She giggles. "Though I did get her to exthtend her bladeth once, so I could kith<<else>>scare me a little, sometimes. Though of course she disables the weapons when we're together." She giggles. "Though I did get her to extend her blades once, so I could kiss<</if>> them for luck.
+			Her P-Limbs do <<s>>care me a little, <<s>>ometime<<s>>. Though of course she di<<s>>able<<s>> the weapon<<s>> when we're together." She giggles. "Though I did get her to extend her blades on<<c>>e, so I could ki<<ss>> them for luck.
 		<<elseif $slaves[_j].amp == -5>>
-			Her P-Limbs do <<if $lisping == 1>>look cool and I like how thtrong they can make her but they thcare me a little, thometimeth. Though of courthe she disableth the weaponth when we're together.<<else>>look cool and I like how strong they can make her but they scare me a little, sometimes. Though of course she disables the weapons when we're together.<</if>>
-			" She giggles. "She <<if $lisping == 1>>hath vibe fingerth, sho that'th awethome<<else>>has vibe fingers, so that's awesome<</if>>.
+			Her P-Limbs do look cool and I like how <<s>>trong they can make her but they <<s>>care me a little, <<s>>ometime<<s>>. Though of cour<<s>>e she disable<<s>> the weapon<<s>> when we're together." She giggles. "She ha<<s>> vibe fingers, <<s>>o that'<<s>> awe<<s>>ome.
 		<<else>>
-			She's an amputee, of <<if _lisping == 1>>courthe, tho that'th a little thad<<else>>course, so that's a little sad<</if>>.
+			She's an amputee, of course, <<s>>o that'<<s>> a little <<s>>ad.
 		<</if>>
 		<</if>>
 	<</if>>
@@ -1964,441 +820,181 @@ My favorite part of my body is
 	<</if>>
 <</for>>
 <<elseif ($activeSlave.relationship == -3)>>
-	<<if _lisping == 1>>
-	Of courthe, I'm your wife, _PCTitle." She laughs. "Not exactly traditional married life, but I'll do my betht to help redefine it.
-	<<else>>
-	Of course, I'm your wife, _PCTitle." She laughs. "Not exactly traditional married life, but I'll do my best to help redefine it.
-	<</if>>
+	Of cour<<s>>e, I'm your wife, <<Master>>." She laughs. "Not exactly traditional married life, but I'll do my be<<s>>t to help redefine it.
 <<elseif ($activeSlave.relationship == -2)>>
-	<<if _lisping == 1>>
-	I'm good friendth with thome of the other thlaveth," she lisps
-	<<else>>
-	I'm good friends with some of the other slaves," she mutters
-	<</if>>
-	hesitantly, looking suddenly embarrassed. "I really like you, though, _PCTitle. Like, //like// you, like you." She clears her throat nervously before hurrying on to safer subjects. "Yeah.
+	I'm good friend<<s>> with <<s>>ome of the other <<s>>lave<<s>>," she mutters hesitantly, looking suddenly embarrassed. "I really like you, though, <<Master>>. Like, //like// you, like you." She clears her throat nervously before hurrying on to safer subjects. "Yeah.
 <<elseif ($activeSlave.relationship == -1)>>
-	<<if _lisping == 1>>
-	Ath far ath relationshipth go, _PCTitle," she laughs, "I'm thuch a fucking thlut. It'th tho
-	<<else>>
-	As far as relationships go, _PCTitle," she laughs, "I'm such a fucking slut. It's so
-	<</if>>
-	liberating, not having to worry about any of that crap anymore.
+	A<<s>> far a<<s>> relationships go, <<Master>>," she laughs, "I'm <<s>>uch a fucking <<s>>lut. It's <<s>>o liberating, not having to worry about any of that crap anymore.
 <</if>>
 
-<<if ($arcologies[0].FSSupremacistDecoration gt 50) or ($arcologies[0].FSSubjugationistDecoration gt 50) or ($arcologies[0].FSGenderRadicalistDecoration gt 50) or ($arcologies[0].FSGenderFundamentalistDecoration gt 50) or ($arcologies[0].FSPaternalistDecoration gt 50) or ($arcologies[0].FSDegradationistDecoration gt 50) or ($arcologies[0].FSBodyPuristDecoration gt 50) or ($arcologies[0].FSTransformationFetishistDecoration gt 50) or ($arcologies[0].FSSlimnessEnthusiastDecoration gt 50) or ($arcologies[0].FSMaturityPreferentialistDecoration gt 50) or ($arcologies[0].FSYouthPreferentialistDecoration gt 50) or ($arcologies[0].FSAssetExpansionistDecoration gt 50) or ($arcologies[0].FSPastoralistDecoration gt 50) or ($arcologies[0].FSPhysicalIdealistDecoration gt 50) or ($arcologies[0].FSChattelReligionistDecoration gt 50) or ($arcologies[0].FSRomanRevivalistDecoration gt 50) or ($arcologies[0].FSEgyptianRevivalistDecoration gt 50) or ($arcologies[0].FSRepopulationFocusDecoration gt 50) or ($arcologies[0].FSRestartDecoration gt 50)>>
+<<if ($arcologies[0].FSSupremacistDecoration > 50) || ($arcologies[0].FSSubjugationistDecoration > 50) || ($arcologies[0].FSGenderRadicalistDecoration > 50) || ($arcologies[0].FSGenderFundamentalistDecoration > 50) || ($arcologies[0].FSPaternalistDecoration > 50) || ($arcologies[0].FSDegradationistDecoration > 50) || ($arcologies[0].FSBodyPuristDecoration > 50) || ($arcologies[0].FSTransformationFetishistDecoration > 50) || ($arcologies[0].FSSlimnessEnthusiastDecoration > 50) || ($arcologies[0].FSMaturityPreferentialistDecoration > 50) || ($arcologies[0].FSYouthPreferentialistDecoration > 50) || ($arcologies[0].FSAssetExpansionistDecoration > 50) || ($arcologies[0].FSPastoralistDecoration > 50) || ($arcologies[0].FSPhysicalIdealistDecoration > 50) || ($arcologies[0].FSChattelReligionistDecoration > 50) || ($arcologies[0].FSRomanRevivalistDecoration > 50) || ($arcologies[0].FSEgyptianRevivalistDecoration > 50) || ($arcologies[0].FSRepopulationFocusDecoration > 50) || ($arcologies[0].FSRestartDecoration > 50)>>
 
 <<if ($activeSlave.devotion > 75)>>
-	I'll do everything I can to
-	<<if _lisping == 1>>
-	thupport your vithion for the future.
-	<<else>>
-	support your vision for the future.
-	<</if>>
+	I'll do everything I can to	<<s>>upport your vi<<s>>ion for the future.
 <<elseif ($activeSlave.devotion > 50)>>
-	<<if _lisping == 1>>
-	I do my betht to thupport your vithion for the future.
-	<<else>>
-	I do my best to support your vision for the future.
-	<</if>>
+	I do my be<<s>>t to <<s>>upport your vi<<s>>ion for the future.
 <<else>>
-	I try to conform to your
-	<<if _lisping == 1>>
-	vithion for the future.
-	<<else>>
-	vision for the future.
+	I try to conform to your vi<<s>>ion for the future.
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSRomanRevivalist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	_PCTitle. I'm glad to be a part of it.
-	<<if _lisping == 1>>
-		The new Rome ith fathinating,
-	<<else>>
-		The new Rome is fascinating,
-	<</if>>
+		The new Rome is fa<<s>>cinating, <<Master>>. I'm glad to be a part of it.
 	<<elseif ($activeSlave.devotion > 20)>>
-	<<if _lisping == 1>>
-		I'm proud to be a thlave in the new Rome.
-	<<else>>
-		I'm proud to be a slave in the new Rome.
-	<</if>>
-	<<else>>
-	<<if _lisping == 1>>
-		Being a thlave in the new Rome ith a little thcary, _PCTitle. I hear the thlaveth fighting thometimeth.
+		I'm proud to be a <<s>>lave in the new Rome.
 	<<else>>
-		Being a slave in the new Rome is a little scary, _PCTitle. I hear the slaves fighting sometimes.
-	<</if>>
+		Being a <<s>>lave in the new Rome is a little <<s>>cary, <<Master>>. I hear <<s>>lave<<s>> fighting <<s>>ometime<<s>>.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSEgyptianRevivalist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	<<if _lisping == 1>>
-		Thith new Egypt ith fathcinating,
-	<<else>>
-		This new Egypt is fascinating,
-	<</if>>
-	_PCTitle. I'm glad to be a part of it.
-	<<elseif ($activeSlave.devotion > 75)>>
-	<<if _lisping == 1>>
-		I'm proud to be a thlave of the new Pharaoh.
-	<<else>>
-		I'm proud to be a slave of the new Pharaoh.
-	<</if>>
-	<<else>>
-	<<if _lisping == 1>>
-		Being a thlave in thith new ancient Egypt ith a little reathuring. Thome of the other thlaveth thay they uthed to uthe thlaveth for great thingth, anyway.
+		This new Egypt is fa<<s>>cinating, <<Master>>. I'm glad to be a part of it.
+	<<elseif ($activeSlave.devotion > 20)>>
+		I'm proud to be a <<s>>lave of the new Pharaoh.
 	<<else>>
-		Being a slave in this new ancient Egypt is a little reassuring. Some of the other slaves say they used to use slaves for great things, anyway.
-	<</if>>
+		Being a <<s>>lave in thi<<s>> new Egypt is a little reassuring. <<S>>ome of the other <<s>>lav<<s>> <<s>>ay they u<<s>>ed to u<<s>>e <<s>>lave<<s>> for great thing<<s>>, anyway.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSChattelReligionist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	<<if _lisping == 1>>
-		It'th interethting, theeing how fatht a new faith can take hold.
-	<<else>>
-		It's interesting, seeing how fast a new faith can take hold.
-	<</if>>
+		It'<<s>> intere<<s>>ting, <<s>>eeing how fa<<s>>t a new faith can take hold.
 	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "masochist") && ($activeSlave.fetishStrength > 60)>>
-	<<if _lisping == 1>>
-		I - I alwayth thought pain wath good for me. It'th tho nice to be told that it'th true at latht.
-	<<else>>
-		I - I always thought pain was good for me. It's so nice to be told that it's true at last.
-	<</if>>
-	<<elseif ($activeSlave.devotion > 75)>>
-	<<if _lisping == 1>>
-		I'm proud to be a thlave, thince that'th what'th right for me.
-	<<else>>
-		I'm proud to be a slave, since that's what's right for me.
-	<</if>>
-	<<else>>
-	<<if _lisping == 1>>
-		Thometimeth I have doubth about the new faith, but I do my betht to ignore them.
+		I - I alway<<s>> thought pain wa<<s>> good for me. It'<<s>> <<s>>o ni<<c>>e to be told that it'<<s>> true at la<<s>>t.
+	<<elseif ($activeSlave.devotion > 20)>>
+		I'm proud to be a <<s>>lave, <<s>>in<<c>>e that'<<s>> what'<<s>> right for me.
 	<<else>>
-		Sometimes I have doubts about the new faith, but I do my best to ignore them.
-	<</if>>
+		<<S>>ometime<<s>> I have doubts about the new faith, but I do my be<<s>>t to ignore them.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSDegradationist >= 10>>
 	<<if ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60)>>
-		<<if _lisping == 1>>
-		I - I alwayth knew I wath a utheleth bitch, tho it'th eathy to accept being degraded.
-		<<else>>
-		I - I always knew I was a useless bitch, so it's easy to accept being degraded.
-		<</if>>
-	<<elseif ($activeSlave.devotion > 75)>>
-		<<if _lisping == 1>>
-		I'm your worthleth little degraded fuckpuppet, _PCTitle.
-		<<else>>
-		I'm your worthless little degraded fuckpuppet, _PCTitle.
-		<</if>>
+		I - I alway<<s>> knew I wa<<s>> a u<<s>>ele<<ss>> bitch, so it's ea<<s>>y to accept being degraded.
+	<<elseif ($activeSlave.devotion > 20)>>
+		I'm your worthle<<ss>> little degraded fuckpuppet, <<Master>>.
 	<<else>>
-		I'm trying to accept the degradation, _PCTitle.
+		I'm trying to accept the degradation, <<Master>>.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSAssetExpansionist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	I've been watching all the body
-	<<if _lisping == 1>>
-		dythphoria on dithplay lately; it'th certainly novel.
-	<<else>>
-		dysphoria on display lately; it's certainly novel.
-	<</if>>
+		I've been watching all the body	dysphoria on display lately; it's certainly novel.
 	<<elseif ($activeSlave.energy > 95)>>
-	<<if _lisping == 1>>
-		Thank you tho much for thupporting thith new T&A expanthion culture, _PCTitle. It'th like you made it jutht for me. Tho much eye candy!
-	<<else>>
-		Thank you so much for supporting this new T&A expansion culture, _PCTitle. It's like you made it just for me. So much eye candy!
-	<</if>>
+		Thank you <<s>>o much for <<s>>upporting thi<<s>> new T&A expan<<s>>ion culture, <<Master>>. It'<<s>> like you made it ju<<s>>t for me. <<S>>o much eye candy!
 	<<elseif ($activeSlave.boobs > 1000)>>
-	<<if _lisping == 1>>
-		It'th almotht thtrange, being in a place where thethe titth don't make me different.
-	<<else>>
-		It's almost strange, being in a place where these tits don't make me different.
-	<</if>>
+		It'<<s>> almost <<s>>trange, being in a pla<<c>>e where the<<s>>e tit<<s>> don't make me <<s>>tand out.
 	<<else>>
-	I'm a little worried I don't have the
-	<<if _lisping == 1>>
-		boobth for thith new expanthion culture though.
-	<<else>>
-		tits for this new expansion culture though.
-	<</if>>
+		I'm a little worried I don't have the tit<<s>> for thi<<s>> new expan<<s>>ion culture though.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSTransformationFetishist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	I'm learning a lot about men,
-	<<if _lisping == 1>>
-		jutht watching how what'th beautiful ith changing.
-	<<else>>
-		just watching how what's beautiful is changing.
-	<</if>>
+		I'm learning a lot about men, just watching how what'<<s>> beautiful is changing.
 	<<elseif ($activeSlave.energy > 95)>>
-	<<if _lisping == 1>>
-		The arcology ith like, a bimbo land now, _PCTitle. It'th tho hot!
+		The arcology is like, a bimbo land now, <<Master>>. It's <<s>>o hot
 	<<else>>
-		The arcology is like, a bimbo land now, _PCTitle. It's so hot!
-	<</if>>
-	<<else>>
-	I like getting hotter, _PCTitle, but all the
-	<<if _lisping == 1>>
-		thurgery ith thtill a little thcary.
-	<<else>>
-		surgery is still a little scary.
-	<</if>>
+		I like getting hotter, <<Master>>, but all the <<s>>urgery is <<s>>till a little <<s>>cary.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSGenderRadicalist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	<<if _lisping == 1>>
-		I thuppothe it wath inevitable that a place where anyone can be a thlave would thtart treating anyone who'th a thlave ath a girl.
-	<<else>>
-		I suppose it was inevitable that a place where anyone can be a slave would start treating anyone who's a slave as a girl.
-	<</if>>
+		I <<s>>uppo<<s>>e it wa<<s>> inevitable that a pla<<c>>e where anyone can be a <<s>>lave would <<s>>tart treating anyone who's a <<s>>lave a<<s>> a girl.
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
-	<<if _lisping == 1>>
-		I really like how you're encouraging thlavery to focuth on cockth." She giggles. "I like cockth!
-	<<else>>
-		I really like how you're encouraging slavery to focus on cocks." She giggles. "I like cocks!
-	<</if>>
+		I really like how you're encouraging <<s>>lavery to focu<<s>> on cock<<s>>." She giggles. "I like cock<<s>>!
 	<<elseif ($activeSlave.dick > 0)>>
-	<<if _lisping == 1>>
-		It ithn't alwayth eathy being a thlave girl, but it'th nice being in a place where that'th normal.
+		It i<<s>>n't always ea<<s>>y being a <<s>>lave girl, but it'<<s>> ni<<c>>e being in a pla<<c>>e where that'<<s>> normal.
 	<<else>>
-		It isn't always easy being a slave girl, but it's nice being in a place where that's normal.
-	<</if>>
-	<<else>>
-	<<if _lisping == 1>>
-		It'th kind of nice, being a thlave in a place where, you know, anyone can be a thlave.
-	<<else>>
-		It's kind of nice, being a slave in a place where, you know, anyone can be a slave.
-	<</if>>
+		It'<<s>> kind of ni<<c>>e, being a <<s>>lave in a pla<<c>>e where, you know, anyone can be a <<s>>lave.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSGenderFundamentalist >= 10>>
 	<<if ($activeSlave.intelligence > 1)>>
-	<<if _lisping == 1>>
-		I thhouldn't be thurprithed at how eathy it ith to reinforce traditional valueth in a new, thlavery focuthed culture.
-	<<else>>
-		I shouldn't be surprised at how easy it is to reinforce traditional values in a new, slavery focused culture.
-	<</if>>
+		I shouldn't be surpri<<s>>ed at how ea<<s>>y it i<<s>> to reinforce traditional value<<s>> in a new, <<s>>lavery focused culture.
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-	I really like how you're encouraging
-	<<if _lisping == 1>>
-		thlavery to focuth on girlth." She giggles. "I like girlth!
-	<<else>>
-		slavery to focus on girls." She giggles. "I like girls!
-	<</if>>
+		I really like how you're encouraging <<s>>lavery to focus on girl<<s>>." She giggle<<s>>. "I like girl<<s>>!
 	<<elseif ($activeSlave.dick > 0)>>
-	I know I'm not a perfect fit for your
-	<<if _lisping == 1>>
-		vithion of the future, but I'll do my betht to be a good girl.
+		I know I'm not a perfect fit for your vi<<s>>ion of the future, but I'll do my be<<s>>t to be a good girl.
 	<<else>>
-		vision of the future, but I'll do my best to be a good girl.
-	<</if>>
-	<<else>>
-	I'm relieved I fit into your
-	<<if _lisping == 1>>
-		vithion of the future of thlavery.
-	<<else>>
-		vision of the future of slavery.
-	<</if>>
+		I'm relieved I fit into your vi<<s>>ion of the future of <<s>>lavery.
 	<</if>>
 <</if>>
-<<if $arcologies[0].FSRepopulationFocus gte 10>>
-	<<if ($activeSlave.intelligence gt 1)>>
-	<<if _lisping is 1>>
-		I really hope we can thave humanity like thith.
-	<<else>>
-		I really hope we can save humanity like this.
-	<</if>>
-	<<elseif ($activeSlave.fetishKnown is 1) and ($activeSlave.fetish is "pregnancy")>>
-	I really like how you are encourage 
-	<<if _lisping is 1>>
-		girlth to get pregnant." She giggles. "I really like big, round bellieth!
-	<<else>>
-		girls to get pregnant." She giggles. "I really like big, round bellies!
-	<</if>>
-	<<elseif ($activeSlave.preg gt 10)>>
-	I'm relieved I fit into your
-	<<if _lisping is 1>>
-		vithion of the future. I hope I can give you lotth of healhty children
-	<<else>>
-		vision of the future.  I hope I can give you lots of healthy children.
-	<</if>>
-	<<else>>
-	I know I'm not a perfect fit for your
-	<<if _lisping is 1>>
-		vithion of the future, but I'll do my betht to be a good girl.
+<<if $arcologies[0].FSRepopulationFocus >= 10>>
+	<<if ($activeSlave.intelligence > 1)>>
+		I really hope we can <<s>>ave humanity like thi<<s>>.
+	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "pregnancy")>>
+		I really like how you are encouraging girl<<s>> to get pregnant." She giggles. "I really like big, round bellie<<s>>!
+	<<elseif ($activeSlave.preg > 10)>>
+		I'm relieved I fit into your vi<<s>>ion of the future. I hope I can give you lot<<s>> of healthy children.
 	<<else>>
-		vision of the future, but I'll do my best to be a good girl.
-	<</if>>
+		I know I'm not a perfect fit for your vi<<s>>ion of the future, but I'll do my be<<s>>t to be a good girl.
 	<</if>>
 <</if>>
-<<if $arcologies[0].FSRestart gte 10>>
-	<<if ($activeSlave.intelligence gt 1)>>
-	<<if _lisping is 1>>
-		I really hope we can thave humanity like thith.
-	<<else>>
-		I really hope we can save humanity like this.
-	<</if>>
-	<<elseif ($activeSlave.preg > 0 || $activeSlave.ovaries == 0)>>
-	I'm relieved I fit into your
-	<<if _lisping is 1>>
-		vithion of the future.
-	<<else>>
-		vision of the future.
-	<</if>>
+<<if $arcologies[0].FSRestart >= 10>>
+	<<if ($activeSlave.intelligence > 1)>>
+		I really hope we can <<s>>ave humanity like thi<<s>>.
+	<<elseif ($activeSlave.preg < 0 || $activeSlave.ovaries == 0)>>
+		I'm relieved I fit into your vi<<s>>ion of the future.
 	<else>>
-	I know I'm not a perfect fit for your
-	<<if _lisping is 1>>
-		vithion of the future, but I'll do my betht to be a good girl.
-	<<else>>
-		vision of the future, but I'll do my best to be a good girl.
-	<</if>>
+		I know I'm not a perfect fit for your vi<<s>>ion of the future, but I'll do my be<<s>>t to be a good girl.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPhysicalIdealist >= 10>>
 	<<if ($activeSlave.muscles <= 5)>>
-	I know I'm not a perfect fit for your
-	<<if _lisping == 1>>
-		vithion of the future, but I'll do my betht to therve everyone who's well built.
+		I know I'm not a perfect fit for your vi<<s>>ion of the future, but I'll do my be<<s>>t to <<s>>erve everyone who'<<s>> built.
 	<<else>>
-		vision of the future, but I'll do my best to serve everyone who's well built.
-	<</if>>
-	<<else>>
-	I'm relieved I fit into your
-	<<if _lisping == 1>>
-		vithion of the future of thlavery.
-	<<else>>
-		vision of the future of slavery.
-	<</if>>
+		I'm relieved I fit into your vi<<s>>ion of the future of the human body.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSSubjugationist >= 10>>
 	<<if ($activeSlave.race == $arcologies[0].FSSubjugationistRace)>>
-	<<if _lisping == 1>>
-		I know that ath a $arcologies[0].FSSubjugationistRace thlave, it's my proper plathe to therve.
+		I know that a<<s>> a $arcologies[0].FSSubjugationistRace <<s>>lave, it'<<s>> my proper pla<<c>>e to <<s>>erve.
 	<<else>>
-		I know that as a $arcologies[0].FSSubjugationistRace slave, it's my proper place to serve.
-	<</if>>
-	<<else>>
-	Since I'm not a $arcologies[0].FSSubjugationistRace
-	<<if _lisping == 1>>
-		thlave,
-	<<else>>
-		slave,
-	<</if>>
-	I'm a little afraid I don't fit into your vision of the future.
+		<<S>>ince I'm not a $arcologies[0].FSSubjugationistRace	<<s>>lave, I'm a little afraid I don't fit into your vision of the future.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSSupremacist >= 10>>
 	<<if ($activeSlave.race != $arcologies[0].FSSupremacistRace)>>
-	I know that it's my proper
-	<<if _lisping == 1>>
-		plathe to therve my $arcologies[0].FSSupremacistRace betterth.
+		I know that it's my proper pla<<c>>e to <<s>>erve my $arcologies[0].FSSupremacistRace better<<s>>.
 	<<else>>
-		place to serve my $arcologies[0].FSSupremacistRace betters.
-	<</if>>
-	<<else>>
-	I know that $arcologies[0].FSSupremacistRace
-	<<if _lisping == 1>>
-		thlaves are rare now, so I'll do my betht to bring credit to the $arcologies[0].FSSupremacistRace rathe.
-	<<else>>
-		slaves are rare now, so I'll do my best to bring credit to the $arcologies[0].FSSupremacistRace race.
-	<</if>>
+		I know that $arcologies[0].FSSupremacistRace <<s>>lave<<s>> are rare now, so I'll do my be<<s>>t to bring credit to the $arcologies[0].FSSupremacistRace ra<<c>>e.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPaternalist >= 10>>
-	I'm so lucky to be a
-	<<if _lisping == 1>>
-		thlave here. The future lookth better all the time.
-	<<else>>
-		slave here. The future looks better all the time.
-	<</if>>
+	I'm so lucky to be a <<s>>lave here. The future look<<s>> better all the time.
 <</if>>
 <<if $arcologies[0].FSBodyPurist >= 10>>
 	<<if ($activeSlave.boobsImplant > 0)>>
-	I know I'm not a perfect fit for your
-	<<if _lisping == 1>>
-		vithion of the future, thince my tits thtill need implanth to be the right thize.
-	<<else>>
-		vision of the future, since my tits still need implants to be the right size.
-	<</if>>
+		I know I'm not a perfect fit for your vi<<s>>ion of the future, since my tit<<s>> are ugly and fake.
 	<<else>>
-	I'm relieved my boobs won't need
-	<<if _lisping == 1>>
-		implanth here.
-	<<else>>
-		implants here.
-	<</if>>
+		I'm relieved my boob<<s>> won't need implant<<s>> here.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSSlimnessEnthusiast >= 10>>
 	<<if ($activeSlave.boobs > 500) || ($activeSlave.butt > 3) || ($activeSlave.weight > 30)>>
-	I know I'm an ugly fat
-	<<if _lisping == 1>>
-		thlut. I wish I were thlim.
-	<<else>>
-		slut. I wish I were slim.
-	<</if>>
+		I know I'm an ugly fat <<s>>lut. I wish I were <<s>>lim.
 	<<else>>
-	<<if _lisping == 1>>
-		It's nithe, living in a plathe where I don't need big boobth to be pretty.
-	<<else>>
-		It's nice, living in a place where I don't need big boobs to be pretty.
-	<</if>>
+		It's ni<<c>>e, living in a pla<<c>>e where I don't need big boob<<s>>to be pretty.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSMaturityPreferentialist >= 10>>
 	<<if ($activeSlave.actualAge < 30)>>
-	<<if _lisping == 1>>
-		I know I'm jutht a young bitch. I try to be good to my elderth.
-	<<else>>
-		I know I'm just a young bitch. I try to be good to my elders.
-	<</if>>
+		I know I'm ju<<s>>t a young bitch. I try to be good to my elder<<s>>.
 	<<else>>
-	It's nice, living in a
-	<<if _lisping == 1>>
-		plathe that appreciateth an older lady.
-	<<else>>
-		place that appreciates an older lady.
-	<</if>>
+		It's ni<<c>>e, living in a pla<<c>>e that appreciate<<s>> an older lady.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSYouthPreferentialist >= 10>>
 	<<if ($activeSlave.actualAge < 30)>>
-	<<if _lisping == 1>>
-		It's nithe, being young here.
-	<<else>>
-		It's nice, being young here.
-	<</if>>
+		It's ni<<c>>e, being young here.
 	<<else>>
-	<<if _lisping == 1>>
-		I know I'm jutht an old bitch. I try to therve younger and better thlaves well.
-	<<else>>
-		I know I'm just an old bitch. I try to serve younger and better slaves well.
-	<</if>>
+		I know I'm ju<<s>>t an old bitch. I try to <<s>>erve younger and better <<s>>lave<<s>> well.
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPastoralist >= 10>>
 	<<if ($activeSlave.lactation > 0)>>
-	I'll do my best to make
-	<<if _lisping == 1>>
-		ath
-	<<else>>
-		as
-	<</if>>
-	much milk for the arcology as I can.
+		I'll do my be<<s>>t to make a<<s>> much milk for the arcology as I can.
 	<<elseif ($activeSlave.dick > 0) && ($activeSlave.balls > 0)>>
-	I'll do my best to make
-	<<if _lisping == 1>>
-		ath
-	<<else>>
-		as
-	<</if>>
-	much cum for the arcology as I can.
+		I'll do my best to make	a<<s>> much cum for the arcology a<<s>> I can.
 	<<else>>
 		I wish I could make milk for the arcology.
 	<</if>>
@@ -2407,45 +1003,25 @@ My favorite part of my body is
 
 <<if ($activeSlave.devotion > 75)>>
 <<if ($activeSlave.weekAcquired == 1) && ($week > 104)>>
-	<<if _lisping == 1>>
-		I feel like I've known you my whole life and I would follow you to the endth of the earth, _PCTitle.
-	<<else>>
-		I feel like I've known you my whole life and I would follow you to the ends of the earth, _PCTitle.
-	<</if>>
+	I feel like I've known you my whole life, <<Master>>, and I would follow you to the end of the earth.
 <<elseif ($week - $activeSlave.weekAcquired) > 104>>
-	I feel like I know you pretty well, _PCTitle.
+	I feel like I know you pretty well, <<Master>>.
 <</if>>
 <</if>>
 
-<<if _lisping == 1>>
-	Tho,
-<<else>>
-	So,
-<</if>>
-_PCTitle," she concludes,
+<<S>>o,
+<<Master>>," she concludes,
 <<if ($activeSlave.fetishKnown == 1)>>
 	<<if ($activeSlave.fetishStrength > 60)>>
 	<<switch $activeSlave.fetish>>
 	<<case "submissive">>
-		<<if _lisping == 1>>
-		"Can I therve you thomehow?"
-		<<else>>
-		"Can I serve you somehow?"
-		<</if>>
+		"Can I <<s>>erve you somehow?"
 	<<case "dom">>
 		"Can I hold a bitch down for you?"
 	<<case "sadist">>
-		<<if _lisping == 1>>
-		"Can I thpank a bitch for you?"
-		<<else>>
-		"Can I spank a bitch for you?"
-		<</if>>
+		"Can I <<s>>pank a bitch for you?"
 	<<case "masochist">>
-		<<if _lisping == 1>>
-		"Can I be your pain thlave now?"
-		<<else>>
-		"Can I be your pain slave now?"
-		<</if>>
+		"Can I be your pain <<s>>lave now?"
 	<<case "cumslut">>
 		"Can I blow you now?"
 	<<case "humiliation">>
@@ -2453,69 +1029,32 @@ _PCTitle," she concludes,
 	<<case "boobs">>
 		"Can I give you a titjob now?"
 	<<case "buttslut">>
-		<<if _lisping == 1>>
-		"Can I be your anal cockthleeve now?"
-		<<else>>
-		"Can I be your anal cocksleeve now?"
-		<</if>>
+		"Can I be your anal cock<<s>>leeve now?"
 	<<case "pregnancy">>
 		<<if ($activeSlave.dick > 0) && ($activeSlave.balls > 0)>>
-			<<if _lisping == 1>>
-			"Are there any thlaves you want knocked up?"
-			<<else>>
-			"Are there any slaves you want knocked up?"
-			<</if>>
+			"Are there any <<s>>lave<<s>> you want knocked up?"
 		<<elseif ($activeSlave.preg > -2) && ($activeSlave.ovaries > 0)>>
 			<<if $activeSlave.preg > 3>>
-				<<if _lisping == 1>>
-				"Can I have thome more cum in my pregnant puthy?"
-				<<else>>
-				"Can I have some more cum in my pregnant pussy?"
-				<</if>>
+				"Can I have <<s>>ome more cum in my pregnant pu<<ss>>y?"
 			<<else>>
 				"Can I be bred?"
 			<</if>>
 		<<else>>
-			<<if _lisping == 1>>
-			"Are there any pregnant thlaves I could, you know, thpend time with?"
-			<<else>>
-			"Are there any pregnant slaves I could, you know, spend time with?"
-			<</if>>
+			"Are there any pregnant <<s>>lave<<s>> I could, you know, <<s>>pend time with?"
 		<</if>>
 	<<default>>
-		<<if _lisping == 1>>
-		"Can I therve you thomehow?"
-		<<else>>
-		"Can I serve you somehow?"
-		<</if>>
+		"Can I <<s>>erve you <<s>>omehow?"
 	<</switch>>
 	<<elseif ($activeSlave.energy > 95)>>
-		<<if _lisping == 1>>
-		"Pleathe fuck me. Pleathe."
-		<<else>>
-		"Please fuck me. Please."
-		<</if>>
+		"Plea<<s>>e fuck me. Plea<<s>>e."
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXX > 80)>>
-		"Can I hang around and get oral from the next
-		<<if _lisping == 1>>
-		thlave in here?"
-		<<else>>
-		slave in here?"
-		<</if>>
+		"Can I hang around and get oral from the next <<s>>lave in here?"
 	<<elseif ($activeSlave.attrKnown == 1) && ($activeSlave.attrXY > 80)>>
-		"Can I hang around and suck the next dick in here?"
+		"Can I hang around and <<s>>uck the next dick in here?"
 	<<else>>
-		<<if _lisping == 1>>
-		"Can I therve you thomehow?"
-		<<else>>
-		"Can I serve you somehow?"
-		<</if>>
+		"Can I <<s>>erve you <<s>>omehow?"
 	<</if>>
 <<else>>
-	<<if _lisping == 1>>
-	"Can I therve you thomehow?"
-	<<else>>
-	"Can I serve you somehow?"
-	<</if>>
+	"Can I <<s>>erve you <<s>>omehow?"
 <</if>>
 <</if>> /*Closes fearful and below exempt*/
diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw
index 5869b9ab4b6d1be31dfaabc802df449193b92b5b..92d25f00aa814182715e6489647301896c5c237c 100644
--- a/src/npc/startingGirls/startingGirls.tw
+++ b/src/npc/startingGirls/startingGirls.tw
@@ -190,7 +190,7 @@ __You are customizing this slave:__
 		<</if>>
 	<<elseif $PC.career is "escort">>
 		<<if $activeSlave.mother == -1 && $activeSlave.father == -1>>
-			<<set $activeSlave.origin to "A client payed you a large sum of credits to prove you could literally fuck yourself. She is the result of that lucrative night.">>
+			<<set $activeSlave.origin to "A client paid you a large sum of credits to prove you could literally fuck yourself. She is the result of that lucrative night.">>
 			<<set $activeSlave.customTat to "She has your custom emblem tattooed on her left breast.">>
 		<<elseif $activeSlave.mother == -1>>
 			<<set $activeSlave.origin to "She was the result of unprotected sex with a client. He paid you quite well to enjoy your body as you grew heavy with his child.">>
diff --git a/src/pregmod/incubatorReport.tw b/src/pregmod/incubatorReport.tw
index 3e65202110471be1e22a519de19a45d9f0883f92..48e77047399756744138a44cf382cffeea0fa9f6 100644
--- a/src/pregmod/incubatorReport.tw
+++ b/src/pregmod/incubatorReport.tw
@@ -1,6 +1,5 @@
 :: Incubator Report [nobr]
 
-''Incubator Report''<hr style="margin:0">
 <<set $incubatorSlaves to 0>>
 
 <<for $i to 0; $i < $tanks.length; $i++>>
diff --git a/src/pregmod/pregmodWidgets.tw b/src/pregmod/pregmodWidgets.tw
index 7d8e91581d351904c3d75487c3cfc369585e3c2d..009e833121c57eb0d5b294835c76a7ec48d877ff 100644
--- a/src/pregmod/pregmodWidgets.tw
+++ b/src/pregmod/pregmodWidgets.tw
@@ -908,204 +908,204 @@ extremely pale -5
 <<switch $args[0].nationality>>
 <<case "American">>
 	<<if $args[1].race is "black">>
-		<<set $args[1].birthName to $africanAmericanSlaveNames.random()>>
+		<<set $args[1].slaveName to $africanAmericanSlaveNames.random()>>
 	<<elseif $args[1].race is "latina">>
-		<<set $args[1].birthName to $latinaSlaveNames.random()>>
+		<<set $args[1].slaveName to $latinaSlaveNames.random()>>
 	<<elseif $args[1].race is "asian">>
-		<<set $args[1].birthName to $asianAmericanSlaveNames.random()>>
+		<<set $args[1].slaveName to $asianAmericanSlaveNames.random()>>
 	<<elseif $args[1].race is "middle eastern">>
-		<<set $args[1].birthName to $egyptianSlaveNames.random()>>
+		<<set $args[1].slaveName to $egyptianSlaveNames.random()>>
 	<<else>>
-		<<set $args[1].birthName to $whiteAmericanSlaveNames.random()>>
+		<<set $args[1].slaveName to $whiteAmericanSlaveNames.random()>>
 	<</if>>
 <<case "Canadian">>
-	<<set $args[1].birthName to $canadianSlaveNames.random()>>
+	<<set $args[1].slaveName to $canadianSlaveNames.random()>>
 <<case "Mexican">>
-	<<set $args[1].birthName to $mexicanSlaveNames.random()>>
+	<<set $args[1].slaveName to $mexicanSlaveNames.random()>>
 <<case "Dominican">>
-	<<set $args[1].birthName to $dominicanSlaveNames.random()>>
+	<<set $args[1].slaveName to $dominicanSlaveNames.random()>>
 <<case "Puerto Rican">>
-	<<set $args[1].birthName to $puertoRicanSlaveNames.random()>>
+	<<set $args[1].slaveName to $puertoRicanSlaveNames.random()>>
 <<case "Haitian">>
-	<<set $args[1].birthName to $haitianSlaveNames.random()>>
+	<<set $args[1].slaveName to $haitianSlaveNames.random()>>
 <<case "Jamaican">>
-	<<set $args[1].birthName to $jamaicanSlaveNames.random()>>
+	<<set $args[1].slaveName to $jamaicanSlaveNames.random()>>
 <<case "Cuban">>
-	<<set $args[1].birthName to $cubanSlaveNames.random()>>
+	<<set $args[1].slaveName to $cubanSlaveNames.random()>>
 <<case "Guatemalan">>
-	<<set $args[1].birthName to $guatemalanSlaveNames.random()>>
+	<<set $args[1].slaveName to $guatemalanSlaveNames.random()>>
 <<case "Chilean">>
-	<<set $args[1].birthName to $chileanSlaveNames.random()>>
+	<<set $args[1].slaveName to $chileanSlaveNames.random()>>
 <<case "Peruvian">>
-	<<set $args[1].birthName to $peruvianSlaveNames.random()>>
+	<<set $args[1].slaveName to $peruvianSlaveNames.random()>>
 <<case "Bolivian">>
-	<<set $args[1].birthName to $bolivianSlaveNames.random()>>
+	<<set $args[1].slaveName to $bolivianSlaveNames.random()>>
 <<case "Venezuelan">>
-	<<set $args[1].birthName to $venezuelanSlaveNames.random()>>
+	<<set $args[1].slaveName to $venezuelanSlaveNames.random()>>
 <<case "Belarusian">>
-	<<set $args[1].birthName to $belarusianSlaveNames.random()>>
+	<<set $args[1].slaveName to $belarusianSlaveNames.random()>>
 <<case "Russian">>
-	<<set $args[1].birthName to $russianSlaveNames.random()>>
+	<<set $args[1].slaveName to $russianSlaveNames.random()>>
 <<case "Ukrainian">>
-	<<set $args[1].birthName to $ukrainianSlaveNames.random()>>
+	<<set $args[1].slaveName to $ukrainianSlaveNames.random()>>
 <<case "Italian">>
-	<<set $args[1].birthName to $italianSlaveNames.random()>>
+	<<set $args[1].slaveName to $italianSlaveNames.random()>>
 <<case "Spanish">>
-	<<set $args[1].birthName to $spanishSlaveNames.random()>>
+	<<set $args[1].slaveName to $spanishSlaveNames.random()>>
 <<case "British">>
-	<<set $args[1].birthName to $britishSlaveNames.random()>>
+	<<set $args[1].slaveName to $britishSlaveNames.random()>>
 <<case "Scottish">>
-	<<set $args[1].birthName to $scottishSlaveNames.random()>>
+	<<set $args[1].slaveName to $scottishSlaveNames.random()>>
 <<case "French">>
-	<<set $args[1].birthName to $frenchSlaveNames.random()>>
+	<<set $args[1].slaveName to $frenchSlaveNames.random()>>
 <<case "German">>
-	<<set $args[1].birthName to $germanSlaveNames.random()>>
+	<<set $args[1].slaveName to $germanSlaveNames.random()>>
 <<case "Lithuanian">>
-	<<set $args[1].birthName to $lithuanianSlaveNames.random()>>
+	<<set $args[1].slaveName to $lithuanianSlaveNames.random()>>
 <<case "Norwegian">>
-	<<set $args[1].birthName to $norwegianSlaveNames.random()>>
+	<<set $args[1].slaveName to $norwegianSlaveNames.random()>>
 <<case "Slovak">>
-	<<set $args[1].birthName to $slovakSlaveNames.random()>>
+	<<set $args[1].slaveName to $slovakSlaveNames.random()>>
 <<case "Danish">>
-	<<set $args[1].birthName to $danishSlaveNames.random()>>
+	<<set $args[1].slaveName to $danishSlaveNames.random()>>
 <<case "Dutch">>
-	<<set $args[1].birthName to $dutchSlaveNames.random()>>
+	<<set $args[1].slaveName to $dutchSlaveNames.random()>>
 <<case "Austrian">>
-	<<set $args[1].birthName to $austrianSlaveNames.random()>>
+	<<set $args[1].slaveName to $austrianSlaveNames.random()>>
 <<case "Swiss">>
-	<<set $args[1].birthName to $swissSlaveNames.random()>>
+	<<set $args[1].slaveName to $swissSlaveNames.random()>>
 <<case "Serbian">>
-	<<set $args[1].birthName to $serbianSlaveNames.random()>>
+	<<set $args[1].slaveName to $serbianSlaveNames.random()>>
 <<case "Belgian">>
-	<<set $args[1].birthName to $belgianSlaveNames.random()>>
+	<<set $args[1].slaveName to $belgianSlaveNames.random()>>
 <<case "Czech">>
-	<<set $args[1].birthName to $czechSlaveNames.random()>>
+	<<set $args[1].slaveName to $czechSlaveNames.random()>>
 <<case "Portuguese">>
-	<<set $args[1].birthName to $portugueseSlaveNames.random()>>
+	<<set $args[1].slaveName to $portugueseSlaveNames.random()>>
 <<case "Swedish">>
-	<<set $args[1].birthName to $swedishSlaveNames.random()>>
+	<<set $args[1].slaveName to $swedishSlaveNames.random()>>
 <<case "Romanian">>
-	<<set $args[1].birthName to $romanianSlaveNames.random()>>
+	<<set $args[1].slaveName to $romanianSlaveNames.random()>>
 <<case "Hungarian">>
-	<<set $args[1].birthName to $hungarianSlaveNames.random()>>
+	<<set $args[1].slaveName to $hungarianSlaveNames.random()>>
 <<case "Estonian">>
-	<<set $args[1].birthName to $estonianSlaveNames.random()>>
+	<<set $args[1].slaveName to $estonianSlaveNames.random()>>
 <<case "Irish">>
-	<<set $args[1].birthName to $irishSlaveNames.random()>>
+	<<set $args[1].slaveName to $irishSlaveNames.random()>>
 <<case "Icelandic">>
-	<<set $args[1].birthName to $icelandicSlaveNames.random()>>
+	<<set $args[1].slaveName to $icelandicSlaveNames.random()>>
 <<case "Finnish">>
-	<<set $args[1].birthName to $finnishSlaveNames.random()>>
+	<<set $args[1].slaveName to $finnishSlaveNames.random()>>
 <<case "Greek">>
-	<<set $args[1].birthName to $greekSlaveNames.random()>>
+	<<set $args[1].slaveName to $greekSlaveNames.random()>>
 <<case "Polish">>
-	<<set $args[1].birthName to $polishSlaveNames.random()>>
+	<<set $args[1].slaveName to $polishSlaveNames.random()>>
 <<case "Brazilian">>
-	<<set $args[1].birthName to $brazilianSlaveNames.random()>>
+	<<set $args[1].slaveName to $brazilianSlaveNames.random()>>
 <<case "Egyptian">>
-	<<set $args[1].birthName to $egyptianSlaveNames.random()>>
+	<<set $args[1].slaveName to $egyptianSlaveNames.random()>>
 <<case "Colombian">>
-	<<set $args[1].birthName to $colombianSlaveNames.random()>>
+	<<set $args[1].slaveName to $colombianSlaveNames.random()>>
 <<case "Argentinian">>
-	<<set $args[1].birthName to $argentinianSlaveNames.random()>>
+	<<set $args[1].slaveName to $argentinianSlaveNames.random()>>
 <<case "Turkish">>
-	<<set $args[1].birthName to $turkishSlaveNames.random()>>
+	<<set $args[1].slaveName to $turkishSlaveNames.random()>>
 <<case "Iranian">>
-	<<set $args[1].birthName to $iranianSlaveNames.random()>>
+	<<set $args[1].slaveName to $iranianSlaveNames.random()>>
 <<case "Armenian">>
-	<<set $args[1].birthName to $armenianSlaveNames.random()>>
+	<<set $args[1].slaveName to $armenianSlaveNames.random()>>
 <<case "Israeli">>
-	<<set $args[1].birthName to $israeliSlaveNames.random()>>
+	<<set $args[1].slaveName to $israeliSlaveNames.random()>>
 <<case "Saudi">>
-	<<set $args[1].birthName to $saudiSlaveNames.random()>>
+	<<set $args[1].slaveName to $saudiSlaveNames.random()>>
 <<case "South African">>
 	<<if $args[1].race is "black">>
-		<<set $args[1].birthName to $blackSouthAfricanSlaveNames.random()>>
+		<<set $args[1].slaveName to $blackSouthAfricanSlaveNames.random()>>
 	<<else>>
-		<<set $args[1].birthName to $whiteSouthAfricanSlaveNames.random()>>
+		<<set $args[1].slaveName to $whiteSouthAfricanSlaveNames.random()>>
 	<</if>>
 <<case "Nigerian">>
-	<<set $args[1].birthName to $nigerianSlaveNames.random()>>
+	<<set $args[1].slaveName to $nigerianSlaveNames.random()>>
 <<case "Congolese">>
-	<<set $args[1].birthName to $congoleseSlaveNames.random()>>
+	<<set $args[1].slaveName to $congoleseSlaveNames.random()>>
 <<case "Kenyan">>
-	<<set $args[1].birthName to $kenyanSlaveNames.random()>>
+	<<set $args[1].slaveName to $kenyanSlaveNames.random()>>
 <<case "Tanzanian">>
-	<<set $args[1].birthName to $tanzanianSlaveNames.random()>>
+	<<set $args[1].slaveName to $tanzanianSlaveNames.random()>>
 <<case "Zimbabwean">>
 	<<if $args[1].race == "white">>
-		<<set $args[1].birthName to $britishSlaveNames.random()>>
+		<<set $args[1].slaveName to $britishSlaveNames.random()>>
 	<<else>>
-		<<set $args[1].birthName to $zimbabweanSlaveNames.random()>>
+		<<set $args[1].slaveName to $zimbabweanSlaveNames.random()>>
 	<</if>>
 <<case "Ghanan">>
-	<<set $args[1].birthName to $ghananSlaveNames.random()>>
+	<<set $args[1].slaveName to $ghananSlaveNames.random()>>
 <<case "Ugandan">>
-	<<set $args[1].birthName to $ugandanSlaveNames.random()>>
+	<<set $args[1].slaveName to $ugandanSlaveNames.random()>>
 <<case "Ethiopian">>
-	<<set $args[1].birthName to $ethiopianSlaveNames.random()>>
+	<<set $args[1].slaveName to $ethiopianSlaveNames.random()>>
 <<case "Moroccan">>
-	<<set $args[1].birthName to $moroccanSlaveNames.random()>>
+	<<set $args[1].slaveName to $moroccanSlaveNames.random()>>
 <<case "Chinese">>
-	<<set $args[1].birthName to $chineseSlaveNames.random()>>
+	<<set $args[1].slaveName to $chineseSlaveNames.random()>>
 <<case "Korean">>
-	<<set $args[1].birthName to $koreanSlaveNames.random()>>
+	<<set $args[1].slaveName to $koreanSlaveNames.random()>>
 <<case "Thai">>
-	<<set $args[1].birthName to $thaiSlaveNames.random()>>
+	<<set $args[1].slaveName to $thaiSlaveNames.random()>>
 <<case "Vietnamese">>
-	<<set $args[1].birthName to $vietnameseSlaveNames.random()>>
+	<<set $args[1].slaveName to $vietnameseSlaveNames.random()>>
 <<case "Japanese">>
-	<<set $args[1].birthName to $japaneseSlaveNames.random()>>
+	<<set $args[1].slaveName to $japaneseSlaveNames.random()>>
 <<case "Indonesian">>
-	<<set $args[1].birthName to $indonesianSlaveNames.random()>>
+	<<set $args[1].slaveName to $indonesianSlaveNames.random()>>
 <<case "Filipina">>
-	<<set $args[1].birthName to $filipinaSlaveNames.random()>>
+	<<set $args[1].slaveName to $filipinaSlaveNames.random()>>
 <<case "Bangladeshi">>
-	<<set $args[1].birthName to $bangladeshiSlaveNames.random()>>
+	<<set $args[1].slaveName to $bangladeshiSlaveNames.random()>>
 <<case "Malaysian">>
-	<<set $args[1].birthName to $malaysianSlaveNames.random()>>
+	<<set $args[1].slaveName to $malaysianSlaveNames.random()>>
 <<case "Uzbek">>
-	<<set $args[1].birthName to $uzbekSlaveNames.random()>>
+	<<set $args[1].slaveName to $uzbekSlaveNames.random()>>
 <<case "Afghan">>
-	<<set $args[1].birthName to $afghanSlaveNames.random()>>
+	<<set $args[1].slaveName to $afghanSlaveNames.random()>>
 <<case "Nepalese">>
-	<<set $args[1].birthName to $nepaleseSlaveNames.random()>>
+	<<set $args[1].slaveName to $nepaleseSlaveNames.random()>>
 <<case "Burmese">>
-	<<set $args[1].birthName to $burmeseSlaveNames.random()>>
+	<<set $args[1].slaveName to $burmeseSlaveNames.random()>>
 <<case "Iraqi">>
-	<<set $args[1].birthName to $iraqiSlaveNames.random()>>
+	<<set $args[1].slaveName to $iraqiSlaveNames.random()>>
 <<case "Yemeni">>
-	<<set $args[1].birthName to $yemeniSlaveNames.random()>>
+	<<set $args[1].slaveName to $yemeniSlaveNames.random()>>
 <<case "Sudanese">>
-	<<set $args[1].birthName to $sudaneseSlaveNames.random()>>
+	<<set $args[1].slaveName to $sudaneseSlaveNames.random()>>
 <<case "Algerian">>
-	<<set $args[1].birthName to $algerianSlaveNames.random()>>
+	<<set $args[1].slaveName to $algerianSlaveNames.random()>>
 <<case "Tunisian">>
-	<<set $args[1].birthName to $tunisianSlaveNames.random()>>
+	<<set $args[1].slaveName to $tunisianSlaveNames.random()>>
 <<case "Libyan">>
-	<<set $args[1].birthName to $libyanSlaveNames.random()>>
+	<<set $args[1].slaveName to $libyanSlaveNames.random()>>
 <<case "Omani">>
-	<<set $args[1].birthName to $omaniSlaveNames.random()>>
+	<<set $args[1].slaveName to $omaniSlaveNames.random()>>
 <<case "Malian">>
-	<<set $args[1].birthName to $malianSlaveNames.random()>>
+	<<set $args[1].slaveName to $malianSlaveNames.random()>>
 <<case "Jordanian">>
-	<<set $args[1].birthName to $jordanianSlaveNames.random()>>
+	<<set $args[1].slaveName to $jordanianSlaveNames.random()>>
 <<case "Lebanese">>
-	<<set $args[1].birthName to $lebaneseSlaveNames.random()>>
+	<<set $args[1].slaveName to $lebaneseSlaveNames.random()>>
 <<case "Emirati">>
-	<<set $args[1].birthName to $emiratiSlaveNames.random()>>
+	<<set $args[1].slaveName to $emiratiSlaveNames.random()>>
 <<case "Kazakh">>
-	<<set $args[1].birthName to $kazakhSlaveNames.random()>>
+	<<set $args[1].slaveName to $kazakhSlaveNames.random()>>
 <<case "Pakistani">>
-	<<set $args[1].birthName to $pakistaniSlaveNames.random()>>
+	<<set $args[1].slaveName to $pakistaniSlaveNames.random()>>
 <<case "Indian">>
-	<<set $args[1].birthName to $indianSlaveNames.random()>>
+	<<set $args[1].slaveName to $indianSlaveNames.random()>>
 <<case "Australian">>
-	<<set $args[1].birthName to $australianSlaveNames.random()>>
+	<<set $args[1].slaveName to $australianSlaveNames.random()>>
 <<case "a New Zealander">>
-	<<set $args[1].birthName to $newZealanderSlaveNames.random()>>
+	<<set $args[1].slaveName to $newZealanderSlaveNames.random()>>
 <<default>>
-	<<set $args[1].birthName to $whiteAmericanSlaveNames.random()>>
+	<<set $args[1].slaveName to $whiteAmericanSlaveNames.random()>>
 <</switch>>
 
 <</widget>>
diff --git a/src/uncategorized/PETS.tw b/src/uncategorized/PETS.tw
index dce78f3b9d97b18b1e72e92a8f7a1ab0b4cc60f3..70c859de1c2a988a8d649415cc44e16c4810c3ff 100644
--- a/src/uncategorized/PETS.tw
+++ b/src/uncategorized/PETS.tw
@@ -8,28 +8,28 @@
 	<<set $activeSlave to $Stewardess>>
 	<<for $i to 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].assignment is "work as a servant">>
-		<<set $subSlave to $slaves[$i].ID>>
+			<<set $subSlave to $slaves[$i].ID>><<break>>
 		<</if>>
 	<</for>>
   <<case "aggressive schoolteacher">>
 	<<set $activeSlave to $Schoolteacher>>
 	<<for $i to 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].assignment is "learn in the schoolroom">>
-		<<set $subSlave to $slaves[$i].ID>>
+			<<set $subSlave to $slaves[$i].ID>><<break>>
 		<</if>>
 	<</for>>
   <<case "abusive wardeness">>
 	<<set $activeSlave to $Wardeness>>
 	<<for $i to 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].assignment is "be confined in the cellblock">>
-		<<set $subSlave to $slaves[$i].ID>>
+			<<set $subSlave to $slaves[$i].ID>><<break>>
 		<</if>>
 	<</for>>
   <<case "comforting attendant">>
 	<<set $activeSlave to $Attendant>>
 	<<for $i to 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].assignment is "rest in the spa">>
-		<<set $subSlave to $slaves[$i].ID>>
+			<<set $subSlave to $slaves[$i].ID>><<break>>
 		<</if>>
 	<</for>>
 <</switch>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index e52d2d967e9e6097fb9d5b3e2949118bdd43291b..c647f3474df611ed92d16f273d081475cfdcff07 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -20,6 +20,7 @@
 <<if $seeImages == 1>><<SlaveArt $activeSlave 2 0>><</if>>
 
 <<SlaveTitle $activeSlave>>
+<<Enunciate $activeSlave>>
 
 <<switch $RESSevent>>
 
@@ -1536,6 +1537,109 @@ In one sense, it's amusing that she feels that way, because<<if ($arcologies[0].
 <<if $activeSlave.lactation > 0>>She complained of feeling like a cow without detectable irony, despite the fact that her left nipple has a droplet of cream clinging to it right now<<elseif $activeSlave.preg > 15>>She complained of feeling like a cow without detectable irony, despite the fact that she is pregnant and likely to begin lactating soon<</if>>.
 She waits anxiously for your response, wondering if she'll be punished for expressing reservations about your expansion of her breasts and, comically, still cradling her heavy udders as she does so.
 
+<<case "gaped asshole">>
+
+You encounter <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink to passage(), $eventDescription to 1]]">></span> at the beginning of her day, as she finishes her morning ablutions and heads off to <<if $activeSlave.clothes != "no clothing">>get dressed<<else>>her assignment, since she's not allowed clothes and therefore doesn't need to dress<</if>>. She seems happy today, and her $activeSlave.skin body glows with warmth and cleanliness from the hot shower. When she <<if canSee($activeSlave)>>sees<<else>>notices<</if>> you, she greets you properly, yet positively, smiling at you and <<if $activeSlave.boobs > 3000>>presenting her enormous breasts<<elseif $activeSlave.lips > 70>>pursing her huge lips<<elseif $activeSlave.boobs > 800>>bouncing her big breasts<<elseif $activeSlave.lips > 20>>pursing her pretty lips<<else>>sticking out her chest<</if>> in an automatic gesture of easy sexual availability. Suddenly, she remembers something, and looks thoughtful. Since she's so trusting, she asks you the question that just occurred to her.
+<br><br>
+"<<Master>>," she <<say>>s, "may I have my a<<ss>>hole tightened?"
+<br><br>
+There's no trace of awareness on her face of the open lewdness of the question; she's <<if $activeSlave.career == "a bioreactor">>spent time in an industrial Dairy with a phallus the size of a horse's pounding her ass day and night<<elseif ($activeSlave.career == "a slave") || ($week-$activeSlave.weekAcquired > 50)>>been a sex slave so long that she's completely internalized the idea of her ass being a sex organ<<elseif $activeSlave.analCount > 2000>>had her ass fucked so many times that she thinks of it as an inherently sexy thing<<else>>so devoted to you that she's made a conscious effort to think of her ass as sexy<</if>>. She continues in her <<if $activeSlave.voice == 1>>deep<<elseif $activeSlave.voice == 2>>soft<<else>>bubblegum bimbo's<</if>> voice, <<say>>ing, "It'<<s>> not //bad.// It'<<s>> ea<<s>>y to take anything up it. And when I walk I can feel my anal <<s>>lit sort of working around back there, which is kind of fun. But I wa<<s>> just thinking, a<<s>> I was washing my a<<ss>>pu<<ss>>y. It'd be ni<<c>>e
+<<switch $activeSlave.fetish>>
+<<case "submissive">>
+	to feel ju<<s>>t a little afraid when I'm on my fa<<c>>e and about to get fucked.
+<<case "cumslut">>
+	to be able to keep loads of cum in my a<<ss>> for later, in<<s>>tead of having them ju<<s>>t drip right out.
+<<case "buttslut">>
+	to be able to feel a little more <<s>>en<<s>>ation back there again. Butt<<s>>ex is <<s>>till fun and ab<<s>>olutely my favorite thing, but I remember it being even better.
+<<case "masochist">>
+	if I could feel anal pain again. That burning feeling u<<s>>ed to be one of my favorite<<s>>.
+<<default>>
+	to be able to be a better anal lover. I do my be<<s>>t, but I can't <<s>>queeze very well any more.
+<</switch>>
+May I?" She spins, <<if $activeSlave.preg > 20>>spreading her legs for her pregnant belly while <</if>>bending at the waist<<if $activeSlave.butt > 6>> and prising her monstrous buttocks apart<<elseif $activeSlave.butt > 3>> spreading her healthy buttocks<</if>> to reveal her gaping anus. It could indeed benefit from surgical repair.
+
+<<case "passing declaration">>
+
+As you manage your empire from your office, a constant traffic of slaves passes by its door. The glass walls allow a good view of them, and since you naturally own what you find appealing, the passing girls often draw your eye. For example, this morning you notice <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink to passage(), $eventDescription to 1]]">></span> almost bounce into view. She's physically fit, at a healthy weight<<if $activeSlave.preg > 20>>, heavily pregnant<</if>>, <<if $activeSlave.physicalAge > 35>>and is getting such excellent modern medical care that despite her age, she has the energy of a teenager<<elseif $activeSlave.physicalAge > 19>>is full of youth and vigor, and is in truly perfect health due to the miracles of modern medicine<<elseif  $activeSlave.physicalAge > 12>>and is a teenager, not to mention the perfect health she owes to the miracles of modern medicine<<else>>and is a little girl, not to mention the perfect health she owes to the miracles of modern medicine<</if>>. <<if $activeSlave.energy > 95>>Apart from her absurd sex drive<<elseif $activeSlave.energy > 40>>In addition to her very healthy libido<<else>>Despite her mediocre libido<</if>>, she's overflowing with energy. She half-runs, half-skips down the hallway, slowing in the doorway as she feels your gaze. Without stopping, she turns to meet your eyes, winks trustingly, and bursts out, "Hi <<Master>>! Love you!" Then she continues on her merry way.
+<br><br>
+Someone's a happy $desc today.
+
+<<case "ara ara">>
+
+Passing by the kitchen in the morning, you take a moment to listen to the low hum of your slaves chatting as they <<if $feeder != 0>>wait their turn at the phallic feeders<<else>>drink their breakfasts<</if>>. <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink to passage(), $eventDescription to 1]]">></span> is nearest the door, and you overhear her <<if $activeSlave.voice == 1>>low<<elseif $activeSlave.voice == 2>>pretty<<else>>high<</if>> voice clearly as she expresses confusion to another slave. "I don't under<<s>>tand it," she <<say>>s. Why are so many men intere<<s>>ted in an old <<s>>lave like me? I never got thi<<s>> much attention when I wa<<s>> free! Now <<if $activeSlave.assignment == "whore">>guy<<s>> line up to pay<<else>>every guy I approach want<<s>><</if>> to fuck me!"
+<br><br>
+<<if $arcologies[0].FSMaturityPreferentialist != "unset">>
+	"It's different here," the other slave explains. "Almost everyone here has a thing for older women. MILFs get all the attention."
+<<elseif ($arcologies[0].FSGenderRadicalist != "unset") && ($activeSlave.dick > 0)>>
+	<<if $activeSlave.vagina > -1>>
+		"Well, you're a futa," the other slave explains. "A chick with a dick. Everyone here is going to want to fuck you, since you've got both."
+	<<elseif $activeSlave.balls > 0>>
+		"Well, I bet you cum when they fuck you," the other slave explains. "They love it when you do that here."
+	<<else>>
+		"You've got a soft girldick," the other slave explains. "That's like an advertisement that you love it up the butt, here."
+	<</if>>
+<<elseif ($arcologies[0].FSAssetExpansionist != "unset") && ($activeSlave.boobs > 4000)>>
+	"It's your boobs," the other slave explains. "There's no such thing as too big, here. Everyone who sees your boobs here is going to want to fuck you."
+<<elseif ($arcologies[0].FSRepopulationFocus != "unset") && bigBelly($activeSlave)>>
+	"It's your belly," the other slave explains. "They love how big and round it is. If you look pregnant, they'll be all over you. Even if it's fake, they won't care."
+<<elseif ($arcologies[0].FSTransformationFetishist != "unset") && ($activeSlave.boobsImplant > 1000)>>
+	"It's your fake tits," the other slave explains. "They love how fake they look, here. If you look like a bimbo, they don't care if you're a little mature."
+<<elseif ($arcologies[0].FSSlimnessEnthusiast != "unset") && ($activeSlave.boobs < 800) && ($activeSlave.butt < 3)>>
+	"You're so slim," the other slave explains. "Everyone here loves slender girls. They don't care that you're a little mature; they think you're hot."
+<<elseif ($arcologies[0].FSBodyPurist != "unset") && ($activeSlave.boobsImplant == 0) && ($activeSlave.health > 50)>>
+	"It's how healthy you are, and your natural boobs," the other slave explains. "You look good and natural, and everyone likes that here, especially if you're mature."
+<<elseif $activeSlave.face > 2>>
+	"It might have something to do with how incredibly beautiful you are," the other slave explains sarcastically. "Come on, you could be a model. Of course they want you."
+<<elseif $activeSlave.boobs > 4000>>
+	"It might have something to do with the fact that your tits are bigger than your head," the other slave explains sarcastically. "You look like a teenager's wet dream."
+<<elseif $activeSlave.face > 0>>
+	"You're very pretty," the other slave explains reassuringly. "Come on, you are. It's not surprising that guys want you."
+<<else>>
+	"Is it really that surprising?" the other slave asks rhetorically. "Guys like sex. You're sex. Why shouldn't they like you? I bet fucking you feels great."
+<</if>>
+There's a pause, and then the other slave continues in a more serious tone, asking, "You're not, like, unhappy with that, are you? It's really good for a slave to be in demand, you know."
+<br><br>
+"Oh no, I didn't mean it like that," replies $activeSlave.slaveName hurriedly.
+<<if $activeSlave.energy > 80>>
+	"I'm <<s>>o horny all the time, it'<<s>> good. I'd probably go crazy if I didn't get that much attention. Whenever anyone'<<s>> done with me I can't wait for the next.
+<<elseif $activeSlave.fetish == "humiliation">>
+	"It's embarra<<ss>>ing, but I, um, really like being <<s>>o popular in public, um, like that. Where everyone can <<s>>ee.
+<<elseif $activeSlave.devotion > 50>>
+	"I really want to do well, and it feel<<s>> good that I'm able to help.
+<<elseif $activeSlave.devotion > 20>>
+	"I, um, know I have to. And it'<<s>> not bad, I mean, it'<<s>> okay.
+<<else>>
+	"I know it mean<<s>> I'm worth something. It'<<s>> rea<<ss>>uring, and I remind my<<s>>elf of it whenever I get <<s>>cared about being a <<s>>lave, you know.
+<</if>>
+I didn't mean to <<s>>ound con<<c>>eited, either. I gue<<ss>> I'm <<s>>till getting u<<s>>ed to life here, that'<<s>> all. <<S>>ometime<<s>> I think like I'm not, um, here, and I'm <<s>>urpri<<s>>ed so many people want me. It's kind of ni<<c>>e, actually," she <<say>>s with some self-confidence.
+<<if $activeSlave.fetish == "humiliation">>
+<<if $activeSlave.fetishKnown == 0>>
+	It sounds like she has a @@color:lightsalmon;humiliation fetish!@@
+	<<set $activeSlave.fetishKnown == 1>>
+<</if>>
+<</if>>
+
+<<case "im scared">>
+
+During her weekly inspection, <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink to passage(), $eventDescription to 1]]">></span> has trouble following the routine orders that position her so you can examine her body. The cause is not difficult to determine: she's so cripplingly terrified that she's having difficulty functioning. She seems to be trying to obey you, but she's so scared that her mind is having trouble translating your simple verbal commands into physical obedience. You ask her what she's so frightened of. The question stuns her, and she <<if canSee($activeSlave)>>stares at<<else>>faces<</if>> you in mute horror, looking even more terrified than she has up to this point and completely devoid of any idea how to respond. You order her to respond, and this starts her out of her fugue. She begins to cry, makes two false starts, sobs, and then begins forcing out words.
+<br><br>
+"E-e-everything," she cries. "I'm <<s>>-<<s>>o <<s>>-<<s>>orry b-but I c-can't help," she chokes on a sob and hiccups, "help it. This, this pla<<c>>e, being a <<s>>ex <<s>>lave,
+<<switch $activeSlave.standardPunishment>>
+<<case "confinement">>b-being <<s>>h-shut up in the d-dark
+<<case "whipping">>b-being wh-wh-whip-ped
+<<case "chastity">>h-having my p-part<<s>> locked up in ch-cha<<s>>tity
+<<default>>n-never knowing what th-the p-punishment will be
+<</switch>>
+wh-when I'm bad, e-everything, <<Master>>. Oh, oh, I'm <<s>>orry, p-plea<<s>>e, I'm <<s>>orry I, I'm like thi<<s>>, I'm crying, p-plea<<s>>e <<Master>>, plea<<s>>e don't..." She trails off, giving you a look of supplication.
+
+<<case "frightening dick">>
+
+In a fortuitous confluence of circumstances, <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink to passage(), $eventDescription to 1]]">></span> happens to be polishing your office one evening. Keeping every surface in the penthouse at a state of perfect shine is one of your servants' endless tasks, and your office is her area of responsibility today. At the key moment, she's working on an area at waist height, directly next to the door that leads to your suite; and she's crouching to polish this area most comfortably. She is working diligently, and is paying close attention to what she's doing. Meanwhile, and for completely unrelated reasons, you have just finished having fun inside said suite. You are naked, and your penis remains fully erect despite your having climaxed only moments before; you are in excellent physical and sexual condition and this happens frequently. You have decided to address a likewise unrelated matter in your office, and walk into it from your suite, naked and erect.
+<br><br>
+This is how $activeSlave.slaveName comes face to face with your cock, unexpectedly, at a distance of about ten centimeters.
+<br><br>
+She shrieks, backpedaling, and then falls backward, her <<if $activeSlave.butt > 6>>monstrous bottom<<elseif $activeSlave.butt > 3>>healthy rear end<<else>>cute butt<</if>> hitting the floor with an audible whack. The light cloth she was using to polish with went flying, and flutters to the ground accusingly. After scrabbling back a short distance, looking up at you hesitantly, and visibly recollecting herself, she swallows twice and then says, "I'm <<s>>orry, <<Master>>," in a tone of voice with a great deal of effort applied to keep it even. A frantic, embarrassed search for her cloth ensues. Finding it at last, she returns to her original, low position, and crouch-walks back to the place she was polishing, doing her absolute best to look diligent and industrious and not at all aware that your cock is pointing at her like a gun barrel.
+
 <<default>>
 	ERROR: bad event
 <</switch>>
@@ -7828,6 +7932,244 @@ By the time you've finished with her sensitive ass, it shines red, and she is cr
 	<</replace>>
 <</click>>
 
+<<case "gaped asshole">>
+
+<<click "Give her the surgery">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You schedule her for the surgery. Like all invasive procedures, it @@color:red;affects her health,@@ but @@color:lime;she's effectively an anal virgin again.@@ She @@color:mediumaquamarine;trusts you a bit more@@ for granting her request, and is eager for buttsex that's more interesting than having a hotdog thrown down her hallway.
+		<<set $activeSlave.trust += 3, $activeSlave.health -= 10, $activeSlave.anus = 0, $cash -= $surgeryCost>>
+		<<if $activeSlave.analSkill > 10>><<set $activeSlave.analSkill -= 10>><</if>>
+		<br><br>
+		<span id="result2">
+			<<click "Break her in again">>
+				<<replace "#result2">>
+					Her ass is yours all over again. As soon as her newly tight rosebud has recovered enough, you visit her in the surgery, without even waiting for her to leave it. You flip her over on the recovery bed and force <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>> up her butt while she wriggles with eager discomfort, squealing in pretended horror. Her renewed anal virginity was very brief; her ass is once again @@color:lime;broken in for penetration.@@ For her part, she @@color:hotpink;thoroughly enjoyed losing her anal cherry,@@ again.
+					<<set $activeSlave.devotion += 5, $activeSlave.analCount++, $analTotal++, $activeSlave.anus = 1>>
+				<</replace>>
+			<</click>> //This option will take anal virginity//
+		</span>
+	<</replace>>
+<</click>>
+<br><<click "Fill her gape">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You announce that you can fill her just fine, and you'll make her feel it just as though she were an anal virgin again. She looks simultaneously intrigued and apprehensive, but starts to get to her knees like a good anal slut. You stop her before she can face the ground and offer you her ass. You're going to need some lubricant for this, but the $desc's saliva should be plenty. As you <<if $PC.dick == 1>>aim your dick<<else>>swiftly pull on a strap-on and aim it<</if>> at her face, she realizes that her spit is going to be the only relief her fucked-out butt is going to have for whatever you're planning. She blows you with desperate eagerness, doing her absolute best to coat your<<if $PC.dick != 1>> weapon's<</if>> shaft with as much saliva as she can. You pull it free of her mouth with a wet pop, and she immediately faces the floor, cocking her hips and spreading her huge asspussy for you.
+		<br><br>
+		After watching the way it contracts slightly as she breathes hard for a while, letting her feel the apprehension, you shove <<if $PC.dick == 1>>yourself<<else>>the phallus<</if>> inside her. She takes it without any reaction at all, and her gaped hole cups it only loosely. Grabbing her by the shoulders, you haul her torso up so it's against your <<if $PC.boobs == 1>>breasts, capped by their rock-hard nipples<<else>>muscular chest<</if>>, and push three of your fingers into her mouth. She gags, surprised, but you shove them in farther, collecting as much spit as you can reach. Then you let her fall back down again. She knows what you're going to do, and moans as you slide your fingers in alongside your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>, taking huge shuddering gasps as she feels her sphincter accommodate the abuse. Slowly, you slide your thumb in as well, pushing it around <<if $PC.dick == 1>>your stiff prick<<else>>the unyielding phallus<</if>> until you're holding it as if masturbating. And then you masturbate. Inside her ass. She begins to scream, but manages to prevent herself from resisting. She does her desperate best to take your crushing abuse of her worn-out hole, and collapses when you finally orgasm and let her go. She does her best to offer some sort of @@color:hotpink;submissive thanks,@@ but is barely coherent, and crawls off to shower again, her lewd sphincter pulsing as she goes.
+		<<set $activeSlave.devotion += 5, $activeSlave.analCount++, $analTotal++>>
+		<<EventFetish $activeSlave "buttslut">>
+		<<EventFetish $activeSlave "masochist">>
+	<</replace>>
+<</click>>
+<<if $HeadGirl != 0>>
+<br><<click "Double up on her ass with your Head Girl">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You page $HeadGirl.slaveName for some assistance filling up a loose hole, and she comes quickly, <<if canAchieveErection($HeadGirl)>>precum already visible at the tip of her erection<<else>>bringing a strap-on<</if>>. When she arrives, it's to the sight of $activeSlave.slaveName sitting on your lap with your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> up her ridiculous anal gape, waiting for a second phallus while your hands tease her $activeSlave.nipples nipples. Seeing that backup has arrived, you lean back and shift your grip to the back of the receptacle's lower thighs, pulling her up and shifting her hips to offer your Head Girl another berth in $activeSlave.slaveName's ass. This pulls her loose sphincter up, producing a little gape above the top of your invading shaft, and $HeadGirl.slaveName loses no time in fucking it. She gives $activeSlave.slaveName a kiss, but soon breaks the lip lock, since she's more interested in making eyes at you over your mutual anal conquest's shuddering shoulder. As
+		<<if $PC.dick == 1>><<if canAchieveErection($HeadGirl)>>your dicks slide against each other<<else>>your dick slides against her strap-on<</if>><<else>><<if canAchieveErection($HeadGirl)>>your strap-on slides against her dick<<else>>your strap-ons slide against each other<</if>><</if>>, your trusty Head Girl whispers that @@color:hotpink;she loves you.@@ $activeSlave.slaveName makes an inarticulate noise of anal distress that probably means @@color:hotpink;approximately the same thing.@@
+		<<set $activeSlave.devotion += 4, $activeSlave.analCount++, $analTotal++>>
+		<<for $i to 0; $i < $slaves.length; $i++>><<if $slaves[$i].ID == $HeadGirl.ID>><<set $slaves[$i].devotion += 4>><</if>><</for>>
+		<<EventFetish $activeSlave "buttslut">>
+		<<EventFetish $activeSlave "submissive">>
+	<</replace>>
+<</click>>
+<</if>>
+
+<<case "passing declaration">>
+
+<<click "Follow her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		Her sheer joie de vivre is irresistible, and it certainly draws you out of your office. You're not slow, and of course you know where she's going, so you catch up quickly. She gives you the careful measuring glance of a devoted sex slave who's checking whether her owner wants to fuck her right now, and correctly decides that that isn't your intent, at least right this minute. Instead, you continue the direction she was going, and she follows. "<<Master>>," she <<say>>s hesitantly, "I hope that wa<<s>> an okay thing for me to do." You assure her it was. "Thank<<s>>, <<Master>>," she beams, grinning like an idiot. Smiling at her infectious enthusiasm for life, you ask her why she's so happy this morning. She looks momentarily perplexed<<if $activeSlave.intelligence > 1>>, not a common look for a slave as smart as her<</if>>. "I don't know! I just woke up thi<<s>> morning feeling really, really good. <<if $activeSlave.intelligence > 1>>I'm sure the fact that I'm benefiting from incredibly advanced medi<<c>>ine ha<<s>> <<s>>omething to do with it; thank you very much for that, <<Master>>. Other than that,<</if>>
+		I ju<<s>>t feel happy." This has to be some sort of milestone for her, and for you, and maybe for slavery in general: if she can be this pleased with life, something must be going right. You walk her to where she's going
+		<<switch $activeSlave.assignment>>
+		<<case "whore">>(one of the arcology's nicer streets, where she'll spend the day selling her body),
+		<<case "serve the public">>(one of the arcology's nicer streets, where she'll spend the day flirting with citizens and having sex with anyone that's willing),
+		<<case "work a glory hole">>(a wall mounting that will render her a helpless target for dicks all day),
+		<<case "get milked">>(her favorite milker in the penthouse),
+		<<case "take classes">>(a quiet area with a touchscreen where she can review material from the slave etiquette class she's working on),
+		<<case "please you">>(the wardrobe, where she'll get dressed before attending to you for the rest of the day),
+		<<case "be a subordinate slave">>(the living area of the slave she's been assigned to serve),
+		<<case "be a servant">>(the closet that contains the cleaning items she'll use to dust and polish the penthouse today),
+		<<case "stay confined">>(her cell),
+		<<case "guard you">>(the armory where her weapons are kept),
+		<<case "be your Head Girl">>(the assignment location of a slave who needs some hands-on guidance from your Head Girl),
+		<<case "recruit girls">>(the camera station she uses to convince people from the old world that becoming your slave is a good idea),
+		<<default>>(a waiting area for further assignment),
+		<</switch>>
+		and when you get there, she gives you a peck on the cheek. <<if $activeSlave.height < 170>>The short $desc has to go up on tiptoe to reach.<</if>>
+		"@@color:hotpink;I really do love you,@@ <<Master>>," she <<say>>s, <<if canSee($activeSlave)>>$activeSlave.eyeColor eyes shining<<else>>face filled with joy<</if>>.
+		<<set $activeSlave.devotion += 5>>
+	<</replace>>
+<</click>>
+<br><<click "Play with her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You're not a slave, so you can't understand her inner workings through direct empathy. But in your experience, a quick orgasm never fails to make a good day better. You're not slow, and of course you know where she's going, so you catch up to her on quiet feet and <<if $activeSlave.butt > 6>>set her enormous ass jiggling with a smack<<elseif $activeSlave.butt > 3>>give her womanly bottom a squeeze<<else>>pinch her cute rear<</if>>. She squeals and whirls around, <<if $activeSlave.energy > 60>>eagerly flinging herself into your arms, ready for some action<<else>>trustingly throwing herself into your arms<</if>>. Feeling spontaneous, you decide to get everyone off quickly and cleanly, right here.
+		<<switch $eventSlave.fetish>>
+		<<case "submissive">>
+			You place a dominant hand around her throat, firmly but not harshly, almost sending the submissive to her knees. Your other hand
+		<<case "cumslut">>
+			You kiss her, sliding your tongue all the way into her mouth. She melts into you, rhapsodically entranced by the intense oral stimulation, and her tongue presses against yours with frankly sexual significance. Your hand
+		<<case "humiliation">>
+			Slaves are constantly passing the two of you, and you constantly turn her to show her body to each of them, spreading her to display her most intimate parts. Her cheeks flush with arousal and delicious shame. Your hand
+		<<case "buttslut">>
+			You slide a hand all the way under her, pulling the flesh of her buttock to one side and then nestling possessive fingers over her anus, teasing and stimulating, but not penetrating. Your other hand
+		<<case "boobs">>
+			She gasps as your hot mouth finds one of her $activeSlave.nipples nipples, and then moans openly as one of your hands mauls her other breast. Your other hand
+		<<case "pregnancy">>
+			One of your hands begins to caress her<<if $activeSlave.pregnancy > 0>> pregnant<</if>> belly, worshipping its curve. Your other hand
+		<<case "dom" "sadist">>
+			You press yourself aggressively against her, and she presses back; you grind harder still, letting her know that she can let herself be a little aggressive, too. Groaning with pleasure and satisfaction, she kisses you furiously. One of your hands
+		<<case "masochist">>
+			You caress one of her nipples, bringing it completely erect before gripping it firmly. You twist it, pull it, pinch it; she moans with masochistic pleasure. Your other hand
+		<</switch>>
+		<<if $activeSlave.vagina > -1>>finds her pussy<<else>>reaches around behind her to tease her ass and play with her sensitive perineum<</if>>, and you press your groin towards her. Getting the idea, she begins to <<if $PC.dick == 1>>jack you off<<else>>finger your clit<</if>> energetically, taking the pace from your lusty demeanor and her own feeling of energy and well-being. The two of you orgasm almost together. <<if $PC.dick == 1>>You angle your hips to shoot your seed onto the floor<<else>>You climax so violently that some of your femcum makes it onto the floor<</if>>. <<if canAchieveErection($activeSlave)>>She blows her own load right after<<elseif $activeSlave.balls > 0>>Her limp dick pours cum<<elseif $activeSlave.dick > 0>>Her bitchclit produces a little watery fluid<<elseif $activeSlave.vaginalLube > 1>>She squirts copiously<<else>>Unusually for her, she manages to squirt a little<</if>>, adding to the mess. You tell her another slave will clean up, and order her to go about her business. She turns to go, @@color:mediumaquamarine;smiling with sexual satisfaction.@@
+		<<set $activeSlave.trust += 5, $activeSlave.oralCount++, $oralTotal++>>
+	<</replace>>
+<</click>>
+<br><<click "Punish her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		That was not quite the prescribed way of greeting you, there was no need to greet you as she passed, and most importantly, she's simply too cheery. Resolving to crush her happiness, you call her back to the office in a thunderous voice you know will reach her. She knows she's made a mistake, but comes promptly, lower lip quivering. Her feelings are plain to see on her face: surprise, @@color:mediumorchid;betrayal,@@ @@color:gold;fear.@@ She thought she could be friendly, and now she knows she was wrong. What's more, she thought she could be happy, and now she's realizing that that was also wrong. As you
+		<<switch $activeSlave.standardPunishment>>
+		<<case "confinement">>close her into a confinement cell,
+		<<case "whipping">>tie her up for a brief whipping,
+		<<case "chastity">>lock her into harsh chastity,
+		<<default>>gag her for speaking out of turn,
+		<</switch>>
+		a wail of despair tears its way out of her throat, far out of proportion to the standard punishment you're applying. It's perhaps the saddest sound you've ever heard a slave make. Slaves cry all the time, but usually they already understand that happiness is out of their reach. This one just woke up thinking that she could be happy and was happy, and now she's realizing it isn't allowed.
+		<<set $activeSlave.devotion -= 10, $activeSlave.trust -= 10>>
+	<</replace>>
+<</click>>
+
+<<case "ara ara">>
+
+<<click "Praise her outlook">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You speak from where you are, and without preamble, startling both slaves badly. Doing their best to recover, they listen as you tell $activeSlave.slaveName that she has a good, praiseworthy outlook on life as a sex slave.
+		<<if $activeSlave.energy > 80>>
+			Her extreme appetite for sex will serve her well. It's important to love what you do, and if she wakes up every morning wanting to get fucked, she'll enjoy her life as a <<if $activeSlave.assignment == "whore">>slave prostitute<<else>>public slut<</if>>.
+		<<elseif $activeSlave.fetish == "humiliation">>
+			She should feel lucky to have a fetish for public use. It's important to love what you do, and if being openly passed around gets her off, she'll enjoy her life as a <<if $activeSlave.assignment == "whore">>slave prostitute<<else>>public slut<</if>>.
+		<<elseif $activeSlave.devotion > 50>>
+			It's great that she's internalized her role, and wants to do well. As long as she wants to perform well and applies herself, you're confident that she'll continue to improve and become a better and more valuable slave.
+		<<elseif $activeSlave.devotion > 20>>
+			Her obedience is commendable. You understand that she struggles with her life as an involuntary sex object at times. She'll learn to do better, and as she improves, she'll be all right as long as she obeys you and does her best.
+		<<else>>
+			To describe her situation bluntly, the best possible approach for her is to obey you and do her best. There's not really any possible outcome in which slaves can lose out by doing their best to be useful and valuable. It's in her interest to do her best.
+		<</if>>
+		"Yes, <<Master>>," they chorus automatically. You turn and go. $activeSlave.slaveName is taken a bit aback by your apparent omnipresence in the penthouse, but reminds herself that your guidance seemed straightforward and genuine. She's @@color:mediumaquamarine;confirmed in her understanding@@ of what it means to be a good $desc.
+		<<set $activeSlave.trust += 5>>
+	<</replace>>
+<</click>>
+<br><<click "Let her know you think she's attractive, too">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		The slaves continue their gossip until $activeSlave.slaveName feels a pair of <<if $PC.title == 1>>strong<<else>>firm, feminine<</if>> hands grip the sides of her <<if $activeSlave.preg > 20>>gravid<<elseif $activeSlave.waist > 1>>cartoonishly narrow<<elseif $activeSlave.weight > 30>>pudgy<<elseif $activeSlave.muscle > 30>>ripped<<elseif $activeSlave.waist > 0>>wasp<<elseif $activeSlave.weight > 10>>plush<<elseif $activeSlave.muscle > 5>>toned<<elseif $activeSlave.weight >= -10>>soft<<else>>thin<</if>> waist. She starts but doesn't try to turn, and shivers as you run your hands up <<if $activeSlave.muscle > 30>>the muscles that jacket her ribs<<elseif $activeSlave.weight > 30>>the soft flesh that pads her ribs<<else>>her ribcage<</if>> and forward <<if $activeSlave.boobs > 3000>>into the soft, weighty place formed by the overhang of her massive breasts<<elseif $activeSlave.boobs > 300>>to cup her breasts<<else>>to clasp her around the sternum<</if>> and pull her back into your arms. The other slave watches silently, awaiting some cue as to whether she's to join in or return to breakfast; you give her a flick of your chin, and she turns away, leaving you with $activeSlave.slaveName, embracing among the eating slaves.
+		<br><br>
+		You whisper into her ear that you think she's attractive, <<if $PC.dick == 1>>and point out that she can feel the proof between her buttocks. You're hard, and your stiff prick is poking her in the rear. She gasps and shifts a little, and you nestle your dick even closer into the warm place between her legs and ass.<<else>>and tell her that you can prove it. You grab one of her hands and pull it around behind her, between you, making her feel your pussy. She gasps at how wet it is.<</if>> "An old <<s>>lave like me, <<Master>>?" she echoes in a small voice. An old slave like her, you confirm, and tell her that right now,
+		<<if $PC.dick == 1>>
+			<<if $activeSlave.vagina > 0>>
+				you've decided to fuck her pussy. She starts at the sudden vulgarity, even with your cock resting against the soft skin between the bottom of her vulva and her anus, and shudders with sudden pleasure as you use a hand to guide yourself inside her welcoming channel.
+			<<else>>
+				her ass is yours. She starts at the sudden vulgarity, even though hearing that the cock that's pressing against her butt will be going inside it soon can't be that surprising. She cocks her hips obediently, letting you force your dick up her asshole.
+			<</if>>
+			You take her standing,
+		<<else>>
+			some oral sex from a slave like her sounds just right. You push her to her knees and hold her mouth to your cunt, taking your pleasure from her
+			<<set $activeSlave.oralCount++, $oralTotal++>>
+		<</if>>
+		right there among your breakfasting slaves, who try to ignore you or watch with appreciation, according to their own natures. When you're finished, you <<if $PC.dick == 1>>spin her around and kiss her,<<else>>pull her up to her feet and kiss her, tasting yourself on her lips and<</if>> making sure she knows @@color:hotpink;you appreciate her mature body@@ just as much as <<if $activeSlave.assignment == "whore">>her customers do<<else>>your citizens do<</if>>.
+		<<set $activeSlave.devotion += 5>>
+		<<if $PC.dick == 1>><<if $activeSlave.vagina <= 0>><<AnalVCheck>><<else>><<set $activeSlave.vaginalCount++, $vaginalTotal++>><</if>><</if>>
+	<</replace>>
+<</click>><<if ($PC.dick == 1) && (($activeSlave.anus == 0) && ($activeSlave.vagina <= 0))>> //This option will take anal virginity//<</if>>
+
+<<case "im scared">>
+
+<<click "Punish her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		She obviously knows that breaking down like this would displease you, but you patiently explain that it's against the rules anyway. She cries harder, nodding through her tears. She knows that interrupting you to beg would be profoundly stupid, so she clasps her hands in wordless submission. You tell her that she's to keep herself under control; if she fails, she will be punished. Since she failed, she will now suffer her standard punishment, and be
+		<<switch $activeSlave.standardPunishment>>
+		<<case "confinement">>
+			shut up in a box. @@color:gold;She breaks down,@@ falling to her knees, begging abjectly for mercy. "It'<<s>> dark in there," she screams as you open the box for her. She knows that if she doesn't climb in, it'll be longer before she's let out, so she does, scrabbling inside and sobbing desperately as you close the lid.
+		<<case "whipping">>
+			whipped. @@color:gold;She breaks down,@@ falling to her knees, begging abjectly for mercy. "It'll h-hu-hurt," she blubbers weakly as you attach her hands to shackles high on the office wall. The first stroke across her buttocks draws a long shriek out of her.
+		<<case "chastity">>
+			locked up in chastity. @@color:gold;She breaks down,@@ falling to her knees, begging abjectly for mercy. "I c-can't," she moans. "I can't take it. I can't <<s>>tand it." As you lock the chastity onto her, she sobs inconsolably, knowing that any arousal will be torturous until she's released.
+		<<default>>
+			gagged, since that's the appropriate castigation for failure to control her mouth and deportment. She tries to behave, but @@color:gold;breaks down@@ as you slide a dildo gag into her throat, choking and struggling to breathe as she tries to cry past it.
+		<</switch>>
+		The thing she's most frightened of is that she won't be able to control her fear in the future, and will continue to suffer.
+		<<set $activeSlave.trust -= 5>>
+	<</replace>>
+<</click>>
+<<if $dairyRestraintsSetting == 2>>
+<br><<click "Threaten her with the industrial Dairy">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You grab her by the scruff of her neck and drag her down to $dairyName. She tries to control herself, but breaks down in tears when you haul her to a stop, forcing her to get a good <<if canSee($activeSlave)>>look at the rows of bodies being<<else>>listen at the sounds of rows of bodies being<</if>> mercilessly milked. You explain that if she continues to fail to control herself, your patience with her will eventually expire, and you'll be forced to immure her here. <<if canSee($activeSlave)>>Indicating<<else>>facing her to<</if>> a slave who's being
+		<<if ($activeSlave.balls > 0) && ($dairyStimulatorsSetting == 2)>>
+			cockmilked by the machines, you tell $activeSlave.slaveName to pay close attention. She <<if canSee($activeSlave)>>watches<<else>>listens<</if>> in horror as a dildo the size of her forearm slides in and out of the slave's rectum, pounding it harder and harder until the slave stiffens and the transparent tubing coming off its cockhead whitens with cum. As the slave relaxes slightly in the restrains, the powerful milkers continue their relentless tugging at her gigantic udders. You tell $activeSlave.slaveName that unless she wants her ass ruined by constant machine rape and her tits turned into immobilizing milk factories,
+		<<elseif ($activeSlave.vagina > -1) && ($dairyPregSetting == 2)>>
+			used for reproduction by the machines, you tell $activeSlave.slaveName to pay close attention. She <<if canSee($activeSlave)>>watches<<else>>listens<</if>> in horror as a dildo the size of her forearm fucks the slave's enormous cunt, keeping it as gaped as possible to ease birth and constantly ejaculating preparatory drugs against her cervix. The slave is gigantically pregnant. You tell $activeSlave.slaveName that this is the vaginal treatment she can expect when pregnant; when impregnation is required, the dildos ejaculate more than a liter of cum a minute. Unless she wants her womb converted into an industrial component,
+		<<elseif ($activeSlave.vagina > -1) && ($dairyPregSetting == 3)>>
+			used for mass reproduction by the machines, you tell $activeSlave.slaveName to pay close attention. She <<if canSee($activeSlave)>>watches<<else>>listens<</if>> in horror as a dildo the size of her forearm fucks the slave's cavernous cunt, keeping it as gaped as possible to ease birth and constantly ejaculating preparatory drugs against her tortured cervix. The slave is absolutely enormous, more a taut sphere of a belly than a person, so pregnant that the children within her are visibly forced to bulge the skin covering her straining womb by their sisters. You tell $activeSlave.slaveName that this is the treatment she can expect when pregnant here; when impregnation is required, the dildos ejaculate more than a liter of cum a minute. Unless she wants to be converted into an industrial breeder,
+		<<else>>
+			drained of her milk, you tell $activeSlave.slaveName to pay close attention. She <<if canSee($activeSlave)>>watches<<else>>listens<</if>> in horror as the slave's gigantic breasts are massaged and squeezed, while the milkers attached to her absurd nipples tug and pull with industrial power. She can't <<if canSee($activeSlave)>>look away; the orbs of jiggling flesh being manipulated are each as big as the slave's torso<<else>>shut out the sound of those enormous jiggling orbs of flesh being so roughly manipulated<</if>>. It's good for milk production to drain slaves completely on occasion, and the machine doesn't stop until every drop is wrung from both udders. You tell $activeSlave.slaveName that unless she wants to experience that twice a day,
+		<</if>>
+		she had better behave herself. She nods furiously, @@color:gold;terrified beyond the ability to speak.@@
+		<<set $activeSlave.trust -= 8>>
+	<</replace>>
+<</click>>
+<</if>>
+<<if $seeExtreme != 0>>
+<br><<click "Threaten to convert her into a Fuckdoll">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You order a Fuckdoll brought to your office. $activeSlave.slaveName <<if canSee($activeSlave)>>watches it totter in<<else>>listens to the clicks of its approching heels<</if>>, automatically following the tugs on its leash and the tonal commands passed by its suit. She already understands the implicit threat, and she shivers uncontrollably, @@color:gold;almost falling to her knees in fear.@@ Not content with that, you tell her that she's trying your patience with her behavior. If she doesn't control herself better in the future, you'll give up on her and convert her into a Fuckdoll. At the spoken threat $activeSlave.slaveName does collapse, but you order her to get back to her feet and <<if canSee($activeSlave)>>watch<<else>>pay attention<</if>>. She does, shakily, tears streaming down her face as you put the Fuckdoll on its all fours, as though it were about to take dick. Its <<if $activeSlave.vagina > -1>>holes are pointed straight at $activeSlave.slaveName's face, and she can't avoid <<if canSee($activeSlave)>>seeing how loose and used they look<<else>>hearing the slight sounds of a blown-out hole<</if>><<else>>rear hole is pointed straight at $activeSlave.slaveName's face, and she can't avoid <<if canSee($activeSlave)>>seeing how loose and used it looks<<else>>hearing the slight sounds of a blown-out anus<</if>><</if>>. Suddenly, you activate the Fuckdoll's suit's punishment systems. It does not and cannot scream, but <<if canSee($activeSlave)>>a slight stiffening of its posture communicates extreme anguish, and its sphincter spasms tightly closed with obviously involuntary force<<else>>the sound of a body reflexively spasming tells of its extreme anguish<</if>>. $activeSlave.slaveName is almost incapacitated by terror.
+		<<set $activeSlave.trust -= 8>>
+	<</replace>>
+<</click>>
+<</if>>
+<br><<click "Comfort her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You rise from behind your desk, and $activeSlave.slaveName collapses to the floor, sure that she's about to be severely punished. She's shocked to feel your arms encircle her as you kneel down beside her and embrace her huddled form. You pull her head <<if $PC.boobs == 1>>against your soft breasts<<else>>into your shoulder<</if>>, stroking it reassuringly and murmuring kindness. She clings to you, mostly for lack of any other comfort in the whole world, and sobs convulsively, @@color:mediumaquamarine;her terror flowing out of her@@ in a torrent as you gently rub her back. When she's mostly cried herself out, you tell her that she'll be all right. You're sure she'll be a good slave one day. You understand that her life is hard. She'll make mistakes, and you'll punish her for them, but that's part of slave training, and that's all right. If she does her best, she'll be all right. She sniffles, cuffing tears away. "Th-thank you, <<Master>>, I'll d-do my b-be<<s>>t," she manages to <<say>>.
+		<<set $activeSlave.trust += 5>>
+	<</replace>>
+<</click>>
+
+<<case "frightening dick">>
+
+<<click "Polish this">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You tell her to polish this instead, advancing even closer. She turns, finding your cockhead so close to her face that her eyes cross ludicrously as they attempt to focus on it. She does not like dicks, and obviously does not find the prospect of sucking this one appealing right now, but she knows it's in her best interests to <<if $activeSlave.oralSkill > 10>>put her oral knowledge to work<<else>>do her best<</if>> right now. She closes her eyes and takes you into her mouth, forming a seal around your cock with her <<if $activeSlave.lips > 40>>ridiculous<<elseif $activeSlave.lips > 20>>pillowy<<elseif $activeSlave.lips > 10>>pretty<<else>>disappointingly thin<</if>> lips before starting to suck dick. Dissatisfied with her reluctance, you order her to open her eyes and look up at you; she obeys, the $activeSlave.eyeColor orbs glittering with a little moisture as she concentrates on breathing past your penis. You ask if your cock tastes any different than usual. "Mmm hmm, M'," she mumbles, producing a nice humming sensation against your cock. You tell her that she's tasting another slave's <<if $activeSlave.vagina > -1>>pussy<<else>>ass<</if>>. She gags, but only slightly, and controls herself immediately. Your dick is desensitized from vigorous use, and she has to suck it a long time before you cup the back of her head, ram yourself all the way in, and blow your load straight down her gullet. You tell her she's a good $desc. "Thank you, <<Master>>," she <<say>>s @@color:hotpink;submissively,@@ going back to her polishing.
+		<<set $activeSlave.oralCount++, $oralTotal++>>
+		<<set $activeSlave.devotion += 5>>
+	<</replace>>
+<</click>>
+<br><<click "Talk to her about her issues with dick">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		You sit yourself down in the doorway, right next to her, and pat your thighs. She sits on your lap, obeying despite some evident reluctance to sit atop your moist cock. It nestles easily between her lower buttocks and upper thighs, and she gets herself situated, doing her best to ignore the feeling of your hot hard meat, hard against her fundament. You encircle her with your arms, possessively and dominantly but not sexually, and tell her that you're concerned about her relationship with cock. She shifts uncomfortably. "<<S>>orry, <<Master>>, <<s>>orry I'm not better at hiding that. I should be a good $desc and not react like that. I mean, in a bad way. You <<s>>tartled me, but I don't alway<<s>> react well to dick even when I'm not <<s>>tartled. I'll try harder." This is more contrition and submission than you were expecting, and you probe further, asking her pointedly whether she's attracted to dicks now. "N-no," she admits, after only a moment's hesitation to remember that honesty is the most important rule for her to follow. "No, I don't. But I'll do my be<<s>>t to be a good <<s>>ex <<s>>lave anyway, <<Master>>." Pleased, you tell her that things will get easier for her. <<if $activeSlave.hormones > 0>>The hormone treatments she's currently taking will slowly reorient her sexuality, and eventually she'll lust after every cock she sees.<<elseif $activeSlave.aphrodisiacs > 0>>The aphrodisiacs she's on will make her so omnisexually horny that soon she won't care how anyone's equipped, as long as they'll fuck her.<<elseif $activeSlave.energy > 60>>Her excellent and improving libido will eventually soften her to all kinds of sex, with all kinds of people.<<else>>Habit and training will get her used to dick, and eventually she'll barely remember that she ever had a problem with sucking a quick cock.<</if>> She's a little unsure whether or not to be reassured by this, but she's @@color:mediumaquamarine;relieved she's not in trouble.@@
+		<<set $activeSlave.trust += 5>>
+	<</replace>>
+<</click>>
+<br><<click "Rape her">>
+	<<replace "#name">>$activeSlave.slaveName<</replace>>
+	<<replace "#result">>
+		Sometimes there's really no need to overthink things. You reach down, grab her under the armpits, and haul her up, throwing her across your desk. She lands on her back, and the impact drives the wind out of her, so she lies there, @@color:gold;all possibility of resistance driven out of her.@@ <<if $activeSlave.clothes == "no clothing">>She's already naked, so there's no need to<<else>>You<</if>> tear the clothes off her. You force yourself in between her legs as she struggles to get her breath back, and she gets another good look at the formidable dick that's about to be slammed inside her<<if $activeSlave.preg > 20>> before is disappears beneath her pregnant belly<</if>>. Her eyes go wide with fear, and you enhance the effect by smacking yourself against <<if $activeSlave.vagina > -1>>her<<if $activeSlave.vagina == 0>> virgin<</if>> vulva<<else>>limp bitchclit<</if>>. You tell her not to worry, because you're still pretty wet from the last slave you fucked, so this shouldn't hurt too much. Then you ram your cock <<if $activeSlave.vagina > 0>>inside her<<else>>up her spasming ass<</if>>. She whines and bucks, but she's entirely at your mercy. She doesn't like dicks, and to go by her facial expression as you piston in and out of her, this experience isn't going to make her reconsider. When you fill her with cum, pull out, and let her retreat to clean herself up, she's relieved to go.
+		<<if $activeSlave.vagina <= 0>><<AnalVCheck>><<else>><<set $activeSlave.vaginalCount++, $vaginalTotal++>><</if>>
+		<<set $activeSlave.trust -= 5>>
+	<</replace>>
+<</click>><<if ($activeSlave.anus == 0) && ($activeSlave.vagina <= 0)>> //This option will take anal virginity//<</if>>
+
 <<default>>
 	ERROR: bad event
 <</switch>>
diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw
index 5fb58f9e87582e38a14c9411219cdb0fcd4d5d00..3752204e623e3659aef993d1cad8c674f9944171 100644
--- a/src/uncategorized/arcadeReport.tw
+++ b/src/uncategorized/arcadeReport.tw
@@ -1,102 +1,86 @@
 :: Arcade Report [nobr]
 
-''Arcade Report''<hr style="margin:0">
+<<set $arcadeSlaves = 0, $implanted = 0, _cockmilked = 0, _milked = 0, _profits = 0, _SL = $slaves.length>>
 
-<<set $milked to 0>>
-<<set $cockmilked to 0>>
-<<set $implanted to 0>>
-<<set $arcadeSlaves to 0>>
-<<set $profits to 0>>
-
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "be confined in the arcade")>>
-	<<if $seeImages == 1>><<SlaveArt $slaves[$i] 0 0>><</if>>
-	<<set $slaves[$i].trust -= 5>>
-	<<set $arcadeSlaves += 1>>
+<<for _i to 0; _i < _SL; _i++>>
+	<<if ($slaves[_i].assignment != "be confined in the arcade")>><<continue>><</if>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set $slaves[_i].trust -= 5, $arcadeSlaves++, $i = _i>>
 	<<silently>>
 	<<if ($arcadeUpgradeInjectors == 1)>>
-	<<if ($slaves[$i].health < -60)>>
-		<<set $slaves[$i].health = -60>>
-	<<elseif ($slaves[$i].health > -50)>>
-		<<set $slaves[$i].health -= 10>>
+	<<if ($slaves[_i].health < -60)>>
+		<<set $slaves[_i].health = -60>>
+	<<elseif ($slaves[_i].health > -50)>>
+		<<set $slaves[_i].health -= 10>>
 	<</if>>
-	<<set $slaves[$i].aphrodisiacs = 2>>
+	<<set $slaves[_i].aphrodisiacs = 2>>
 	<<display "SA drugs">>
-	<<set $slaves[$i].devotion -= 5>>
-	<<set $slaves[$i].trust -= 5>>
+	<<set $slaves[_i].devotion -= 5, $slaves[_i].trust -= 5>>
 	<<else>>
-	<<if ($slaves[$i].health < -60)>>
-		<<set $slaves[$i].health += 20>>
-	<<elseif ($slaves[$i].health < 10)>>
-		<<set $slaves[$i].health += 10>>
-	<<elseif ($slaves[$i].health > 20)>>
-		<<set $slaves[$i].health -= 10>>
+	<<if ($slaves[_i].health < -60)>>
+		<<set $slaves[_i].health += 20>>
+	<<elseif ($slaves[_i].health < 10)>>
+		<<set $slaves[_i].health += 10>>
+	<<elseif ($slaves[_i].health > 20)>>
+		<<set $slaves[_i].health -= 10>>
 	<</if>>
 	<</if>>
 	<<set $oldCash to $cash>>
-	<<display [[SA work a glory hole]]>>
+	<<display "SA work a glory hole">>
 	<<if ($arcadeUpgradeCollectors > 0)>>
-	<<if ($slaves[$i].lactation < 2)>>
-		<<set $slaves[$i].lactation to 2>>
-		<<set $slaves[$i].health -= 10>>
-		<<set $cash -= $surgeryCost>>
-		<<set $implanted += 1>>
-	<<elseif ($slaves[$i].lactation > 0) || ($slaves[$i].balls > 0)>>
-		<<display [[SA get milked]]>>
-		<<if ($slaves[$i].boobs < 2000)>>
-		<<set $slaves[$i].boobs += 100>>
-		<<elseif ($slaves[$i].boobs < 5000)>>
-		<<set $slaves[$i].boobs += 50>>
-		<<elseif ($slaves[$i].boobs < 10000)>>
-		<<set $slaves[$i].boobs += 25>>
-		<</if>>
-		<<if ($slaves[$i].balls > 0)>>
-		<<if ($slaves[$i].balls < 6)>>
-		<<if (random(1,100) > (40+(10*$slaves[$i].balls)))>>
-			<<set $slaves[$i].balls += 1>>
-		<</if>>
+	<<if ($slaves[_i].lactation < 2)>>
+		<<set $slaves[_i].lactation to 2, $slaves[_i].health -= 10, $cash -= $surgeryCost, $implanted += 1>>
+	<<elseif ($slaves[_i].lactation > 0) || ($slaves[_i].balls > 0)>>
+		<<display "SA get milked">>
+		<<if ($slaves[_i].boobs < 2000)>>
+		<<set $slaves[_i].boobs += 100>>
+		<<elseif ($slaves[_i].boobs < 5000)>>
+		<<set $slaves[_i].boobs += 50>>
+		<<elseif ($slaves[_i].boobs < 10000)>>
+		<<set $slaves[_i].boobs += 25>>
 		<</if>>
+		<<if ($slaves[_i].balls > 0) && ($slaves[_i].balls < 6)>>
+		<<if (random(1,100) > (40+(10*$slaves[_i].balls)))>>
+			<<set $slaves[_i].balls += 1>>
 		<</if>>
-		<<if ($slaves[$i].dick > 0)>>
-		<<if ($slaves[$i].dick < 6)>>
-		<<if (random(1,100) > (40+(10*$slaves[$i].dick)))>>
-			<<set $slaves[$i].dick += 1>>
 		<</if>>
+		<<if ($slaves[_i].dick > 0) && ($slaves[_i].dick < 6)>>
+		<<if (random(1,100) > (40+(10*$slaves[_i].dick)))>>
+			<<set $slaves[_i].dick += 1>>
 		<</if>>
 		<</if>>
-		<<if ($slaves[$i].lactation > 0)>>
-		<<set $milked += 1>>
+		<<if ($slaves[_i].lactation > 0)>>
+		<<set _milked += 1>>
 		<</if>>
-		<<if ($slaves[$i].balls > 0)>>
-		<<set $cockmilked += 1>>
+		<<if ($slaves[_i].balls > 0)>>
+		<<set _cockmilked += 1>>
 		<</if>>
 	<</if>>
 	<</if>>
-	<<set $profits += $cash-$oldCash>>
+	<<set _profits += $cash-$oldCash>>
 	<<display "SA long term effects">>
 	<</silently>>
-<</if>>
 <</for>>
 
 <<if ($arcadeSlaves > 0)>>
 	<<if $seeImages == 1>><br style="clear:both" /><</if>>
 	<<if ($arcadeSlaves == 1)>>''There is one inmate confined in $arcadeName.''<<else>>''There are $arcadeSlaves inmates confined in $arcadeName.''<</if>>
-	<<if $milked == 1>>
+	<<if _milked == 1>>
 	One of them is lactating and spends her time in $arcadeName being simultaneously milked and fucked.
-	<<elseif $milked > 1>>
-	$milked of them are lactating and spend their time in $arcadeName being simultaneously milked and fucked.
+	<<elseif _milked > 1>>
+	_milked of them are lactating and spend their time in $arcadeName being simultaneously milked and fucked.
 	<</if>>
 	<<if $implanted == 1>>
 	One of them was not lactating, so she is implanted with long-acting lactation inducing drugs.
 	<<elseif $implanted > 1>>
 	$implanted of them were not lactating, so they are implanted with long-acting lactation inducing drugs.
 	<</if>>
-	<<if $cockmilked == 1>>
+	<<if _cockmilked == 1>>
 	One of them retains testicles and is brutally cockmilked as she is used.
-	<<elseif $cockmilked > 1>>
-	$cockmilked of them retain testicles and are brutally cockmilked as they are used.
+	<<elseif _cockmilked > 1>>
+	_cockmilked of them retain testicles and are brutally cockmilked as they are used.
 	<</if>>
-	The arcade makes you @@color:yellowgreen;¤$profits@@ this week.
+	The arcade makes you @@color:yellowgreen;¤_profits@@ this week.
 	<<if ($arcologies[0].FSDegradationist > 20)>>
 	<<if $arcologies[0].FSDegradationistLaw == 1>>
 		The tenants located near the arcade don't mind having it nearby, even though the crowd of menial slaves waiting their turn spills out into the hallway, 24 hours a day.
@@ -105,61 +89,45 @@
 	<</if>>
 	<<elseif ($arcologies[0].FSPaternalist > 20)>>
 	Many of the better tenants located near the arcade consider it an @@color:red;intolerable@@ establishment to have nearby.
-	<<set $repGain -= Math.trunc($profits/20)>>
+	<<set $repGain -= Math.trunc(_profits/20)>>
 	<<else>>
 	Some of the better tenants located near the arcade consider it an @@color:red;obnoxious@@ establishment to have nearby.
-	<<set $repGain -= Math.trunc($profits/100)>>
+	<<set $repGain -= Math.trunc(_profits/100)>>
 	<</if>>
 
-	<<if $arcadeUpgradeFuckdolls == 1>>
-	<<if $arcade < $arcadeSlaves>>
-		<<set $activeSlave = 0>>
-		<<for $i to 0; $i < $slaves.length; $i++>>
-		<<if $slaves[$i].assignment == "be confined in the arcade">>
-			<<if $slaves[$i].fetish == "mindbroken">>
-			<<if $slaves[$i].fuckdoll == 0>>
-			<<if $slaves[$i].physicalAge > 35>>
-			<<set $activeSlave to $slaves[$i]>>
-			<<break>>
-			<</if>>
-			<</if>>
-			<</if>>
-		<</if>>
-		<</for>>
-		<<if $activeSlave == 0>>
-			<<for $i to 0; $i < $slaves.length; $i++>>
-			<<if $slaves[$i].assignment == "be confined in the arcade">>
-				<<if $slaves[$i].fetish == "mindbroken">>
-				<<if $slaves[$i].fuckdoll == 0>>
-				<<set $activeSlave to $slaves[$i]>>
-				<<break>>
-				<</if>>
-				<</if>>
-			<</if>>
-			<</for>>
-		<</if>>
-		<<if $activeSlave == 0>>
-			<<for $i to 0; $i < $slaves.length; $i++>>
-			<<if $slaves[$i].assignment == "be confined in the arcade">>
-				<<if $slaves[$i].fetish == "mindbroken">>
-				<<set $activeSlave to $slaves[$i]>>
-				<<break>>
+	<<if ($arcadeUpgradeFuckdolls == 1) && ($arcade < $arcadeSlaves)>>
+		<<set $activeSlave = 0, _Age = -1, _FD = -1, _MB = -1, _Con = -1>>
+		<<for _i to 0; _i < _SL; _i++>>
+			<<if $slaves[_i].assignment == "be confined in the arcade">>
+				<<if ($slaves[_i].fetish == "mindbroken")>>
+					<<if ($slaves[_i].fuckdoll == 0)>>
+						<<if ($slaves[_i].physicalAge > 35)>>
+							<<set _Age = _i>>
+							<<break>>
+						<<elseif _FD == -1>>
+							<<set _FD = _i>>
+						<</if>>
+					<<elseif _MB == -1>>
+						<<set _MB = _i>>
+					<</if>>
+				<<elseif _Con == -1>>
+					<<set _Con = _i>>
 				<</if>>
 			<</if>>
-			<</for>>
-		<</if>>
-		<<if $activeSlave == 0>>
-			<<for $i to 0; $i < $slaves.length; $i++>>
-			<<if $slaves[$i].assignment == "be confined in the arcade">>
-				<<set $activeSlave to $slaves[$i]>>
-				<<break>>
-			<</if>>
-			<</for>>
+		<</for>>
+		<<if _Age > -1>>
+			<<set $activeSlave = $slaves[_Age]>>
+		<<elseif _FD > -1>>
+			<<set $activeSlave = $slaves[_FD]>>
+		<<elseif _MB > -1>>
+			<<set $activeSlave = $slaves[_MB]>>
+		<<elseif _Con > -1>>
+			<<set $activeSlave = $slaves[_Con]>>
 		<</if>>
 		$activeSlave.slaveName is low-quality and surplus to the needs of the arcade, so she has been converted into a Fuckdoll.
 		<<set $fuckdolls += 1>>
 		<<display "Remove activeSlave">>
-	<</if>>
+		<<set _SL = $slaves.length>>
 	<</if>>
 
 	<<if $arcadeDecoration != "standard">>
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index 02b9fa5d97aef1b5b53c200603b9178683a522d5..7a896475d031be6a113ac47452edad5b14e0dc43 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -1,79 +1,67 @@
 :: Brothel Report [nobr]
 
-''Brothel Report''<hr style="margin:0">
 
-<<set $brothelSlaves to 0>>
-<<set $legendaryWhoreID to 0>>
-<<set $brothelBonuses to 0>>
-<<set $slim to 0>>
-<<set $stacked to 0>>
-<<set $modded to 0>>
-<<set $unmodded to 0>>
-<<set $pure to 0>>
-<<set $implanted to 0>>
-<<set $XX to 0>>
-<<set $XY to 0>>
-<<set $young to 0>>
-<<set $old to 0>>
+<<set $brothelSlaves = 0, $legendaryWhoreID = 0, _brothelBonuses = 0, $slim = 0, $stacked = 0, $modded = 0, $unmodded = 0, $pure = 0, $implanted = 0, $XX = 0, $XY = 0, $young = 0, $old = 0, _profits = 0, _madamFetish = 0, $madamCashBonus = 0, _SL = $slaves.length, _MDM = -1>>
+<<set $legendaryWombID = 0>>
 <<set $pregYes to 0>>
 <<set $pregNo to 0>>
-<<set $profits to 0>>
-<<set $madamFetish to 0>>
-	<<set $madamCashBonus to 0>>
 
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "work in the brothel")>>
-	<<if $seeImages == 1>><<SlaveArt $slaves[$i] 0 0>><</if>>
-	<<set $brothelSlaves += 1>>
+<<for _i to 0; _i < _SL; _i++>>
+<<if ($slaves[_i].assignment is "work in the brothel")>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set $brothelSlaves++>>
+<</if>>
+<<if ($Madam != 0)>>
+<<if ($slaves[_i].ID == $Madam.ID)>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set _MDM = _i>>
+<</if>>
 <</if>>
 <</for>>
 
-<<if ($Madam != 0)>>
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].ID is $Madam.ID)>>
+<<if ($Madam != 0) && (_MDM != -1)>>
+	<<set $i = _MDM>>
 	<<silently>>
 	<<display "SA long term effects">>
 	<<display "SA relationships">>
 	<<display "SA rivalries">>
 	<</silently>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif $slaves[$i].health < -40>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif $slaves[$i].health < 0>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif $slaves[$i].health < 90>>
-	<<set $slaves[$i].health += 7>>
-	<</if>>
-	<<if $slaves[$i].devotion <= 45>>
-	<<set $slaves[$i].devotion += 5>>
-	<</if>>
-	<<if $slaves[$i].trust < 45>>
-	<<set $slaves[$i].trust += 5>>
-	<</if>>
-	<<if $slaves[$i].fetishStrength <= 95>>
-	<<if $slaves[$i].fetish != "dom">>
-		<<fetishChangeChance $slaves[$i]>>
+	<<if ($slaves[_MDM].health < -80)>>
+	<<set $slaves[_MDM].health += 20>>
+	<<elseif $slaves[_MDM].health < -40>>
+	<<set $slaves[_MDM].health += 15>>
+	<<elseif $slaves[_MDM].health < 0>>
+	<<set $slaves[_MDM].health += 10>>
+	<<elseif $slaves[_MDM].health < 90>>
+	<<set $slaves[_MDM].health += 7>>
+	<</if>>
+	<<if $slaves[_MDM].devotion <= 45>>
+	<<set $slaves[_MDM].devotion += 5>>
+	<</if>>
+	<<if $slaves[_MDM].trust < 45>>
+	<<set $slaves[_MDM].trust += 5>>
+	<</if>>
+	<<if $slaves[_MDM].fetishStrength <= 95>>
+	<<if $slaves[_MDM].fetish != "dom">>
+		<<fetishChangeChance $slaves[_MDM]>>
 		<<if $fetishChangeChance > random(0,100)>>
-			<<set $madamFetish to 1>>
-			<<set $slaves[$i].fetishKnown to 1>>
-			<<set $slaves[$i].fetish to "dom">>
+			<<set _madamFetish to 1>>
+			<<set $slaves[_MDM].fetishKnown to 1>>
+			<<set $slaves[_MDM].fetish to "dom">>
 		<</if>>
-	<<elseif $slaves[$i].fetishKnown == 0>>
-		<<set $madamFetish to 1>>
-		<<set $slaves[$i].fetishKnown to 1>>
+	<<elseif $slaves[_MDM].fetishKnown == 0>>
+		<<set _madamFetish to 1>>
+		<<set $slaves[_MDM].fetishKnown to 1>>
 	<<else>>
-		<<set $madamFetish to 2>>
-		<<set $slaves[$i].fetishStrength += 4>>
+		<<set _madamFetish to 2>>
+		<<set $slaves[_MDM].fetishStrength += 4>>
 	<</if>>
 	<</if>>
-	<<break>>
-<</if>>
-<</for>>
-$Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As your wife, she does her best to attract attention to your brothel.<</if>>
-<<if ($madamFetish == 1)>>
+	<<set $Madam = $slaves[_MDM]>> /% BUGFIX! This is needed as it's the slaves[var] that holds the newest relationship info if anything has changed not the Madam variable. %/
+$Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>> As your wife, she does her best to attract attention to your brothel.<</if>>
+<<if (_madamFetish == 1)>>
 	She isn't above sampling the merchandise herself; before long it's obvious to her girls that she @@color:lightcoral;really likes fucking them.@@
-<<elseif ($madamFetish == 2)>>
+<<elseif (_madamFetish == 2)>>
 	She's careful that all of the whores under her supervision are all warmed up and ready to get fucked every morning, and she @@color:lightsalmon;becomes more dominant.@@
 <</if>>
 <<set $oldCash to $cash>>
@@ -107,308 +95,260 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 	She is a clever manager.
 	<<set $madamCashBonus += 0.05*$Madam.intelligence>>
 <</if>>
-<<if ($Madam.dick > 2) && canAchieveErection($Madam) && ($Madam.dickAccessory != "chastity")>>
+<<if ($Madam.dick > 2) && (canAchieveErection($Madam)) && (canPenetrate(_MDM))>>
 	Her turgid dick helps her manage the bitches.
 	<<set $madamCashBonus += 0.05>>
 <</if>>
-<<for $i to 0; $i < $slaves.length; $i++>>
+<<for _i = 0; _i < _SL; _i++>>
+<<if $slaves[_i].assignment != "work in the brothel">><<continue>><</if>>
 <<if $familyTesting == 1>>
-	<<if $slaves[$i].assignment == "learn in the schoolroom">>
-	<<if $slaves[$i].mother == $Madam.ID>>
-		She pays special attention to her daughter, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<if $slaves[_i].mother == $Madam.ID>>
+		She pays special attention to her daughter, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
 	<</if>>
-	<<if $slaves[$i].father == $Madam.ID>>
-		She pays special attention to her daughter, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<if $slaves[_i].father == $Madam.ID>>
+		She pays special attention to her daughter, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
 	<</if>>
-	<<if $slaves[$i].ID == $Madam.father>>
-		She pays special attention to her father, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<if $slaves[_i].ID == $Madam.father>>
+		She pays special attention to her father, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
 	<</if>>
-	<<if $slaves[$i].ID == $Madam.mother>>
-		She pays special attention to her mother, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<if $slaves[_i].ID == $Madam.mother>>
+		She pays special attention to her mother, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
 	<</if>>
-	<<if areSisters($slaves[$i], $Madam) == 1>>
-		She pays special attention to her twin sister, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<if areSisters($slaves[_i], $Madam) == 1>>
+		She pays special attention to her twin sister, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
-	<<elseif areSisters($slaves[$i], $Madam) == 2>>
-		She pays special attention to her sister, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<elseif areSisters($slaves[_i], $Madam) == 2>>
+		She pays special attention to her sister, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
-	<<elseif areSisters($slaves[$i], $Madam) == 3>>
-		She pays special attention to her half-sister, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
+	<<elseif areSisters($slaves[_i], $Madam) == 3>>
+		She pays special attention to her half-sister, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+		<<set $slaves[_i].trust += 1>>
 		<<set $madamCashBonus += 0.05>>
 	<</if>>
-	<</if>>
 <<else>>
-	<<if $Madam.relationTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the brothel">>
-		She pays special attention to her $slaves[$i].relation, $slaves[$i].slaveName, making sure she is treated well and showing off her skills.
-		<<set $slaves[$i].trust += 1>>
-		<<set $madamCashBonus += 0.05>>
-	<</if>>
+<<if $Madam.relationTarget is $slaves[_i].ID>>
+	She pays special attention to her $slaves[_i].relation, $slaves[_i].slaveName, making sure she is treated well and showing off her skills.
+	<<set $slaves[_i].trust += 1>>
+	<<set $madamCashBonus += 0.05>>
 <</if>>
-<<if $Madam.relationshipTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the brothel">>
-	She dotes over her <<if $Madam.relationship == 1>>friend<<elseif $Madam.relationship is 2>>best friend<<elseif $Madam.relationship is 3>>friend with benefits<<elseif $Madam.relationship is 4>>lover<<elseif $Madam.relationship is 5>>slave wife<</if>>, $slaves[$i].slaveName, making sure she is safe, but unfortunately driving potential costumers away from her.
-	<<set $slaves[$i].devotion += 1>>
+<</if>> /*closes extended family mode*/
+<<if $Madam.relationshipTarget is $slaves[_i].ID>>
+	She dotes over her <<if $Madam.relationship == 1>>friend<<elseif $Madam.relationship is 2>>best friend<<elseif $Madam.relationship is 3>>friend with benefits<<elseif $Madam.relationship is 4>>lover<<elseif $Madam.relationship is 5>>slave wife<</if>>, $slaves[_i].slaveName, making sure she is safe, but unfortunately driving potential costumers away from her.
+	<<set $slaves[_i].devotion += 1>>
 	<<set $madamCashBonus -= 0.05>>
 <</if>>
-<<if $Madam.rivalryTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the brothel">>
-	She forces her <<if $Madam.rivalry == 1>>growing rival<<elseif $Madam.rivalry is 2>>rival<<elseif $Madam.rivalry is 3>>bitter rival<</if>>, $slaves[$i].slaveName, to service all the men in the brothel.
-	<<set $slaves[$i].devotion -= 2>>
-	<<set $slaves[$i].trust -= 2>>
-	<<if $slaves[$i].vaginalAccessory != "chastity belt" or $slaves[$i].vagina > -1>>
-	<<set $slaves[$i].vaginalCount += 10>>
-	<<set $vaginalTotal += 10>>
-	<<if $slaves[$i].publicCount>><<set $slaves[$i].publicCount += 10>><<else>><<set $slaves[$i].publicCount to 10>><</if>>
-	<</if>>
-	<<set $slaves[$i].analCount += 10>>
-	<<set $analTotal += 10>>
-	<<set $slaves[$i].oralCount += 10>>
-	<<set $analTotal += 10>>
-	<<if $slaves[$i].publicCount>><<set $slaves[$i].publicCount += 20>><<else>><<set $slaves[$i].publicCount to 20>><</if>>
-<<if random(1,100) > 65>>
-	<<set $Madam.rivalry += 1>>
-	<<set $slaves[$i].rivalry += 1>>
-<</if>>
+<<if $Madam.rivalryTarget is $slaves[_i].ID>>
+	She forces her <<if $Madam.rivalry == 1>>growing rival<<elseif $Madam.rivalry is 2>>rival<<elseif $Madam.rivalry is 3>>bitter rival<</if>>, $slaves[_i].slaveName, to service all the men in the brothel.
+	<<set $slaves[_i].devotion -= 2>>
+	<<set $slaves[_i].trust -= 2>>
+	<<if canDoVaginal($slaves[_i])>>
+		<<set $slaves[_i].vaginalCount += 10>>
+		<<set $vaginalTotal += 10>>
+		<<if $slaves[_i].publicCount>><<set $slaves[_i].publicCount += 10>><<else>><<set $slaves[_i].publicCount to 10>><</if>>
+	<</if>>
+	<<if canDoAnal($slaves[_i])>>
+		<<set $slaves[_i].analCount += 10>>
+		<<set $analTotal += 10>>
+		<<if $slaves[_i].publicCount>><<set $slaves[_i].publicCount += 10>><<else>><<set $slaves[_i].publicCount to 10>><</if>>
+	<</if>>
+	<<set $slaves[_i].oralCount += 10>>
+	<<set $oralTotal += 10>>
+	<<if $slaves[_i].publicCount>><<set $slaves[_i].publicCount += 10>><<else>><<set $slaves[_i].publicCount to 10>><</if>>
+	<<if random(1,100) > 65>>
+		<<set $slaves[_MDM].rivalry += 1, $Madam.rivalry += 1>>
+		<<set $slaves[_i].rivalry += 1>>
+	<</if>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is a famed Free Cities whore, and commands top prices." and $slaves[$i].assignment is "work in the brothel">>
-	She makes sure to promote $slaves[$i].slaveName, the famed whore, in order to capitalize on her popularity.
+<<if $slaves[_i].prestigeDesc is "She is a famed Free Cities whore, and commands top prices.">>
+	She makes sure to promote $slaves[_i].slaveName, the famed whore, in order to capitalize on her popularity.
 	<<set $madamCashBonus += 0.15>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is a famed Free Cities slut, and can please anyone." and $slaves[$i].assignment is "work in the brothel">>
-	She makes sure to promote $slaves[$i].slaveName, the famed entertainer, in order to capitalize on her popularity.
+<<if $slaves[_i].prestigeDesc is "She is a famed Free Cities slut, and can please anyone.">>
+	She makes sure to promote $slaves[_i].slaveName, the famed entertainer, in order to capitalize on her popularity.
 	<<set $madamCashBonus += 0.15>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a dairy cow." and $slaves[$i].assignment is "work in the brothel">>
-	She makes sure to massage $slaves[$i].slaveName's huge breasts to get the milk flowing before enticing clients to suckle and play with her.
+<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a dairy cow.">>
+	She makes sure to massage $slaves[_i].slaveName's huge breasts to get the milk flowing before enticing clients to suckle and play with her.
 	<<set $madamCashBonus += 0.10>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a cockmilker." and $slaves[$i].assignment is "work in the brothel">>
-	She shows off $slaves[$i].slaveName's copious loads by putting a condom over her dick and teasing her till she bursts it.  The show draws multiple clients that want to play with her oversized junk and messy orgasms.
+<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a cockmilker.">>
+	She shows off $slaves[_i].slaveName's copious loads by putting a condom over her dick and teasing her till she bursts it.  The show draws multiple clients that want to play with her oversized junk and messy orgasms.
 	<<set $madamCashBonus += 0.15>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a breeder." and $slaves[$i].assignment is "work in the brothel" and $slaves[$i].preg > 10>>
-	She makes sure $slaves[$i].slaveName's growing pregnancy is well taken care of, even if it means driving away potential customers away when the mother-to-be needs a rest.
+<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a breeder." && $slaves[$i].preg > 10>>
+	She makes sure $slaves[_i].slaveName's growing pregnancy is well taken care of, even if it means driving away potential customers away when the mother-to-be needs a rest.
 	<<set $madamCashBonus -= 0.05>>
 <</if>>
-<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a breeder." and $slaves[$i].assignment is "work in the brothel">>
-	She makes sure to play off $slaves[$i].slaveName's fame and fertility by enticing potential customers to be the one to claim her womb by filling it with their child.
+<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a breeder.">>
+	She makes sure to play off $slaves[_i].slaveName's fame and fertility by enticing potential customers to be the one to claim her womb by filling it with their child.
 	<<set $madamCashBonus += 0.15>>
 <</if>>
 <</for>>
-<<set $profits += $cash-$oldCash>>
+
+<<set _profits += $cash-$oldCash>>
 <<if ($brothelSlaves < 5)>>
 	<<set $slavesGettingHelp to 0>>
 	<<if $universalRulesFacilityWork == 1>>
-	<<for $i to 0; $i < $slaves.length; $i++>>
-		<<if ($slaves[$i].assignment is "whore")>>
-		<<set $slavesGettingHelp += 1>>
+	<<for _i to 0; _i < _SL; _i++>>
+		<<if ($slaves[_i].assignment is "whore")>>
+		<<set $slavesGettingHelp++>>
 		<</if>>
 	<</for>>
 	<</if>>
 	<<if ($brothelSlaves+$slavesGettingHelp < 5)>>
-	<<for $i to 0; $i < $slaves.length; $i++>>
-	<<if ($slaves[$i].ID is $Madam.ID)>>
 	<<set $oldCash to $cash>>
+	<<set $i = _MDM>>
 	<<silently>><<display "SA whore">><</silently>>
-	<<set $seed to $cash-$oldCash>>
-	<<set $cash += Math.trunc(0.5*$seed)>>
-	<<set $seed = Math.trunc(1.5*$seed)>>
-	Since she doesn't have enough whores to manage to keep her busy, she sees $beauty customers herself, earning you @@color:yellowgreen;¤$seed@@. She can charge more for her time, since many citizens find it erotic to fuck the Madam.
-	<<set $profits += $seed>>
-	<<break>>
-	<</if>>
-	<</for>>
+	<<set $Madam = $slaves[_MDM]>> /% Keep Madam and her slaves[$i] in sync %/
+	<<set _seed to $cash-$oldCash>>
+	<<set $cash += Math.trunc(0.5*_seed)>>
+	<<set _seed = Math.trunc(1.5*_seed)>>
+	Since she doesn't have enough whores to manage to keep her busy, she sees $beauty customers herself, earning you @@color:yellowgreen;¤_seed@@. She can charge more for her time, since many citizens find it erotic to fuck the Madam.
+	<<set _profits += _seed>>
 	<</if>>
 <</if>>
 <</if>>
 
+<br>
 <<if $brothelSlaves > 0>>
 
 	<<set $possibleBonuses to 0>>
 	<<if $seeImages == 1>><br style="clear:both" /><</if>>
 	<<if $brothelSlaves == 1>>''There is one slave whore working out of $brothelName.''<<else>>''There are $brothelSlaves slave whores working out of $brothelName.''<</if>>
 
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "work in the brothel")>>
-	<<if ($legendaryWhoreID == 0) && ($slaves[$i].whoreSkill >= 100) && ($slaves[$i].devotion > 50) && ($slaves[$i].prestige == 0)>>
-	<<set $legendaryWhoreID to $slaves[$i].ID>>
+<<for _i to 0; _i < _SL; _i++>>
+	<<if ($slaves[_i].assignment != "work in the brothel")>><<continue>><</if>>
+	<<if ($legendaryWombID == 0) && ($slaves[_i].amp != 1) && ($slaves[_i].preg > 30) && ($slaves[_i].pregType < 50) && ($slaves[_i].eggType == "human") && ($slaves[_i].births > 10) && ($slaves[_i].devotion > 50) && ($slaves[_i].prestige == 0)>>
+	<<set $legendaryWombID to $slaves[_i].ID>>
 	<</if>>
-	<<if ($legendaryWombID == 0) && ($slaves[$i].amp != 1) && ($slaves[$i].preg > 30) && ($slaves[$i].pregType < 50) && ($slaves[$i].eggType == "human") && ($slaves[$i].births > 10) && ($slaves[$i].devotion > 50) && ($slaves[$i].prestige == 0)>>
-	<<set $legendaryWombID to $slaves[$i].ID>>
+	<<if ($legendaryWhoreID == 0) && ($slaves[_i].whoreSkill >= 100) && ($slaves[_i].devotion > 50) && ($slaves[_i].prestige == 0)>>
+	<<set $legendaryWhoreID to $slaves[_i].ID>>
 	<</if>>
+	<<set $i = _i>>
 	<<silently>>
 	<<if ($brothelUpgradeDrugs == 1)>>
-	<<set $slaves[$i].health += 3>>
-	<<set $slaves[$i].aphrodisiacs = 2>>
+	<<set $slaves[_i].health += 3>>
+	<<set $slaves[_i].aphrodisiacs = 2>>
 	<<display "SA drugs">>
 	<</if>>
 	<<if ($brothelUpgradeHealth == 1)>>
-	<<set $slaves[$i].health += 10>>
+	<<set $slaves[_i].health += 10>>
 	<</if>>
 	<<set $oldCash to $cash>>
-	<<display [[SA whore]]>>
+	<<display "SA whore">>
 	<<if $brothelAdsSpending != 0>>
-	<<set $seed to 0>>
+	<<set _seed to 0>>
 	<<if $brothelAdsStacked == 1>>
-		<<if ($slaves[$i].butt > 4)>>
-		<<if ($slaves[$i].boobs > 800)>>
-		<<set $seed += 1>>
-		<</if>>
+		<<if ($slaves[_i].butt > 4) && ($slaves[_i].boobs > 800)>>
+		<<set _seed++>>
 		<</if>>
 	<<elseif $brothelAdsStacked is -1>>
-		<<if ($slaves[$i].boobs < 500)>>
-		<<if ($slaves[$i].butt < 3)>>
-		<<if ($slaves[$i].weight <= 10)>>
-		<<if ($slaves[$i].muscles <= 95)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<if ($slaves[_i].boobs < 500) && ($slaves[_i].butt < 3) && ($slaves[_i].weight <= 10) && ($slaves[_i].muscles <= 95)>>
+		<<set _seed++>>
 		<</if>>
 	<</if>>
+	<<set _PierceC = ($slaves[_i].lipsPiercing + $slaves[_i].nipplesPiercing + $slaves[_i].vaginaPiercing + $slaves[_i].clitPiercing + $slaves[_i].anusPiercing + $slaves[_i].earPiercing + $slaves[_i].eyebrowPiercing + $slaves[_i].nosePiercing + $slaves[_i].navelPiercing)>>
 	<<if $brothelAdsModded == 1>>
-		<<if (($slaves[$i].lipsPiercing + $slaves[$i].nipplesPiercing + $slaves[$i].vaginaPiercing + $slaves[$i].clitPiercing + $slaves[$i].anusPiercing + $slaves[$i].earPiercing + $slaves[$i].eyebrowPiercing + $slaves[$i].nosePiercing + $slaves[$i].navelPiercing) > 8)>>
-		<<if ($slaves[$i].lipsTat != 0)>>
-		<<if ($slaves[$i].buttTat != 0)>>
-		<<if ($slaves[$i].anusTat != 0)>>
-		<<if ($slaves[$i].vaginaTat != 0)>>
-		<<if ($slaves[$i].boobsTat != 0)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<if _PierceC > 8>>
+		<<if ($slaves[_i].lipsTat != 0) && ($slaves[_i].buttTat != 0) && ($slaves[_i].anusTat != 0) && ($slaves[_i].vaginaTat != 0) && ($slaves[_i].boobsTat != 0)>>
+			<<set _seed++>>
 		<</if>>
 		<</if>>
 	<<elseif $brothelAdsModded is -1>>
-		<<if (($slaves[$i].lipsPiercing + $slaves[$i].nipplesPiercing + $slaves[$i].vaginaPiercing + $slaves[$i].clitPiercing + $slaves[$i].anusPiercing + $slaves[$i].earPiercing + $slaves[$i].eyebrowPiercing + $slaves[$i].nosePiercing + $slaves[$i].navelPiercing) < 3)>>
-		<<if ($slaves[$i].lipsTat == 0)>>
-		<<if ($slaves[$i].buttTat == 0)>>
-		<<if ($slaves[$i].vaginaTat == 0)>>
-		<<if ($slaves[$i].boobsTat == 0)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<if _PierceC < 3>>
+		<<if ($slaves[_i].lipsTat == 0) && ($slaves[_i].buttTat == 0) && ($slaves[_i].vaginaTat == 0) && ($slaves[_i].boobsTat == 0)>>
+			<<set _seed++>>
 		<</if>>
 		<</if>>
 	<</if>>
 	<<if $brothelAdsPreg == 1>>
 		<<if ($slaves[$i].preg > 10) || ($slaves[$i].bellyImplant >= 4000)>>
-		<<set $seed += 1>>
-		<</if>>
-	<<elseif $brothelAdsPreg is -1>>
-		<<if ($slaves[$i].pregType < 10)>>
-		<<if ($slaves[$i].preg < 1)>>
-		<<if ($slaves[$i].weight < 30)>>
-		<<if (!$fakeBellies.contains($bellyAccessory))>>
-		<<if ($slaves[$i].bellyImplant == 0)>>
-		<<if ($slaves[$i].inflation == 0)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
+			<<set _seed++>>
 		<</if>>
+	<<elseif $brothelAdsPreg == -1>>
+		<<if ($slaves[$i].pregType < 10) && ($slaves[$i].preg < 1) && ($slaves[$i].weight < 30) && (!$fakeBellies.contains($bellyAccessory)) && ($slaves[$i].bellyImplant == 0) && ($slaves[$i].inflation == 0)>>
+			<<set _seed++>>
 		<</if>>
 	<</if>>
 	<<if $brothelAdsImplanted == 1>>
-		<<if ($slaves[$i].boobsImplant > 0)>>
-		<<if ($slaves[$i].buttImplant > 0)>>
-		<<if ($slaves[$i].waist > 0)>>
-		<<if ($slaves[$i].lipsImplant > 0)>>
-		<<if ($slaves[$i].bellyImplant > 0)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<if ($slaves[_i].boobsImplant > 0) && ($slaves[_i].buttImplant > 0) && ($slaves[_i].waist > 0) && ($slaves[_i].lipsImplant > 0) && ($slaves[$i].bellyImplant > 0)>>
+			<<set _seed++>>
 		<</if>>
 	<<elseif $brothelAdsImplanted is -1>>
-		<<if ($slaves[$i].boobsImplant == 0)>>
-		<<if ($slaves[$i].buttImplant == 0)>>
-		<<if ($slaves[$i].waist < 2)>>
-		<<if ($slaves[$i].lipsImplant == 0)>>
-		<<if ($slaves[$i].bellyImplant == 0)>>
-		<<if ($slaves[$i].faceImplant < 2)>>
-		<<set $seed += 1>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<if ($slaves[_i].boobsImplant == 0) && ($slaves[_i].buttImplant == 0) && ($slaves[_i].waist < 2) && ($slaves[_i].lipsImplant == 0) && ($slaves[_i].faceImplant < 2) &&  ($slaves[$i].bellyImplant == 0)>>
+			<<set _seed++>>
 		<</if>>
 	<</if>>
 	<<if $brothelAdsOld == 1>>
-		<<if ($slaves[$i].physicalAge >= 30)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].physicalAge >= 30)>>
+		<<set _seed++>>
 		<</if>>
 	<<elseif $brothelAdsOld is -1>>
-		<<if ($slaves[$i].physicalAge < 30) && ($slaves[$i].physicalAge >= 18)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].physicalAge < 30) && ($slaves[_i].physicalAge >= 18)>>
+		<<set _seed++>>
 		<</if>>
 	<<elseif $brothelAdsOld is -2>>
-		<<if ($slaves[$i].physicalAge <= 18) && ($slaves[$i].physicalAge >= 13)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].physicalAge <= 18) && ($slaves[_i].physicalAge >= 13)>>
+		<<set $seed++>>
 		<</if>>
 	<<elseif $brothelAdsOld is -3>>
-		<<if ($slaves[$i].physicalAge < 13)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].physicalAge < 13)>>
+		<<set $seed++>>
 		<</if>>
 	<</if>>
 	<<if $brothelAdsXX == 1>>
-		<<if ($slaves[$i].dick == 0)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].dick == 0)>>
+		<<set _seed++>>
 		<</if>>
 	<<elseif $brothelAdsXX is -1>>
-		<<if ($slaves[$i].dick > 0)>>
-		<<set $seed += 1>>
+		<<if ($slaves[_i].dick > 0)>>
+		<<set _seed++>>
 		<</if>>
 	<</if>>
-	<<if $seed > 0>>
-		<<set $cash += $seed * random(50,60) * Math.trunc($brothelAdsSpending/1000)>>
+	<<if _seed > 0>>
+		<<set $cash += _seed * random(50,60) * Math.trunc($brothelAdsSpending/1000)>>
 	<<else>>
 		<<set $cash += random(50,60) * Math.trunc($brothelAdsSpending/1000)>>
 	<</if>>
 	<</if>>
-	<<set $profits += $cash-$oldCash>>
+	<<set _profits += $cash-$oldCash>>
 	<<display "SA long term effects">>
 	<<display "SA relationships">>
 	<<display "SA rivalries">>
 	<</silently>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif $slaves[$i].health < -40>>
-	<<set $slaves[$i].health += 15>>
-	<<elseif $slaves[$i].health < 0>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif $slaves[$i].health < 90>>
-	<<set $slaves[$i].health += 7>>
-	<</if>>
-	<<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
-	<<set $slaves[$i].devotion -= 5>>
-	<<set $slaves[$i].trust -= 5>>
-	<<elseif ($slaves[$i].devotion < 45)>>
-	<<set $slaves[$i].devotion += 4>>
-	<<elseif ($slaves[$i].devotion >= 50)>>
-	<<set $slaves[$i].devotion -= 4>>
-	<</if>>
-	<<if ($slaves[$i].trust < 30)>>
-	<<set $slaves[$i].trust += 5>>
-	<</if>>
-	<<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
-	<<set $slaves[$i].energy += 1>>
+	<<if ($slaves[_i].health < -80)>>
+	<<set $slaves[_i].health += 20>>
+	<<elseif $slaves[_i].health < -40>>
+	<<set $slaves[_i].health += 15>>
+	<<elseif $slaves[_i].health < 0>>
+	<<set $slaves[_i].health += 10>>
+	<<elseif $slaves[_i].health < 90>>
+	<<set $slaves[_i].health += 7>>
+	<</if>>
+	<<if ($slaves[_i].devotion <= 20) && ($slaves[_i].trust > -20)>>
+	<<set $slaves[_i].devotion -= 5>>
+	<<set $slaves[_i].trust -= 5>>
+	<<elseif ($slaves[_i].devotion < 45)>>
+	<<set $slaves[_i].devotion += 4>>
+	<<elseif ($slaves[_i].devotion >= 50)>>
+	<<set $slaves[_i].devotion -= 4>>
+	<</if>>
+	<<if ($slaves[_i].trust < 30)>>
+	<<set $slaves[_i].trust += 5>>
+	<</if>>
+	<<if $slaves[_i].energy > 40 && $slaves[_i].energy < 95>>
+	<<set $slaves[_i].energy += 1>>
 	<</if>>
-<</if>>
 <</for>>
 
 	<<set $oldCash to $cash>>
@@ -420,7 +360,7 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($slim > 0) && ($stacked > 0) && (Math.abs($slim-$stacked) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers a @@color:yellowgreen;wide@@ variety of slim and stacked slaves.
 		<</if>>
 	<</if>>
@@ -430,7 +370,7 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($pregYes > 0) && ($pregNo > 0) && (Math.abs($pregYes-$pregNo) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers a @@color:yellowgreen;wide@@ variety  of slaves with big bellies and slaves with flat bellies.
 		<</if>>
 	<</if>>
@@ -440,7 +380,7 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($modded > 0) && ($unmodded > 0) && (Math.abs($modded-$unmodded) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers a @@color:yellowgreen;both@@ heavily pierced and tattooed slaves and slaves with more natural bodies.
 		<</if>>
 	<</if>>
@@ -450,7 +390,7 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($implanted > 0) && ($pure > 0) && (Math.abs($implanted-$pure) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers @@color:yellowgreen;both@@ all-natural girls, and slaves whose beauty has been improved by surgical means.
 		<</if>>
 	<</if>>
@@ -460,7 +400,7 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($XX > 0) && ($XY > 0) && (Math.abs($XX-$XY) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers a @@color:yellowgreen;mix@@ of whores that can appeal to varied tastes in genitalia.
 		<</if>>
 	<</if>>
@@ -470,22 +410,22 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 		<<set $possibleBonuses += 1>>
 		<<if ($young > 0) && ($old > 0) && (Math.abs($young-$old) <= ($brothelSlaves/3))>>
 		<<set $cash += $brothelSlaves*random(20,30)>>
-		<<set $brothelBonuses += 1>>
+		<<set _brothelBonuses += 1>>
 		The brothel offers girls @@color:yellowgreen;both@@ young and mature.
 		<</if>>
 	<</if>>
 	<</if>>
 
 	<<if ($possibleBonuses > 0)>>
-	<<if ($brothelBonuses >= $possibleBonuses)>>
+	<<if (_brothelBonuses >= $possibleBonuses)>>
 		<<set $cash += $brothelSlaves*random(40,60)>>
 		There is a ''@@color:yellowgreen;perfect variety@@'' of slave whores working in the brothel.
 	<</if>>
 	<</if>>
 
-	<<set $profits += $cash-$oldCash>>
+	<<set _profits += $cash-$oldCash>>
 
-	$brothelNameCaps makes you @@color:yellowgreen;¤$profits@@ this week.
+	$brothelNameCaps makes you @@color:yellowgreen;¤_profits@@ this week.
 
 	<<if $brothel < $brothelSlaves>>
 	<<set $brothelSpots to 0>>
@@ -502,3 +442,5 @@ $Madam.slaveName is serving as the madam.<<if $Madam.relationship is -3>>  As yo
 	<<set $brothelSpots to $brothel>>
 <</if>>
 <br><br>
+
+/% Gotta keep the facility bosses Vars in sync with their respective $slaves[var], or relationships and/or rivalries in the least can get messed up. Since the FacBass vars get wiped out every week the rivalry here would be different since it was originally only updating $Madam and not also the $slaves[madam]. I think all facilities do this and also some events. %/
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 046b5a9a83a1845abd8f493c86837fee422308d4..da4fba1b2599326f9f32ff6736ab78e6910255c2 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -1,6 +1,5 @@
 :: Cellblock Report [nobr]
 
-''Cellblock Report''<hr style="margin:0">
 
 <<set $brokenSlaves to 0>>
 <<set $softenedQuirks to 0>>
@@ -138,9 +137,10 @@
 	<<set $slaves[$i].health += 3>>
 	<</if>>
 	<<if ($slaves[$i].devotion > 20) || (($slaves[$i].devotion >= -20) && ($slaves[$i].trust < -20)) || (($slaves[$i].devotion >= -50) && ($slaves[$i].trust < -50))>>
-	<<set $slaves[$i].assignment to "rest">>
-	<<set $slaves[$i].assignmentVisible to 1>>
-	<<set $brokenSlaves += 1>>
+		<<set $slaves[$i].assignment to "rest">>
+		<<set $slaves[$i].assignmentVisible to 1>>
+		<<set $brokenSlaves += 1>>
+		<<set $cellblockSlaves-->>
 	<</if>>
 
 <<elseif ($Wardeness != 0) && ($slaves[$i].ID is $Wardeness.ID)>>
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index 8b9dd45c98a6d087291126a6ca026a7964eb97d5..56afcb0ec10ff2aecca6044fdf97f81265708a24 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -1,6 +1,5 @@
 :: Clinic Report [nobr]
 
-''Clinic Report''<hr style="margin:0">
 
 <<set $nurseUsedCure to 0>>
 <<set $restedSlaves to 0>>
@@ -139,7 +138,8 @@
 		<<set $slaves[$i].assignment to "rest">>
 		<<set $slaves[$i].assignmentVisible to 1>>
 		<<set $restedSlaves += 1>>
-		<</if>>
+		<<set $clinicSlaves-->>
+	<</if>>
 	/* end of rewriten slave release check */
 
 <<elseif ($Nurse != 0) && ($slaves[$i].ID is $Nurse.ID)>>
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index 0745aebf8e5e7b78ea5237f0f8f24511c839297a..3681b8785674138d6332377e875a17d13c4679ab 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -1,6 +1,5 @@
 :: Club Report [nobr]
 
-''Club Report''<hr style="margin:0">
 
 <<set $clubSlaves to 0>>
 <<set $legendaryEntertainerID to 0>>
diff --git a/src/uncategorized/dairy.tw b/src/uncategorized/dairy.tw
index 8276f185918674f45b066c9105026196ac959d5e..6c626ef1c1b935de7ac3f3c25a5d86a4cac22210 100644
--- a/src/uncategorized/dairy.tw
+++ b/src/uncategorized/dairy.tw
@@ -61,7 +61,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 	<<if $dairyPregSettingChanged == 1>>
 		<<for _i to 0; _i < $slaves.length; _i++>>
 		<<if ($slaves[_i].assignment is "work in the dairy") && ($slaves[_i].vagina > -1) && ($slaves[_i].vagina < 3)>>
-			<<set $slaves[_i].assignment to "rest", $slaves[_i].assignmentVisible to 1>>
+			<<set $slaves[_i].assignment to "rest", $slaves[_i].assignmentVisible to 1, $dairySlaves-->>
 			$slaves[_i].slaveName's milking machine ejects her, since it cannot fit the mandated dildo into her tight cunt.
 		<</if>>
 		<</for>>
@@ -84,8 +84,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 	<<if $dairyStimulatorsSettingChanged == 1>>
 		<<for _i to 0; _i < $slaves.length; _i++>>
 		<<if ($slaves[_i].assignment is "work in the dairy") && ($slaves[_i].anus < 3)>>
-			<<set $slaves[_i].assignment to "rest">>
-			<<set $slaves[_i].assignmentVisible to 1>>
+			<<set $slaves[_i].assignment to "rest", $slaves[_i].assignmentVisible to 1, $dairySlaves-->>
 			$slaves[_i].slaveName's milking machine ejects her, since it cannot fit its massive anal dildo up her tight asshole.
 		<</if>>
 		<</for>>
@@ -111,8 +110,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 		<<if $dairyRestraintsSetting == 1>>
 			<<for _i to 0; _i < $slaves.length; _i++>>
 			<<if ($slaves[_i].assignment is "work in the dairy") && ($slaves[_i].indentureRestrictions >= 2)>>
-				<<set $slaves[_i].assignment to "rest">>
-				<<set $slaves[_i].assignmentVisible to 1>>
+				<<set $slaves[_i].assignment to "rest", $slaves[_i].assignmentVisible to 1, $dairySlaves-->>
 				$slaves[_i].slaveName's milking machine declines to restrain her, since she is encoded as an indentured servant protected from restraint for milking.
 			<</if>>
 			<</for>>
@@ -125,8 +123,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 		<<if $dairyRestraintsSetting == 1>>
 			<<for _i to 0; _i < $slaves.length; _i++>>
 			<<if ($slaves[_i].assignment is "work in the dairy") && ($slaves[_i].indentureRestrictions >= 1)>>
-				<<set $slaves[_i].assignment to "rest">>
-				<<set $slaves[_i].assignmentVisible to 1>>
+				<<set $slaves[_i].assignment to "rest", $slaves[_i].assignmentVisible to 1, $dairySlaves-->>
 				$slaves[_i].slaveName's milking machine declines to restrain her, since she is encoded as an indentured servant protected from being restrained for milking.
 			<</if>>
 			<</for>>
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index 8385facbcf75ab39b8a1b4a0bbd263ca4e2d9bca..0b1d9ff6539fa82f2d97cd99c0348a0fa13d8cd0 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -1,298 +1,255 @@
 :: Dairy Report [nobr]
 
-''Dairy Report''<hr style="margin:0">
 
-<<set $dairySlaves to 0>>
-<<set $milkWeek to 0>>
-<<set $cumWeek to 0>>
-<<set $femCumWeek to 0>>
-<<set $birthers to 0>>
-<<set $births to 0>>
-<<set $anusesStretched to 0>>
-<<set _vaginasStretched to 0>>
-<<set _intelligenceLost to 0>>
-<<set _skillsLost to 0>>
-<<set _stupidified to 0>>
-<<set _horrified to 0>>
-<<set _hatefilled to 0>>
-<<set _mindbroken to 0>>
-<<set _boobtacular to 0>>
-<<set _balltacular to 0>>
-<<set _chemMinor to 0>>
-<<set _chemSevere to 0>>
-<<set _desterilized to 0>>
-<<set _careerForgotten to 0>>
-<<set $bioreactorPerfectedID to 0>>
-<<set $legendaryCowID to 0>>
-<<set $legendaryBallsID to 0>>
-<<set $milkmaidFetish to 0>>
-<<set $milkmaidHealthBonus to 0>>
-<<set $milkmaidDevotionBonus to 0>>
-<<set $milkmaidTrustBonus to 0>>
-<<set $milkmaidImpregnated to 0>>
-<<set $profits to 0>>
+<<set $bioreactorPerfectedID = 0, $dairySlaves = 0, $legendaryBallsID = 0, $legendaryCowID = 0, $milkmaidDevotionBonus = 0, $milkmaidHealthBonus = 0, $milkmaidTrustBonus = 0>>
+
+<<set _anusesStretched = 0, _birthers = 0, _births = 0, _cumWeek = 0, _femCumWeek = 0, _milkmaidFetish = 0, _milkmaidImpregnated = 0, _milkWeek = 0>>
+
+<<set _balltacular = 0, _boobtacular = 0, _careerForgotten = 0, _chemMinor = 0, _chemSevere = 0, _desterilized = 0, _hatefilled = 0, _horrified = 0, _intelligenceLost = 0, _mindbroken = 0, _profits = 0, _skillsLost = 0, _stupidified = 0, _vaginasStretched = 0, _SL = $slaves.length, _MM = -1>>
 
 <<if ($Milkmaid != 0)>>
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if $slaves[$i].ID is $Milkmaid.ID>>
+<<for _MM = 0; _MM < _SL; _MM++>>
+<<if $slaves[_MM].ID == $Milkmaid.ID>>
+	<<break>>
+<</if>>
+<</for>>
+<</if>>
+
+<<if _MM != -1>>
+	<<set $i = _MM>>
 	<<silently>>
 	<<display "SA long term effects">>
 	<<display "SA relationships">>
 	<<display "SA rivalries">>
 	<</silently>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif ($slaves[$i].health < -40)>>
-	<<set $slaves[$i].health += 15>>
-	<<elseif ($slaves[$i].health < 0)>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif ($slaves[$i].health < 90)>>
-	<<set $slaves[$i].health += 7>>
-	<</if>>
-	<<if $slaves[$i].devotion <= 60>>
-	<<set $slaves[$i].devotion += 5>>
-	<</if>>
-	<<if $slaves[$i].trust < 60>>
-	<<set $slaves[$i].trust += 5>>
-	<</if>>
-	<<if $slaves[$i].relationship is -3>>
-		<<set $milkmaidDevotionBonus += 0.4>>
-	<<set $milkmaidTrustBonus += 0.4>>
-	<</if>>
-	<<if ($slaves[$i].sexualQuirk is "caring")>>
+	<<if ($slaves[_MM].health < -80)>>
+	<<set $slaves[_MM].health += 20>>
+	<<elseif ($slaves[_MM].health < -40)>>
+	<<set $slaves[_MM].health += 15>>
+	<<elseif ($slaves[_MM].health < 0)>>
+	<<set $slaves[_MM].health += 10>>
+	<<elseif ($slaves[_MM].health < 90)>>
+	<<set $slaves[_MM].health += 7>>
+	<</if>>
+	<<if $slaves[_MM].devotion <= 60>>
+	<<set $slaves[_MM].devotion += 5>>
+	<</if>>
+	<<if $slaves[_MM].trust < 60>>
+	<<set $slaves[_MM].trust += 5>>
+	<</if>>
+	<<if $slaves[_MM].relationship is -3>>
+	<<set $milkmaidDevotionBonus += 0.4, $milkmaidTrustBonus += 0.4>>
+	<</if>>
+	<<if ($slaves[_MM].sexualQuirk is "caring")>>
 	<<set $milkmaidTrustBonus += 0.2>>
 	<</if>>
-	<<if ($slaves[$i].behavioralQuirk is "funny")>>
+	<<if ($slaves[_MM].behavioralQuirk is "funny")>>
 	<<set $milkmaidTrustBonus += 0.2>>
 	<</if>>
-	<<if ($slaves[$i].oralSkill > 0)>>
-	<<set $milkmaidDevotionBonus += Math.trunc($slaves[$i].oralSkill/30)>>
+	<<if ($slaves[_MM].oralSkill > 0)>>
+	<<set $milkmaidDevotionBonus += Math.trunc($slaves[_MM].oralSkill/30)>>
 	<</if>>
-	<<if ($slaves[$i].health >= 80)>>
+	<<if ($slaves[_MM].health >= 80)>>
 	<<set $milkmaidHealthBonus += 0.3>>
 	<</if>>
-	<<set $toSearch to $slaves[$i].career>>
+	<<set $toSearch to $slaves[_MM].career>>
 	<<if $milkmaidCareers.contains($toSearch)>>
 	<<set $milkmaidHealthBonus += 0.2>>
 	<</if>>
-	<<if ($slaves[$i].muscles > 1)>>
+	<<if ($slaves[_MM].muscles > 30)>>
 	<<set $milkmaidHealthBonus += 0.2>>
 	<</if>>
-	<<if $slaves[$i].fetishStrength <= 95>>
-	<<if $slaves[$i].fetish != "boobs">>
-		<<fetishChangeChance $slaves[$i]>>
+	<<if $slaves[_MM].fetishStrength <= 95>>
+	<<if $slaves[_MM].fetish != "boobs">>
+		<<fetishChangeChance $slaves[_MM]>>
 		<<if $fetishChangeChance > random(0,100)>>
-			<<set $milkmaidFetish to 1>>
-			<<set $slaves[$i].fetishKnown to 1>>
-			<<set $slaves[$i].fetish to "boobs">>
+			<<set _milkmaidFetish to 1, $slaves[_MM].fetishKnown to 1, $slaves[_MM].fetish to "boobs">>
 		<</if>>
-	<<elseif $slaves[$i].fetishKnown == 0>>
-		<<set $milkmaidFetish to 1>>
-		<<set $slaves[$i].fetishKnown to 1>>
+	<<elseif $slaves[_MM].fetishKnown == 0>>
+		<<set _milkmaidFetish to 1, $slaves[_MM].fetishKnown to 1>>
 	<<else>>
-		<<set $milkmaidFetish to 2>>
-		<<set $slaves[$i].fetishStrength += 4>>
+		<<set _milkmaidFetish to 2, $slaves[_MM].fetishStrength += 4>>
 	<</if>>
 	<</if>>
-	<<break>>
-<</if>>
-<</for>>
+	<<set $Milkmaid = $slaves[_MM]>>
 <</if>>
 
 <<set $oldCash to $cash>>
 
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "work in the dairy")>>
-	<<if $seeImages == 1>><<SlaveArt $slaves[$i] 0 0>><</if>>
-	<<set $dairySlaves += 1>>
-	<<if ($legendaryCowID == 0) && ($slaves[$i].lactation > 0) && (($slaves[$i].boobs-$slaves[$i].boobsImplant) > 6000) && ($slaves[$i].devotion > 50) && ($slaves[$i].prestige == 0)>>
-	<<set $legendaryCowID to $slaves[$i].ID>>
+<<for _i to 0; _i < _SL; _i++>>
+	<<if ($slaves[_i].assignment != "work in the dairy")>><<continue>><</if>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set $dairySlaves++>>
+	<<if ($legendaryCowID == 0) && ($slaves[_i].lactation > 0) && (($slaves[_i].boobs-$slaves[_i].boobsImplant) > 6000) && ($slaves[_i].devotion > 50) && ($slaves[_i].prestige == 0)>>
+	<<set $legendaryCowID to $slaves[_i].ID>>
 	<</if>>
-	<<if ($legendaryBallsID == 0) && ($slaves[$i].balls > 5) && ($slaves[$i].devotion > 50) && ($slaves[$i].prestige == 0)>>
-	<<set $legendaryBallsID to $slaves[$i].ID>>
+	<<if ($legendaryBallsID == 0) && ($slaves[_i].balls > 5) && ($slaves[_i].devotion > 50) && ($slaves[_i].prestige == 0)>>
+	<<set $legendaryBallsID to $slaves[_i].ID>>
 	<</if>>
+	<<set $i = _i>>
 	<<silently>>
-	<<display [[SA get milked]]>>
-	<<set $milkWeek += $milk>>
-	<<set $cumWeek += $cum>>
-	<<if $milkmaidImpregnates == 1>>
-	<<if $Milkmaid != 0>>
-	<<if $Milkmaid.balls > 0>>
-	<<if $Milkmaid.pubertyXY == 1>>
-	<<if canGetPregnant($slaves[$i])>>
-	<<if canBreed($slaves[$i], $Milkmaid)>>
-		<<set $slaves[$i].preg to 1, $slaves[$i].pregSource to $Milkmaid.ID, $milkmaidImpregnated += 1, $slaves[$i].vaginalCount += 10, $vaginalTotal += 10>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
+	<<display "SA get milked">>
+	<<set _milkWeek += $milk, _cumWeek += $cum>>
+	<<if ($milkmaidImpregnates == 1) && ($Milkmaid != 0) && ($Milkmaid.balls > 0) && $Milkmaid.pubertyXY == 1>>
+		<<if (canGetPregnant($slaves[_i])) && (canPenetrate($Milkmaid)) && (canBreed($slaves[_i], $Milkmaid))>>
+			<<set $slaves[_i].preg to 1, $slaves[_i].pregSource to $Milkmaid.ID, _milkmaidImpregnated++, $slaves[_i].vaginalCount += 10, $vaginalTotal += 10>>
+		<</if>>
 	<</if>>
 	<<display "SA long term effects">>
 	<<display "SA relationships">>
 	<<display "SA rivalries">>
 	<</silently>>
-	<<if ($slaves[$i].devotion <= 20)>>
-	<<if ($slaves[$i].trust > -20)>>
-		<<set $slaves[$i].devotion -= 5>>
-		<<set $slaves[$i].trust -= 5>>
-	<</if>>
-	<</if>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif ($slaves[$i].health < -40)>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif ($slaves[$i].health < 0)>>
-	<<set $slaves[$i].health += 7>>
-	<<elseif ($slaves[$i].health < 90)>>
-	<<set $slaves[$i].health += 3>>
-	<</if>>
-	<<if ($slaves[$i].inflation > 0)>>
-		<<set $slaves[$i].inflation = 0>>
-		<<set $slaves[$i].inflationType = 0>>
-		<<set $slaves[$i].inflationMethod = 0>>
-		<<set $slaves[$i].milkSource = 0>>
-	<</if>>
-	<<if ($slaves[$i].lactation > 0)>>
-		<<if ($dairySlimMaintain == 0) || ($slaves[$i].boobs > 700)>>
-			<<if ($slaves[$i].boobs < 2000)>>
-				<<set $slaves[$i].boobs += 100>>
-			<<elseif ($slaves[$i].boobs < 5000)>>
-				<<set $slaves[$i].boobs += 50>>
-			<<elseif ($slaves[$i].boobs < 10000)>>
-				<<set $slaves[$i].boobs += 25>>
+	<<if ($slaves[_i].devotion <= 20) && ($slaves[_i].trust > -20)>>
+		<<set $slaves[_i].devotion -= 5, $slaves[_i].trust -= 5>>
+	<</if>>
+	<<if ($slaves[_i].health < -80)>>
+	<<set $slaves[_i].health += 20>>
+	<<elseif ($slaves[_i].health < -40)>>
+	<<set $slaves[_i].health += 10>>
+	<<elseif ($slaves[_i].health < 0)>>
+	<<set $slaves[_i].health += 7>>
+	<<elseif ($slaves[_i].health < 90)>>
+	<<set $slaves[_i].health += 3>>
+	<</if>>
+	<<if ($slaves[_i].inflation > 0)>>
+		<<set $slaves[_i].inflation = 0>>
+		<<set $slaves[_i].inflationType = 0>>
+		<<set $slaves[_i].inflationMethod = 0>>
+		<<set $slaves[_i].milkSource = 0>>
+	<</if>>
+	<<if ($slaves[_i].lactation > 0)>>
+		<<if ($dairySlimMaintain == 0) || ($slaves[_i].boobs > 700)>>
+			<<if ($slaves[_i].boobs < 2000)>>
+				<<set $slaves[_i].boobs += 100>>
+			<<elseif ($slaves[_i].boobs < 5000)>>
+				<<set $slaves[_i].boobs += 50>>
+			<<elseif ($slaves[_i].boobs < 10000)>>
+				<<set $slaves[_i].boobs += 25>>
 			<</if>>
 		<</if>>
 	<</if>>
-	<<if ($dairySlimMaintain == 0) && ($slaves[$i].weight <= 30)>>
-		<<set $slaves[$i].diet to "fattening">>
-	<<elseif ($slaves[$i].diet is "fattening") || ($dairyRestraintsSetting > 1)>>
-		<<set $slaves[$i].diet to "healthy">>
-	<<elseif ($slaves[$i].balls >0) && $cumProDiet == 1>>
-		<<set $slaves[$i].diet to "cum production">>
+	<<if ($dairySlimMaintain == 0) && ($slaves[_i].weight <= 30)>>
+		<<set $slaves[_i].diet to "fattening">>
+	<<elseif ($slaves[_i].diet is "fattening") || ($dairyRestraintsSetting > 1)>>
+		<<set $slaves[_i].diet to "healthy">>
+	<<elseif ($slaves[_i].balls >0) && $cumProDiet == 1>>
+		<<set $slaves[_i].diet to "cum production">>
 	<</if>>
 	<<silently>><<display "SA diet">><</silently>>
-	<<if ($dairyFeedersUpgrade == 1)>>
-	<<if ($dairyFeedersSetting > 0)>>
+	<<if ($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0)>>
 		<<if ($dairySlimMaintain == 0)>>
-			<<if ($slaves[$i].balls == 0)>>
-				<<set $slaves[$i].hormones to 2>>
+			<<if ($slaves[_i].balls == 0)>>
+				<<set $slaves[_i].hormones to 2>>
 			<</if>>
-			<<if ($slaves[$i].lactation < 2)>>
-				<<set $slaves[$i].lactation to 2>>
+			<<if ($slaves[_i].lactation < 2)>>
+				<<set $slaves[_i].lactation to 2>>
 			<</if>>
 		<</if>>
-		<<if ($slaves[$i].health < 75)>>
-			<<set $slaves[$i].health += 25>>
+		<<if ($slaves[_i].health < 75)>>
+			<<set $slaves[_i].health += 25>>
 		<<else>>
 			<<if ($dairySlimMaintain == 0)>>
-				<<if ($slaves[$i].boobs < 25000)>>
+				<<if ($slaves[_i].boobs < 25000)>>
 					<<if $arcologies[0].FSAssetExpansionistResearch == 1>>
-						<<if ($slaves[$i].boobs < 2000)>>
-							<<set $slaves[$i].boobs += 500>>
-						<<elseif ($slaves[$i].boobs < 5000)>>
-							<<set $slaves[$i].boobs += 250>>
+						<<if ($slaves[_i].boobs < 2000)>>
+							<<set $slaves[_i].boobs += 500>>
+						<<elseif ($slaves[_i].boobs < 5000)>>
+							<<set $slaves[_i].boobs += 250>>
 						<<else>>
-							<<set $slaves[$i].boobs += 100>>
+							<<set $slaves[_i].boobs += 100>>
 						<</if>>
 					<<else>>
-						<<set $slaves[$i].boobs += 25*Math.trunc(($injectionUpgrade*2)+$dairyFeedersSetting+$dairyRestraintsSetting+((50-$slaves[$i].physicalAge)/4))>>
-					<</if>>					<<if ($slaves[$i].boobs < 15100)>>
-					<<if ($slaves[$i].boobs > 14900)>>
-						<<set _boobtacular += 1>>
+						<<set $slaves[_i].boobs += 25*Math.trunc(($injectionUpgrade*2)+$dairyFeedersSetting+$dairyRestraintsSetting+((50-$slaves[_i].physicalAge)/4))>>
 					<</if>>
+					<<if ($slaves[_i].boobs > 14900) && ($slaves[_i].boobs < 15100)>>
+						<<set _boobtacular += 1>>
 					<</if>>
 				<<else>>
-					<<set $slaves[$i].boobs to 25000>>
+					<<set $slaves[_i].boobs to 25000>>
 				<</if>>
 			<</if>>
-			<<if ($slaves[$i].balls > 0)>>
+			<<if ($slaves[_i].balls > 0)>>
 				<<if $arcologies[0].FSAssetExpansionistResearch == 1>>
-					<<if ($slaves[$i].balls < 125)>>
-						<<set $slaves[$i].balls += 1>>
+					<<if ($slaves[_i].balls < 125)>>
+						<<set $slaves[$_i].balls += 1>>
 					<</if>>
-					<<if ($slaves[$i].balls == 125)>>
+					<<if ($slaves[_i].balls == 125)>>
 						<<set _balltacular += 1>>
 					<</if>>
-				<<elseif ($slaves[$i].balls < 6)>>
-					<<if (random(1,100) > (40+(10*$slaves[$i].dick)-(10*$dairyRestraintsSetting)-($injectionUpgrade*10)))>>
-					<<set $slaves[$i].balls += 1>>
+				<<elseif ($slaves[_i].balls < 6)>>
+					<<if (random(1,100) > (40+(10*$slaves[_i].dick)-(10*$dairyRestraintsSetting)-($injectionUpgrade*10)))>>
+					<<set $slaves[_i].balls += 1>>
 					<</if>>
-					<<if ($slaves[$i].balls is 6)>>
+					<<if ($slaves[_i].balls is 6)>>
 					<<set _balltacular += 1>>
 					<</if>>
 				<</if>>
-				<<if ($slaves[$i].dick < 10)>>
-					<<if (random(1,100) > (40+(10*$slaves[$i].dick)-(10*$dairyRestraintsSetting)-($injectionUpgrade*10)))>>
-					<<set $slaves[$i].dick += 1>>
+				<<if ($slaves[_i].dick < 10)>>
+					<<if (random(1,100) > (40+(10*$slaves[_i].dick)-(10*$dairyRestraintsSetting)-($injectionUpgrade*10)))>>
+					<<set $slaves[_i].dick += 1>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<</if>>
 	<</if>>
-	<</if>>
 	<<if ($dairyStimulatorsUpgrade == 1)>>
-	<<if ($dairyStimulatorsSetting > 0)>>
-	<<if ($dairyStimulatorsSetting > 1) && ($slaves[$i].anus < 4)>>
-		<<set $slaves[$i].anus += 1>>
-		<<if ($slaves[$i].anus is 4)>>
-		<<set _anusesStretched += 1>>
-		<</if>>
-	<<elseif ($slaves[$i].anus < 3)>>
-		<<set $slaves[$i].anus += 1>>
-	<</if>>
-	<<if ($slaves[$i].health < 60)>>
-		<<set $slaves[$i].health += 20>>
-	<<elseif $dairySlimMaintain == 0>>
-		<<if ($slaves[$i].boobs < 25000)>>
-		<<if $arcologies[0].FSAssetExpansionistResearch == 1>>
-			<<if ($slaves[$i].boobs < 2000)>>
-			<<set $slaves[$i].boobs += 500>>
-			<<elseif ($slaves[$i].boobs < 5000)>>
-			<<set $slaves[$i].boobs += 250>>
+		<<if ($dairyStimulatorsSetting > 1) && ($slaves[_i].anus < 4)>>
+			<<set $slaves[_i].anus += 1>>
+			<<if ($slaves[_i].anus is 4)>>
+			<<set _anusesStretched += 1>>
+			<</if>>
+		<<elseif ($slaves[_i].anus < 3)>>
+			<<set $slaves[_i].anus += 1>>
+		<</if>>
+		<<if ($slaves[_i].health < 60)>>
+			<<set $slaves[_i].health += 20>>
+		<<elseif $dairySlimMaintain == 0>>
+			<<if ($slaves[_i].boobs < 25000)>>
+			<<if $arcologies[0].FSAssetExpansionistResearch == 1>>
+				<<if ($slaves[_i].boobs < 2000)>>
+				<<set $slaves[_i].boobs += 500>>
+				<<elseif ($slaves[_i].boobs < 5000)>>
+				<<set $slaves[_i].boobs += 250>>
+				<<else>>
+				<<set $slaves[_i].boobs += 100>>
+				<</if>>
 			<<else>>
-			<<set $slaves[$i].boobs += 100>>
+				<<set $slaves[_i].boobs += 25*Math.trunc(($injectionUpgrade*2)+$dairyStimulatorsSetting+$dairyRestraintsSetting+((50-$slaves[_i].physicalAge)/4))>>
+			<</if>>
+				<<if ($slaves[_i].boobs > 14900) && ($slaves[_i].boobs < 15100)>>
+				<<set _boobtacular += 1>>
+				<</if>>
+			<<else>>
+				<<set $slaves[_i].boobs to 25000>>
 			<</if>>
-		<<else>>
-			<<set $slaves[$i].boobs += 25*Math.trunc(($injectionUpgrade*2)+$dairyStimulatorsSetting+$dairyRestraintsSetting+((50-$slaves[$i].physicalAge)/4))>>
-		<</if>>
-		<<if ($slaves[$i].boobs < 15100)>>
-		<<if ($slaves[$i].boobs > 14900)>>
-			<<set _boobtacular += 1>>
-		<</if>>
-		<</if>>
-		<<else>>
-		<<set $slaves[$i].boobs to 25000>>
 		<</if>>
 	<</if>>
-	<</if>>
-	<</if>>
 	<<if ($dairyRestraintsSetting > 1)>>
-		<<set $slaves[$i].lactationAdaptation += 1>>
-		<<if ($slaves[$i].fetish is "mindbroken")>>
-			<<if ($slaves[$i].boobs > 24800)>>
-			<<if (($slaves[$i].balls > 5) || ($slaves[$i].balls == 0))>>
-			<<set $bioreactorPerfectedID to $slaves[$i].ID>>
+		<<set $slaves[_i].lactationAdaptation += 1>>
+		<<if ($slaves[_i].fetish is "mindbroken")>>
+			<<if ($slaves[_i].boobs > 24800)>>
+			<<if (($slaves[_i].balls > 5) || ($slaves[_i].balls == 0))>>
+			<<set $bioreactorPerfectedID to $slaves[_i].ID>>
 			<</if>>
 			<</if>>
 		<<else>>
-			<<if ($slaves[$i].sexualFlaw != "self hating")>>
-			<<if ($slaves[$i].sexualFlaw != "cum addict") || ($dairyFeedersSetting == 0)>>
-			<<if ($slaves[$i].sexualFlaw != "anal addict") || ($dairyStimulatorsSetting == 0)>>
-			<<if ($slaves[$i].sexualFlaw != "breeder") || ($slaves[$i].preg < 0) || ($dairyPregSetting == 0)>>
+			<<if ($slaves[_i].sexualFlaw != "self hating")>>
+			<<if ($slaves[_i].sexualFlaw != "cum addict") || ($dairyFeedersSetting == 0)>>
+			<<if ($slaves[_i].sexualFlaw != "anal addict") || ($dairyStimulatorsSetting == 0)>>
+			<<if ($slaves[_i].sexualFlaw != "breeder") || ($slaves[_i].preg < 0) || ($dairyPregSetting == 0)>>
 				<<if $dairyStimulatorsSetting > 1>>
-					<<if ($slaves[$i].sexualFlaw != "hates anal") && ($slaves[$i].sexualQuirk != "painal queen")>>
-					<<set $slaves[$i].sexualFlaw to "hates anal">>
+					<<if ($slaves[_i].sexualFlaw != "hates anal") && ($slaves[_i].sexualQuirk != "painal queen")>>
+					<<set $slaves[_i].sexualFlaw to "hates anal">>
 					<</if>>
 				<</if>>
 				<<if $dairyPregSetting > 1>>
-					<<if ($slaves[$i].sexualFlaw != "hates penetration") && ($slaves[$i].sexualQuirk != "strugglefuck queen")>>
-					<<set $slaves[$i].sexualFlaw to "hates penetration">>
+					<<if ($slaves[_i].sexualFlaw != "hates penetration") && ($slaves[_i].sexualQuirk != "strugglefuck queen")>>
+					<<set $slaves[_i].sexualFlaw to "hates penetration">>
 					<</if>>
 				<</if>>
 				<<if $dairyFeedersSetting > 1>>
-					<<if ($slaves[$i].sexualFlaw != "hates oral") && ($slaves[$i].sexualQuirk != "gagfuck queen")>>
-					<<set $slaves[$i].sexualFlaw to "hates oral">>
+					<<if ($slaves[_i].sexualFlaw != "hates oral") && ($slaves[_i].sexualQuirk != "gagfuck queen")>>
+					<<set $slaves[_i].sexualFlaw to "hates oral">>
 					<</if>>
 				<</if>>
 			<</if>>
@@ -300,192 +257,163 @@
 			<</if>>
 			<</if>>
 		<</if>>
-		<<if $slaves[$i].chem > 250>>
+		<<if $slaves[_i].chem > 250>>
 			<<set _chemSevere += 1>>
-		<<elseif $slaves[$i].chem > 100>>
+		<<elseif $slaves[_i].chem > 100>>
 			<<set _chemMinor += 1>>
 		<</if>>
 	<</if>>
 	<<if ($dairyStimulatorsSetting + $dairyFeedersSetting + $dairyPregSetting) > 5>>
-		<<if $slaves[$i].devotion <= 95>>
-		<<if $slaves[$i].sexualFlaw != "self hating">>
-		<<if ($slaves[$i].sexualFlaw != "breeder") || ($slaves[$i].preg < 0)>>
-			<<if ($slaves[$i].devotion > -75)>>
-			<<set $slaves[$i].devotion -= 10>>
-			<<if ($slaves[$i].devotion < -65)>>
+		<<if $slaves[_i].devotion <= 95>>
+		<<if $slaves[_i].sexualFlaw != "self hating">>
+		<<if ($slaves[_i].sexualFlaw != "breeder") || ($slaves[_i].preg < 0)>>
+			<<if ($slaves[_i].devotion > -75)>>
+			<<set $slaves[_i].devotion -= 10>>
+			<<if ($slaves[_i].devotion < -65)>>
 				<<set _hatefilled += 1>>
 			<</if>>
-			<<elseif ($slaves[$i].trust > -75)>>
-			<<set $slaves[$i].trust -= 10>>
-			<<if ($slaves[$i].trust < -65)>>
+			<<elseif ($slaves[_i].trust > -75)>>
+			<<set $slaves[_i].trust -= 10>>
+			<<if ($slaves[_i].trust < -65)>>
 				<<set _horrified += 1>>
 			<</if>>
-			<<elseif ($slaves[$i].vaginalSkill > 0)>>
-			<<set $slaves[$i].vaginalSkill -= 10>>
-			<<set _skillsLost += 1>>
-			<<elseif ($slaves[$i].oralSkill > 0)>>
-			<<set $slaves[$i].oralSkill -= 10>>
-			<<set _skillsLost += 1>>
-			<<elseif ($slaves[$i].analSkill > 0)>>
-			<<set $slaves[$i].analSkill -= 10>>
-			<<set _skillsLost += 1>>
-			<<elseif ($slaves[$i].career != "a bioreactor")>>
-			<<set $slaves[$i].career to "a bioreactor">>
-			<<set _careerForgotten += 1>>
-			<<elseif ($slaves[$i].intelligence > -1)>>
-			<<set $slaves[$i].intelligence -= 1>>
-			<<set _intelligenceLost += 1>>
-			<<elseif ($slaves[$i].devotion >= -20)>>
-			<<set $slaves[$i].devotion -= 10>>
-			<<elseif ($slaves[$i].trust > -20)>>
-			<<set $slaves[$i].trust -= 10>>
-			<<elseif ($slaves[$i].whoreSkill > 0)>>
-			<<set $slaves[$i].whoreSkill -= 10>>
-			<<set _skillsLost += 1>>
-			<<elseif ($slaves[$i].entertainSkill > 0)>>
-			<<set $slaves[$i].entertainSkill -= 10>>
-			<<set _skillsLost += 1>>
-			<<elseif ($slaves[$i].intelligence > -2)>>
-			<<set $slaves[$i].intelligence -= 1>>
-			<<set _stupidified += 1>>
-			<<elseif ($slaves[$i].fetish != "mindbroken")>>
-			<<set $slaves[$i].fetish to "mindbroken">>
-			<<set _mindbroken += 1>>
+			<<elseif ($slaves[_i].vaginalSkill > 0)>>
+			<<set $slaves[_i].vaginalSkill -= 10, _skillsLost += 1>>
+			<<elseif ($slaves[_i].oralSkill > 0)>>
+			<<set $slaves[_i].oralSkill -= 10, _skillsLost += 1>>
+			<<elseif ($slaves[_i].analSkill > 0)>>
+			<<set $slaves[_i].analSkill -= 10, _skillsLost += 1>>
+			<<elseif ($slaves[_i].career != "a bioreactor")>>
+			<<set $slaves[_i].career to "a bioreactor", _careerForgotten += 1>>
+			<<elseif ($slaves[_i].intelligence > -1)>>
+			<<set $slaves[_i].intelligence -= 1, _intelligenceLost += 1>>
+			<<elseif ($slaves[_i].devotion >= -20)>>
+			<<set $slaves[_i].devotion -= 10>>
+			<<elseif ($slaves[_i].trust > -20)>>
+			<<set $slaves[_i].trust -= 10>>
+			<<elseif ($slaves[_i].whoreSkill > 0)>>
+			<<set $slaves[_i].whoreSkill -= 10, _skillsLost += 1>>
+			<<elseif ($slaves[_i].entertainSkill > 0)>>
+			<<set $slaves[_i].entertainSkill -= 10, _skillsLost += 1>>
+			<<elseif ($slaves[_i].intelligence > -2)>>
+			<<set $slaves[_i].intelligence -= 1, _stupidified += 1>>
+			<<elseif ($slaves[_i].fetish != "mindbroken")>>
+			<<set $slaves[_i].fetish to "mindbroken", _mindbroken += 1>>
 			<</if>>
 		<</if>>
 		<</if>>
 		<</if>>
-		<<if $slaves[$i].milk > 1000>>
-			<<if ($slaves[$i].boobs > 12000)>>
-			<<if ($slaves[$i].career != "a bioreactor")>>
-			<<set $slaves[$i].career to "a bioreactor">>
-			<<set _careerForgotten += 1>>
-			<</if>>
+		<<if $slaves[_i].milk > 1000>>
+			<<if ($slaves[_i].boobs > 12000) && ($slaves[_i].career != "a bioreactor")>>
+				<<set $slaves[_i].career to "a bioreactor", _careerForgotten += 1>>
 			<</if>>
 		<</if>>
 		<<if ($arcologies[0].FSBodyPuristLaw == 0) && ($healthyDrugsUpgrade == 0)>>
-			<<set $slaves[$i].chem += 5>>
+			<<set $slaves[_i].chem += 5>>
 		<<else>>
-			<<set $slaves[$i].chem += 2>>
+			<<set $slaves[_i].chem += 2>>
 		<</if>>
 	<<elseif ($dairyStimulatorsSetting + $dairyFeedersSetting + $dairyPregSetting) > 3>>
-	<<if ($slaves[$i].devotion < 75)>>
-		<<if ($slaves[$i].devotion > -75)>>
-		<<set $slaves[$i].devotion -= 5>>
-		<<if ($slaves[$i].devotion < -70)>>
+	<<if ($slaves[_i].devotion < 75)>>
+		<<if ($slaves[_i].devotion > -75)>>
+		<<set $slaves[_i].devotion -= 5>>
+		<<if ($slaves[_i].devotion < -70)>>
 			<<set _hatefilled += 1>>
 		<</if>>
-		<<elseif ($slaves[$i].trust > -75)>>
-		<<set $slaves[$i].trust -= 5>>
-		<<if ($slaves[$i].trust < -70)>>
+		<<elseif ($slaves[_i].trust > -75)>>
+		<<set $slaves[_i].trust -= 5>>
+		<<if ($slaves[_i].trust < -70)>>
 			<<set _horrified += 1>>
 		<</if>>
-		<<elseif ($slaves[$i].vaginalSkill >= 20)>>
-		<<set $slaves[$i].vaginalSkill -= 10>>
-		<<set _skillsLost += 1>>
-		<<elseif ($slaves[$i].oralSkill >= 20)>>
-		<<set $slaves[$i].oralSkill -= 10>>
-		<<set _skillsLost += 1>>
-		<<elseif ($slaves[$i].analSkill >= 20)>>
-		<<set $slaves[$i].analSkill -= 10>>
-		<<set _skillsLost += 1>>
-		<<elseif ($slaves[$i].career != "a bioreactor")>>
-		<<set $slaves[$i].career to "a bioreactor">>
-		<<set _careerForgotten += 1>>
-		<<elseif ($slaves[$i].intelligence > -1)>>
-		<<set $slaves[$i].intelligence -= 1>>
-		<<set _intelligenceLost += 1>>
-		<<elseif ($slaves[$i].devotion >= -20)>>
-		<<set $slaves[$i].devotion -= 8>>
-		<<elseif ($slaves[$i].trust > -20)>>
-		<<set $slaves[$i].trust -= 8>>
-		<<elseif ($slaves[$i].whoreSkill >= 20)>>
-		<<set $slaves[$i].whoreSkill -= 10>>
-		<<set _skillsLost += 1>>
-		<<elseif ($slaves[$i].entertainSkill >= 20)>>
-		<<set $slaves[$i].entertainSkill -= 10>>
-		<<set _skillsLost += 1>>
-		<<elseif ($slaves[$i].intelligence > -2)>>
-		<<set $slaves[$i].intelligence -= 1>>
-		<<set _stupidified += 1>>
-		<<elseif ($slaves[$i].fetish != "mindbroken")>>
-		<<set $slaves[$i].fetish to "mindbroken">>
-		<<set _mindbroken += 1>>
-		<</if>>
-	<<elseif $slaves[$i].milk > 1000>>
-		<<if ($slaves[$i].boobs > 12000)>>
-		<<if ($slaves[$i].career != "a bioreactor")>>
-		<<set $slaves[$i].career to "a bioreactor">>
-		<<set _careerForgotten += 1>>
-		<</if>>
+		<<elseif ($slaves[_i].vaginalSkill >= 20)>>
+		<<set $slaves[_i].vaginalSkill -= 10, _skillsLost += 1>>
+		<<elseif ($slaves[_i].oralSkill >= 20)>>
+		<<set $slaves[_i].oralSkill -= 10, _skillsLost += 1>>
+		<<elseif ($slaves[_i].analSkill >= 20)>>
+		<<set $slaves[_i].analSkill -= 10, _skillsLost += 1>>
+		<<elseif ($slaves[_i].career != "a bioreactor")>>
+		<<set $slaves[_i].career to "a bioreactor", _careerForgotten += 1>>
+		<<elseif ($slaves[_i].intelligence > -1)>>
+		<<set $slaves[_i].intelligence -= 1, _intelligenceLost += 1>>
+		<<elseif ($slaves[_i].devotion >= -20)>>
+		<<set $slaves[_i].devotion -= 8>>
+		<<elseif ($slaves[_i].trust > -20)>>
+		<<set $slaves[_i].trust -= 8>>
+		<<elseif ($slaves[_i].whoreSkill >= 20)>>
+		<<set $slaves[_i].whoreSkill -= 10, _skillsLost += 1>>
+		<<elseif ($slaves[_i].entertainSkill >= 20)>>
+		<<set $slaves[_i].entertainSkill -= 10, _skillsLost += 1>>
+		<<elseif ($slaves[_i].intelligence > -2)>>
+		<<set $slaves[_i].intelligence -= 1, _stupidified += 1>>
+		<<elseif ($slaves[_i].fetish != "mindbroken")>>
+		<<set $slaves[_i].fetish to "mindbroken", _mindbroken += 1>>
+		<</if>>
+	<<elseif $slaves[_i].milk > 1000>>
+		<<if ($slaves[_i].boobs > 12000) && ($slaves[_i].career != "a bioreactor")>>
+			<<set $slaves[_i].career to "a bioreactor", _careerForgotten += 1>>
 		<</if>>
 	<</if>>
 	<<if ($arcologies[0].FSBodyPuristLaw == 0) && ($healthyDrugsUpgrade == 0)>>
-		<<set $slaves[$i].chem += 2>>
+		<<set $slaves[_i].chem += 2>>
 	<<else>>
-		<<set $slaves[$i].chem += 1>>
+		<<set $slaves[_i].chem += 1>>
 	<</if>>
 	<</if>>
-	<<if ($dairyPregUpgrade == 1)>>
-	<<if ($dairyPregSetting > 0)>>
-	<<if ($slaves[$i].ovaries == 1)>>
-	<<if ($slaves[$i].vagina > -1)>>
-		<<set $femCumWeek += Math.trunc((70-$slaves[$i].physicalAge)/(30-($slaves[$i].vaginaLube*10)))>>
-		<<if ($slaves[$i].preg is -2)>>
-		<<set $slaves[$i].preg to 0>>
-		<<set _desterilized += 1>>
-		<</if>>
-		<<if isFertile($slaves[$i])>>
-			<<if $slaves[$i].eggType == "human">>
-			<<set $slaves[$i].preg to 1>>
+	<<if ($dairyPregUpgrade == 1) && ($dairyPregSetting > 0)>>
+		<<if ($slaves[_i].ovaries == 1) && ($slaves[_i].vagina > -1)>>
+			<<set _femCumWeek += Math.trunc((70-$slaves[_i].physicalAge)/(30-($slaves[_i].vaginaLube*10)))>>
+			<<if ($slaves[_i].preg is -2)>>
+			<<set $slaves[_i].preg to 0, _desterilized += 1>>
+			<</if>>
+			<<if isFertile($slaves[_i])>>
+				<<if $slaves[_i].eggType == "human">>
+				<<set $slaves[_i].preg to 1>>
+				<<if ($dairyPregSetting > 2)>>
+				<<set $slaves[_i].pregType to random(10,29)>>
+				<<elseif ($dairyPregSetting > 1)>>
+				<<set $slaves[_i].pregType to random(3,5)>>
+				<<else>>
+				<<set $slaves[_i].pregType to either(1, 1, 1, 1, 2, 2, 2, 3, 3, 4)>>
+				<</if>>
+				<<set $slaves[_i].pregSource to -2>>
+				<</if>>
+				<<if ($slaves[_i].vagina == 0)>>
+				<<set $slaves[_i].vagina to 1>>
+				<</if>>
+			<</if>>
+			<<if ($slaves[_i].preg > 0)>>
 			<<if ($dairyPregSetting > 2)>>
-			<<set $slaves[$i].pregType to random(10,29)>>
+				<<set $cash += 100>>
 			<<elseif ($dairyPregSetting > 1)>>
-			<<set $slaves[$i].pregType to random(3,5)>>
+				<<set $cash += 50>>
 			<<else>>
-			<<set $slaves[$i].pregType to either(1, 1, 1, 1, 2, 2, 2, 3, 3, 4)>>
+				<<set $cash += 25>>
 			<</if>>
-			<<set $slaves[$i].pregSource to -2>>
-			<</if>>
-			<<if ($slaves[$i].vagina == 0)>>
-			<<set $slaves[$i].vagina to 1>>
+			<<if ($dairyPregSetting > 1) && ($slaves[_i].vagina < 4)>>
+				<<set $slaves[_i].vagina += 1>>
+				<<if ($slaves[_i].vagina is 4)>>
+				<<set _vaginasStretched += 1>>
+				<</if>>
+			<<elseif ($slaves[_i].vagina < 3)>>
+				<<set $slaves[_i].vagina += 1>>
 			<</if>>
-		<</if>>
-		<<if ($slaves[$i].preg > 0)>>
-		<<if ($dairyPregSetting > 2)>>
-			<<set $cash += 100>>
-		<<elseif ($dairyPregSetting > 1)>>
-			<<set $cash += 50>>
-		<<else>>
-			<<set $cash += 25>>
-		<</if>>
-		<<if ($dairyPregSetting > 1) && ($slaves[$i].vagina < 4)>>
-			<<set $slaves[$i].vagina += 1>>
-			<<if ($slaves[$i].vagina is 4)>>
-			<<set _vaginasStretched += 1>>
 			<</if>>
-		<<elseif ($slaves[$i].vagina < 3)>>
-			<<set $slaves[$i].vagina += 1>>
-		<</if>>
 		<</if>>
 	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<</if>>
 <</for>>
 
 <<if $inflatedSlavesMilk > 0>>
 	<<set $milkWeek -= ((8*$inflatedSlavesMilk*10)+8)>>
 <</if>>
 <<if $inflatedSlavesCum > 0>>
-	<<set $cumWeek -= ((80*$inflatedSlavesCum*10)+80)>>
-	<<if $cumWeek < 0>>
-		<<set $cumWeek = 0>>
+	<<set _cumWeek -= ((80*$inflatedSlavesCum*10)+80)>>
+	<<if _cumWeek < 0>>
+		<<set _cumWeek = 0>>
 	<</if>>
 <</if>>
 
-<<if ($dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren > 0)>>
+<<set _Tadd = ($bioreactorsXY + $bioreactorsXX + $bioreactorsHerm + $bioreactorsBarren)>>
+<<if ($dairySlaves + _Tadd > 0)>>
 
 	<<if $seeImages == 1>><br style="clear:both" /><</if>>
 	<<if ($dairySlaves == 1)>>''There is 1 cow in $dairyName.''<<else>>''There are $dairySlaves cows in $dairyName.''<</if>>
@@ -493,34 +421,31 @@
 	<<if ($dairyRestraintsSetting > 1)>>
 	It functions as an industrial slave products factory.
 	<</if>>
-	<<if ($bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren > 0)>>
-	<<print $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>> milking machines have permanent biological components, making a total of <<print $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren+$dairySlaves>> milk-producing bodies.
-	<<set $seed to (3*$bioreactorsXY) + (3*$bioreactorsHerm)>>
-	<<set $cumWeek += $seed>>
+	<<if (_Tadd > 0)>>
+	_Tadd milking machines have permanent biological components, making a total of <<print _Tadd + $dairySlaves>> milk-producing bodies.
+	<<set _seed to (3*$bioreactorsXY) + (3*$bioreactorsHerm), _cumWeek += _seed>>
 	<<if ($arcologies[0].FSPastoralistLaw == 1)>>
-		<<set $cash += $seed*random(40,50)>>
+		<<set $cash += _seed*random(40,50)>>
 	<<elseif ($arcologies[0].FSPastoralist != "unset")>>
-		<<set $cash += $seed*(random(25,35)+Math.trunc($arcologies[0].FSPastoralist/10))>>
+		<<set $cash += _seed*(random(25,35)+Math.trunc($arcologies[0].FSPastoralist/10))>>
 	<<else>>
-		<<set $cash += $seed*random(25,35)>>
+		<<set $cash += _seed*random(25,35)>>
 	<</if>>
-	<<set $seed to ($bioreactorsXX) + ($bioreactorsHerm)>>
-	<<set $femCumWeek += $seed>>
+	<<set _seed to ($bioreactorsXX) + ($bioreactorsHerm), _femCumWeek += _seed>>
 	<<if ($arcologies[0].FSPastoralistLaw == 1)>>
-		<<set $cash += $seed*random(40,50)>>
+		<<set $cash += _seed*random(40,50)>>
 	<<elseif ($arcologies[0].FSPastoralist != "unset")>>
-		<<set $cash += $seed*(random(25,35)+Math.trunc($arcologies[0].FSPastoralist/10))>>
+		<<set $cash += _seed*(random(25,35)+Math.trunc($arcologies[0].FSPastoralist/10))>>
 	<<else>>
-		<<set $cash += $seed*random(25,35)>>
+		<<set $cash += _seed*random(25,35)>>
 	<</if>>
-	<<set $seed to (300*$bioreactorsXX) + (250*$bioreactorsBarren) + (200*$bioreactorsXY) + (200*$bioreactorsHerm)>>
-	<<set $milkWeek += $seed>>
+	<<set _seed to (300*$bioreactorsXX) + (250*$bioreactorsBarren) + (200*$bioreactorsXY) + (200*$bioreactorsHerm), _milkWeek += _seed>>
 	<<if ($arcologies[0].FSPastoralistLaw == 1)>>
-		<<set $cash += $seed*(13+Math.trunc($arcologies[0].FSPastoralist/30))>>
+		<<set $cash += _seed*(13+Math.trunc($arcologies[0].FSPastoralist/30))>>
 	<<elseif ($arcologies[0].FSPastoralist != "unset")>>
-		<<set $cash += $seed*(8+Math.trunc($arcologies[0].FSPastoralist/30))>>
+		<<set $cash += _seed*(8+Math.trunc($arcologies[0].FSPastoralist/30))>>
 	<<else>>
-		<<set $cash += $seed*9>>
+		<<set $cash += _seed*9>>
 	<</if>>
 	<</if>>
 
@@ -531,31 +456,25 @@
 	<<set $cash -= Math.trunc(((300*($inflatedSlavesCum+8))+random(25,100)))>>
 <</if>>
 
-	<<set $profits to $cash-$oldCash>>
+	<<set _profits to $cash-$oldCash>>
 
 	<<if ($Milkmaid != 0)>>
-	$Milkmaid.slaveName is serving as your milkmaid.<<if $Milkmaid.relationship is -3>>  She tries her best to be your perfect farmwife.<</if>>
-	<<if $milkmaidImpregnated > 0>>
-		It's her responsibility to keep her charges pregnant, and
-		<<if $milkmaidImpregnated == 1>>
-			she constantly breeds the one fertile cow.
+	$Milkmaid.slaveName is serving as your milkmaid<<if $Milkmaid.relationship is -3>> She tries her best to be your perfect farmwife<</if>>.
+	<<if _milkmaidImpregnated > 0>>
+		It's her responsibility to keep her charges pregnant, and she constantly
+		<<if _milkmaidImpregnated == 1>>
+			breeds the one fertile cow.
 		<<else>>
-			she constantly fills the $milkmaidImpregnated cows' cunts with her cum.
-		<</if>>
-		<<for $i to 0; $i < $slaves.length; $i++>>
-		<<if $slaves[$i].ID is $Milkmaid.ID>>
-			<<set $slaves[$i].penetrativeCount += $milkmaidImpregnated>>
-			<<set $penetrativeTotal += $milkmaidImpregnated>>
-			<<break>>
+			fills the _milkmaidImpregnated cows' cunts with her cum.
 		<</if>>
-		<</for>>
+		<<set Tmult = (_milkmaidImpregnated * 10), $slaves[_MM].penetrativeCount += Tmult, $Milkmaid.penetrativeCount += Tmult, $penetrativeTotal += Tmult>>
 	<</if>>
-	<<if ($milkmaidFetish == 1)>>
+	<<if (_milkmaidFetish == 1)>>
 		In her line of work, she touches more breasts than even you do. She lives in an atmosphere of quivering, heaving, milky breastflesh; of girls who shudder and moan when she touches their creamy nipples. She has @@color:lightcoral;become more of a breast girl.@@
-	<<elseif ($milkmaidFetish == 2)>>
+	<<elseif (_milkmaidFetish == 2)>>
 		It's a hard life, pulling teats and washing cows, but it does @@color:lightsalmon;make her more of a breast fetishist.@@
 	<</if>>
-	<<if ($Milkmaid.muscles > 35)>>
+	<<if ($Milkmaid.muscles > 30)>>
 		Her muscles help her handle the fattest or most reluctant cow.
 	<</if>>
 	<<if ($Milkmaid.oralSkill > 30)>>
@@ -571,79 +490,71 @@
 	<<if $milkmaidCareers.contains($toSearch)>>
 		She has career experience dealing with milk animals.
 	<</if>>
-	<<for $i to 0; $i < $slaves.length; $i++>>
+	<<for _i to 0; _i < _SL; _i++>>
+	<<if $slaves[_i].assignment != "work in the dairy">><<continue>><</if>>
 	<<if $familyTesting == 1>>
-		<<if $slaves[$i].assignment == "learn in the schoolroom">>
-		<<if $slaves[$i].mother == $Milkmaid.ID>>
-			She pays special attention to her daughter, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
-		<<if $slaves[$i].father == $Milkmaid.ID>>
-			She pays special attention to her daughter, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
-		<<if $slaves[$i].ID == $Milkmaid.father>>
-			She pays special attention to her father, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
-		<<if $slaves[$i].ID == $Milkmaid.mother>>
-			She pays special attention to her mother, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
-		<<if areSisters($slaves[$i], $Milkmaid) == 1>>
-			She pays special attention to her twin sister, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<<elseif areSisters($slaves[$i], $Milkmaid) == 2>>
-			She pays special attention to her sister, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<<elseif areSisters($slaves[$i], $Milkmaid) == 3>>
-			She pays special attention to her half-sister, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
+		<<if $slaves[_i].mother == $Milkmaid.ID>>
+			She pays special attention to her daughter, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<</if>>
+		<<if $slaves[_i].father == $Milkmaid.ID>>
+			She pays special attention to her daughter, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<</if>>
+		<<if $slaves[_i].ID == $Milkmaid.father>>
+			She pays special attention to her father, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<</if>>
+		<<if $slaves[_i].ID == $Milkmaid.mother>>
+			She pays special attention to her mother, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<</if>>
+		<<if areSisters($slaves[_i], $Milkmaid) == 1>>
+			She pays special attention to her twin sister, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<<elseif areSisters($slaves[_i], $Milkmaid) == 2>>
+			She pays special attention to her sister, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
+		<<elseif areSisters($slaves[_i], $Milkmaid) == 3>>
+			She pays special attention to her half-sister, $slaves[_i].slaveName, making sure she is well kept and happy.
+			<<set $slaves[_i].trust += 1>>
 		<</if>>
 	<<else>>
-		<<if $Milkmaid.relationTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the dairy">>
-			She pays special attention to her $slaves[$i].relation, $slaves[$i].slaveName, making sure she is well kept and happy.
-			<<set $slaves[$i].trust += 1>>
-		<</if>>
-	<</if>>
-	<<if $Milkmaid.relationshipTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the dairy">>
-		She dotes over her <<if $Milkmaid.relationship == 1>>friend<<elseif $Milkmaid.relationship is 2>>best friend<<elseif $Milkmaid.relationship is 3>>friend with benefits<<elseif $Milkmaid.relationship is 4>>lover<<elseif $Milkmaid.relationship is 5>>slave wife<</if>>, $slaves[$i].slaveName, making sure she is happy and comfortable.
-		<<set $slaves[$i].devotion += 1>>
-	<</if>>
-	<<if $Milkmaid.rivalryTarget is $slaves[$i].ID and $slaves[$i].assignment is "work in the dairy">>
-		She either neglects or harasses her <<if $Milkmaid.rivalry == 1>>growing rival<<elseif $Milkmaid.rivalry is 2>>rival<<elseif $Milkmaid.rivalry is 3>>bitter rival<</if>>, $slaves[$i].slaveName, making sure she is unhappy and uncomfortable.
-		<<set $slaves[$i].devotion -= 3>>
-		<<set $slaves[$i].trust -= 3>>
+	<<if $Milkmaid.relationTarget is $slaves[_i].ID>>
+		She pays special attention to her $slaves[_i].relation, $slaves[_i].slaveName, making sure she is well kept and happy.
+		<<set $slaves[_i].trust += 1>>
+	<</if>>
+	<</if>> /*closes family mode */
+	<<if $Milkmaid.relationshipTarget is $slaves[_i].ID>>
+		She dotes over her <<if $Milkmaid.relationship == 1>>friend<<elseif $Milkmaid.relationship is 2>>best friend<<elseif $Milkmaid.relationship is 3>>friend with benefits<<elseif $Milkmaid.relationship is 4>>lover<<elseif $Milkmaid.relationship is 5>>slave wife<</if>>, $slaves[_i].slaveName, making sure she is happy and comfortable.
+		<<set $slaves[_i].devotion += 1>>
+	<</if>>
+	<<if $Milkmaid.rivalryTarget is $slaves[_i].ID>>
+		She either neglects or harasses her <<if $Milkmaid.rivalry == 1>>growing rival<<elseif $Milkmaid.rivalry is 2>>rival<<elseif $Milkmaid.rivalry is 3>>bitter rival<</if>>, $slaves[_i].slaveName, making sure she is unhappy and uncomfortable.
+		<<set $slaves[_i].devotion -= 3, $slaves[_i].trust -= 3>>
 		<<if random(1,100) > 65>>
-			<<set $Milkmaid.rivalry += 1>>
-		<<set $slaves[$i].rivalry += 1>>
+			<<set $Milkmaid.rivalry += 1, $slaves[_MM].rivalry += 1, $slaves[_i].rivalry += 1>>
 		<</if>>
 	<</if>>
-	<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a dairy cow." and $slaves[$i].assignment is "work in the dairy">>
-		She spends extra time with $slaves[$i].slaveName, the well-known cow.  $Milkmaid.slaveName is fascinated by her massive <<print $slaves[$i].boobs>>cc breasts and spends extra time massaging and kneading them to maximize production.
-		<<set $slaves[$i].devotion += 3>>
-		<<set $slaves[$i].trust += 3>>
+	<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a dairy cow.">>
+		She spends extra time with $slaves[_i].slaveName, the well-known cow.  $Milkmaid.slaveName is fascinated by her massive <<print $slaves[_i].boobs>>cc breasts and spends extra time massaging and kneading them to maximize production.
+		<<set $slaves[_i].devotion += 3, $slaves[_i].trust += 3>>
 	<</if>>
-	<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a cockmilker." and $slaves[$i].assignment is "work in the dairy">>
-		She spends extra time with $slaves[$i].slaveName, the massive ejaculating cow.  She can't help but massage the cow's dick and testes to stimulate them further and coax more from them.
-		<<set $slaves[$i].devotion += 3>>
-		<<set $slaves[$i].trust += 3>>
+	<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a cockmilker.">>
+		She spends extra time with $slaves[_i].slaveName, the massive ejaculating cow.  She can't help but massage the cow's dick and testes to stimulate them further and coax more from them.
+		<<set $slaves[_i].devotion += 3, $slaves[_i].trust += 3>>
 	<</if>>
-	<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a breeder." and $slaves[$i].assignment is "work in the dairy" and $slaves[$i].preg > 10>>
-		She spends extra time with $slaves[$i].slaveName, the well-known breeder.  $Milkmaid.slaveName is fascinated by her growing pregnancy and popular womb. She makes sure her belly and it's occupants are nice and comfortable.
-		<<set $slaves[$i].devotion += 3>>
-		<<set $slaves[$i].trust += 3>>
+	<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a breeder." && $slaves[_i].preg > 10>>
+		She spends extra time with $slaves[_i].slaveName, the well-known breeder.  $Milkmaid.slaveName is fascinated by her growing pregnancy and popular womb. She makes sure her belly and it's occupants are nice and comfortable.
+		<<set $slaves[_i].devotion += 3, $slaves[_i].trust += 3>>
 	<</if>>
 	<</for>>
-	<<if ($cumWeek > 0)>>
-	<<if ($dairyStimulatorsSetting < 2)>>
-	<<if ($Milkmaid.dick > 4) && canAchieveErection($Milkmaid)>>
+	<<if (_cumWeek > 0) && ($dairyStimulatorsSetting < 2)>>
+	<<if ($Milkmaid.dick > 4) && (canPenetrate($Milkmaid))>>
 		She uses her turgid cock to give prostate stimulation to slaves that need help ejaculating.
 	<</if>>
 	<</if>>
 	<</if>>
-	<</if>>
 
 <<if _chemSevere > 1>>
 	_chemSevere cows' productivity is being reduced by the long term effects of industrial use.
@@ -677,12 +588,12 @@
 <</if>>
 <<if _careerForgotten > 1>>
 	_careerForgotten cows forgot the details of their past professional lives; all they can remember now is this.
-<<elseif $careerForgotten > 0>>
+<<elseif _careerForgotten > 0>>
 	One cow forgot forgot the details of her past professional life; all she can remember now is this.
 <</if>>
 <<if _vaginasStretched > 1>>
 	_vaginasStretched cows' vaginas were broken in for machine use, and are unlikely to be any use for anything other than receiving cum and medication, and giving birth.
-<<elseif $vaginasStretched > 0>>
+<<elseif _vaginasStretched > 0>>
 	One cow's vagina was broken in for machine use, and is unlikely to be any use for anything other than receiving cum and medication, and giving birth.
 <</if>>
 <<if _anusesStretched > 1>>
@@ -723,21 +634,21 @@
 	Fertile cows make you a small profit through contract pregnancies.
 <</if>>
 <</if>>
-<<set $cumWeek = Math.trunc($cumWeek/10)>>
-$dairyNameCaps produced <<print $milkWeek+((8*$inflatedSlavesMilk*10)+8)>> liters of milk<<if $cumWeek > 0>> and <<print $cumWeek+(((80*$inflatedSlavesCum*10)+80)/10)>> liters of cum<</if>> this week.
+<<set _cumWeek = Math.trunc(_cumWeek/10)>>
+$dairyNameCaps produced <<print _milkWeek+((8*$inflatedSlavesMilk*10)+8)>> liters of milk<<if _cumWeek > 0>> and <<print _cumWeek+(((80*$inflatedSlavesCum*10)+80)/10)>> liters of cum<</if>> this week.
 <<if $inflatedSlavesMilk > 0>>
 	<<print ((8*$inflatedSlavesMilk*10)+8)>> liters of milk were pumped into your penthouse for filling slaves this week. 
 <</if>>
 <<if $inflatedSlavesCum > 0>>
 	<<if $inflatedSlavesMilk > 0>>and <</if>><<print (((80*$inflatedSlavesCum*10)+80)/10)>> liters of cum were pumped into your penthouse<<if $inflatedSlavesMilk > 0>> as well<<else>> this week<</if>>.
 <</if>>
-<<if $femCumWeek > 0>>
-	The machines also managed to reclaim $femCumWeek liters of saleable vaginal secretions.
+<<if _femCumWeek > 0>>
+	The machines also managed to reclaim _femCumWeek liters of salable vaginal secretions.
 <</if>>
-<<if $births > 1>>
-	Additionally, $birthers cows gave birth<<if $births > $birthers>> to a total of $births calves<</if>> this week.
-<<elseif $births > 0>>
-	Additionally, one cow gave birth<<if $births > $birthers>> to a total of $births calves<</if>> this week.
+<<if _births > 1>>
+	Additionally, _birthers cows gave birth<<if _births > _birthers>> to a total of _births calves<</if>> this week.
+<<elseif _births > 0>>
+	Additionally, one cow gave birth<<if _births > _birthers>> to a total of _births calves<</if>> this week.
 <</if>>
 
 <<if $arcologies[0].FSRestart != "unset">>
@@ -745,13 +656,13 @@ $dairyNameCaps produced <<print $milkWeek+((8*$inflatedSlavesMilk*10)+8)>> liter
 	The Societal Elite know what you are doing with your cows. @@color:red;They do not approve@@.
 	<<set $failedElite += 5>>
 <</if>>
-<<if $milkmaidImpregnates == 1>>
+<<if _milkmaidImpregnates == 1>>
 	The Societal Elite know you've ordered $Milkmaid.slaveName to impregnate your cows. @@color:red;They are not amused by your disenterest in eugenics@@.
 	<<set $failedElite += 10>>
 <</if>>
 <</if>>
 
-These products sell for @@color:yellowgreen;¤$profits@@.
+These products sell for @@color:yellowgreen;¤_profits@@.
 
 <<if ($arcologies[0].FSPastoralistLaw == 1)>>
 	Slave products have completely replaced traditional dairy, making the facility extremely lucrative.
@@ -759,52 +670,49 @@ These products sell for @@color:yellowgreen;¤$profits@@.
 
 <<if ($dairySlimMaintainUpgrade == 1 && $dairySlimMaintain == 1)>>
 	<<if $arcologies[0].FSSlimnessEnthusiast > 80>>
-		Because of your arcology's great enthusiasm for small breasted slaves, the dairy's milking systems have been carefully overhauled and optimized for maximum milk extraction from slaves with smaller endowments--providing a significant boost to their othwerwise modest output.  This also prevents unfashionable breast expansion of already slim slaves through the milking process.
+		Because of your arcology's great enthusiasm for small breasted slaves, the dairy's milking systems have been carefully overhauled and optimized for maximum milk extraction from slaves with smaller endowments--providing a significant boost to their otherwise modest output. This also prevents unfashionable breast expansion of already slim slaves through the milking process.
 	<<elseif $arcologies[0].FSSlimnessEnthusiast > 20>>
 		In keeping your your arcology's ideals, $dairyName has been modified to handle slim slaves with minimal impact to their body shapes. This limits potential profitability, but prevents unfashionable breast expansion of already slim slaves through the milking process.
 	<<else>>
 		Due to your arcology's lack of enthusiasm for small breasted slaves the dairy has discontinued using milking techniques that prevent breast growth through the milking process.
-		<<set $dairySlimMaintain = 0>>
-		<<set $dairySlimMaintainUpgrade = 0>>
+		<<set $dairySlimMaintain = 0, $dairySlimMaintainUpgrade = 0>>
 	<</if>>
 <</if>>
 
-<<if ($dairy < $dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren)>>
+<<if ($dairy < ($dairySlaves + _Tadd))>>
 	<<set $dairySpots to 0>>
 	<br>
 <<else>>
 
 <<set $dairySpots to $dairy - $dairySpots>>
 
-<<if $createBioreactors == 1>>
-<<if $bioreactorPerfectedID != 0>>
-	<<for $i to 0; $i < $slaves.length; $i++>>
-	<<if ($slaves[$i].ID is $bioreactorPerfectedID)>>
-		$slaves[$i].slaveName's breasts<<if $slaves[$i].balls > 0>>, balls<</if>><<if $slaves[$i].ovaries == 1>>, belly<</if>>, body, and mind have been completely adapted to synthesize useful products. She has been reclassified as part of the machine she's now permanently attached to. This combination is projected to produce approximately
-		<<if $slaves[$i].balls > 0>><<print 1000*Math.trunc((3*52*(45-$slaves[$i].physicalAge))/1000)>> liters of cum,<</if>>
-		<<if $slaves[$i].ovaries == 1>><<print 100*Math.trunc((52*(45-$slaves[$i].physicalAge))/100)>> liters of vaginal secretions, <<if $dairyPregSetting is 3>><<print 13*(45-$slaves[$i].physicalAge)>><<else>><<print 5*(45-$slaves[$i].physicalAge)>><</if>> slaves,<</if>>
-		and <<print 1000*Math.trunc((300*52*(45-$slaves[$i].physicalAge))/1000)>> liters of milk over a <<print 45-$slaves[$i].physicalAge>> year period before its biological components must be replaced.
-		<<if ($slaves[$i].ovaries == 1)>>
-		<<if ($slaves[$i].balls == 0)>>
+<<if ($createBioreactors == 1) && ($bioreactorPerfectedID != 0)>>
+	<<for _i to 0; _i < _SL; _i++>>
+	<<if ($slaves[_i].ID is $bioreactorPerfectedID)>>
+		$slaves[_i].slaveName's breasts<<if $slaves[_i].balls > 0>>, balls<</if>><<if $slaves[_i].ovaries == 1>>, belly<</if>>, body, and mind have been completely adapted to synthesize useful products. She has been reclassified as part of the machine she's now permanently attached to. This combination is projected to produce approximately
+		<<if $slaves[_i].balls > 0>><<print 1000*Math.trunc((3*52*(45-$slaves[_i].physicalAge))/1000)>> liters of cum,<</if>>
+		<<if $slaves[_i].ovaries == 1>><<print 100*Math.trunc((52*(45-$slaves[_i].physicalAge))/100)>> liters of vaginal secretions, <<if $dairyPregSetting == 3>><<print 13*(45-$slaves[_i].physicalAge)>><<else>><<print 5*(45-$slaves[_i].physicalAge)>><</if>> slaves,<</if>>
+		and <<print 1000*Math.trunc((300*52*(45-$slaves[_i].physicalAge))/1000)>> liters of milk over a <<print 45-$slaves[_i].physicalAge>> year period before its biological components must be replaced.
+		<<if ($slaves[_i].ovaries == 1)>>
+		<<if ($slaves[_i].balls == 0)>>
 			<<set $bioreactorsXX += 1>>
 		<<else>>
 			<<set $bioreactorsHerm += 1>>
 		<</if>>
 		<<else>>
-		<<if ($slaves[$i].balls == 0)>>
+		<<if ($slaves[_i].balls == 0)>>
 			<<set $bioreactorsBarren += 1>>
 		<<else>>
 			<<set $bioreactorsXY += 1>>
 		<</if>>
 		<</if>>
-		<<set $activeSlave to $slaves[$i]>>
+		<<set $activeSlave to $slaves[_i]>>
 		<<display "Remove activeSlave">>
 		<<break>>
 	<</if>>
 	<</for>>
 	<br>
 <</if>>
-<</if>>
 
 <</if>>
 
diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw
index 0d44a7843bde170677566b66ee15d1258583cf42..c061c19aee88fd037bf2b96366f1b0b6ca1adfd9 100644
--- a/src/uncategorized/economics.tw
+++ b/src/uncategorized/economics.tw
@@ -388,6 +388,51 @@ __Reputation__
 
 On formal occasions, you are announced as $PCTitle.
 
+<<if $arcologies[0].FSChattelReligionist != "unset">>
+<<if $arcologies[0].FSChattelReligionistCreed == 1>>
+	$arcologies[0].name keeps the creed of the $nicaeaName. The faithful
+	<<if $nicaeaAchievement == "slaves">>
+		<<if $slaves.length > 50>>
+			@@color:green;strongly approve@@ of the large
+			<<set $rep += 2*$FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.1*$FSSingleSlaveRep>>
+		<<elseif $slaves.length > 20>>
+			@@color:green;approve@@ of the good 
+			<<set $rep += $FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.05*$FSSingleSlaveRep>>
+		<<elseif $slaves.length > 20>>
+			are not impressed by the 
+		<</if>>
+		number of people you're giving the honor of sexual servitude.
+	<<elseif $nicaeaAchievement == "devotion">>
+		<<if $averageDevotion > 80>>
+			@@color:green;strongly approve@@ of the worshipfulness
+			<<set $rep += 2*$FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.1*$FSSingleSlaveRep>>
+		<<elseif $averageDevotion > 50>>
+			@@color:green;approve@@ of the devotion
+			<<set $rep += $FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.05*$FSSingleSlaveRep>>
+		<<elseif $slaves.length > 20>>
+			are not impressed by the devotion
+		<</if>>
+		of your slaves.
+	<<else>>
+		<<if $averageTrust > 50>>
+			@@color:green;strongly approve@@ of the great trust your slaves place in you.
+			<<set $rep += 2*$FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.1*$FSSingleSlaveRep>>
+		<<elseif $averageTrust > 20>>
+			@@color:green;approve@@ of the trust your slaves place in you.
+			<<set $rep += $FSSingleSlaveRep*($arcologies[0].FSRomanRevivalist/$FSLockinLevel)>>
+			<<set $arcologies[0].FSChattelReligionist += 0.05*$FSSingleSlaveRep>>
+		<<elseif $slaves.length > 20>>
+			are not impressed by fear many of your slaves feel towards you.
+		<</if>>
+	<</if>>
+<</if>>
+<</if>>
+
 <<set $repDecay to 0.2>>
 <<if $arcologies[0].FSChattelReligionistLaw == 1>>
 	<<set $repLoss to 0>>
@@ -1351,6 +1396,12 @@ earning you @@color:yellowgreen;¤$seed.@@
 		This week, the careful attention to slave welfare your new society emphasizes has been a driver of prosperity.
 		<<set $AWeekGrowth += 1>>
 	<</if>>
+	<<if $arcologies[0].FSChattelReligionistCreed == 1>>
+	<<if $nicaeaFocus == "owners">>
+		The focus on slaveowners' whims in the creed of $nicaeaName interests the rich and powerful, increasing prosperity.
+		<<set $AWeekGrowth += $nicaeaPower>>
+	<</if>>
+	<</if>>
 	<<if $arcologies[0].FSRomanRevivalist >= random(1,100)>>
 		This week, intense interest in your project to revive Roman values has driven prosperity.
 		<<set $AWeekGrowth += 1>>
diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw
index 41dbdfd2c7fa2149db1126c3dfea0f64a883d9c3..94a277fadfd2dc7e4de212cf3326322b4f9bbff0 100644
--- a/src/uncategorized/genericPlotEvents.tw
+++ b/src/uncategorized/genericPlotEvents.tw
@@ -455,7 +455,7 @@ From this day forward, the arcology shall be known as: <<textbox "$arcologies[0]
 
 <<case "slave food">>
 
-A screen opposite your desk springs to life, <<if $assistant == 0>>showing your personal assistant's symbol, indicating that it has a complex subject to report. When you instruct it to continue, it displays<<else>>and $assistantName's avatar appears on it seated, indicating that she has something complex to bring up. When you tell her to continue, she reviews<</if>> medical research that's just been published, on the long term effects of the liquid diet your slaves eat. The current generation of slaves is the first, and new discoveries about the effects of years of modern slavery are made all the time. Apparently, consuming state of the art slave food causes slow atrophy of slaves' digestive tracts. The slaves' ability to digest the slave food does not seem to be affected; the atrophy is the body's natural reaction never facing digestive challenge, and once it reaches the point where the remaining digestive capacity is necessary for liquid slave food, it stops. The only negative effect known is difficulty readjusting to normal food, becoming more extreme the longer the slave food diet was followed.
+A screen opposite your desk springs to life, <<if $assistant == 0>>showing your personal assistant's symbol, indicating that it has a complex subject to report. When you instruct it to continue, it displays<<else>>and $assistantName's avatar appears on it seated, indicating that she has something complex to bring up. When you tell her to continue, she reviews<</if>> medical research that's just been published, on the long term effects of the liquid diet your slaves eat. The current generation of slaves is the first, and new discoveries about the effects of years of modern slavery are made all the time. Apparently, consuming state of the art slave food causes slow atrophy of slaves' digestive tracts. The slaves' ability to digest the slave food does not seem to be affected; the atrophy is the body's natural reaction to never facing digestive challenge, and once it reaches the point where the remaining digestive capacity is necessary for liquid slave food, it stops. The only negative effect known is difficulty readjusting to normal food, becoming more extreme the longer the slave food diet was followed.
 <br><br>"In conclusion,"
 <<if $assistant == 0>>
 	your assistant recites, "no impact on slaves who fully adapt to slave food is likely, as long as they remain slaves. If they were to be freed, they would have to either continue obtaining liquid slave food, or go through a difficult or even impossible dietary transition." It pauses. "This information is likely to remain at the level of a rumor among the slave population, unless it is openly admitted."
diff --git a/src/uncategorized/hgApplication.tw b/src/uncategorized/hgApplication.tw
index b908afb297d4ecdf3f06ab5706e0cdeaef223b8d..9107bd851d17eddc7fd8d6268065ae9b53ac369f 100644
--- a/src/uncategorized/hgApplication.tw
+++ b/src/uncategorized/hgApplication.tw
@@ -1,11 +1,14 @@
 :: HG Application [nobr]
 
+<<if ndef $HGSeverity>>
+	<<set $HGSeverity = 0>>
+<</if>>
 <<set $activeSlave.tired to 1>>
 <<set $HGEnergy -= 1>>
-<<set $seed to 15+$HeadGirl.actualAge+($HeadGirl.intelligence*10)-($HeadGirl.accent*5)+($HGSeverity*10)+($activeSlave.intelligence*10)-($activeSlave.accent*5)>>
+<<set _effectiveness to 15+$HeadGirl.actualAge+($HeadGirl.intelligence*10)-($HeadGirl.accent*5)+($HGSeverity*10)+($activeSlave.intelligence*10)-($activeSlave.accent*5)>>
 <<if $HeadGirl.sexualFlaw == "abusive">>
 <<if $HGSeverity >= 0>>
-	<<set $seed += 10>>
+	<<set _effectiveness += 10>>
 <</if>>
 <</if>>
 
@@ -44,10 +47,10 @@ She helps $activeSlave.slaveName however she can. The tender care has @@color:gr
 
 <<if $HeadGirl.career is "an arcology owner">>
 	She was once an arcology owner herself, making her truly peerless as a Head Girl.
-	<<set $seed += 50>>
+	<<set _effectiveness += 50>>
 <<elseif $HGCareers.contains($HeadGirl.career)>>
 	She was used to giving commands and being obeyed in her life before she was a slave, experience she can call on now.
-	<<set $seed += 5>>
+	<<set _effectiveness += 5>>
 <</if>>
 
 <<if $HeadGirl.actualAge > 30>>
@@ -155,8 +158,8 @@ She helps $activeSlave.slaveName however she can. The tender care has @@color:gr
 
 <<if $HGtraining is "obedience">>
 
-<<set $seed -= $activeSlave.intelligence*15>>
-<<set $activeSlave.trust -= Math.trunc($seed/4)>>
+<<set _effectiveness -= $activeSlave.intelligence*15>>
+<<set $activeSlave.trust -= Math.trunc(_effectiveness/4)>>
 <<if $activeSlave.devotion < -50>>
 	She helps watch and restrain the rebellious $activeSlave.slaveName, helping wear her down, @@color:gold;breaking $activeSlave.slaveName's rebelliousness.@@
 <<elseif $activeSlave.devotion < -20>>
@@ -167,8 +170,8 @@ She helps $activeSlave.slaveName however she can. The tender care has @@color:gr
 
 <<elseif $HGtraining is "flaw">>
 
-<<set $seed -= $activeSlave.intelligence*15>>
-<<set $activeSlave.training += $seed>>
+<<set _effectiveness -= $activeSlave.intelligence*15>>
+<<set $activeSlave.training += _effectiveness>>
 <<if ["cum addict", "anal addict", "attention whore", "breast growth", "abusive", "malicious", "self hating", "neglectful", "breeder"].contains($activeSlave.sexualFlaw)>>
 	$HeadGirl.slaveName does her best to get $activeSlave.slaveName past it with punishments and rewards,
 	<<if $activeSlave.training > 100>>
@@ -199,8 +202,8 @@ She helps $activeSlave.slaveName however she can. The tender care has @@color:gr
 
 <<elseif $HGtraining is "soften">>
 
-<<set $seed -= $activeSlave.intelligence*15>>
-<<set $activeSlave.training += $seed>>
+<<set _effectiveness -= $activeSlave.intelligence*15>>
+<<set $activeSlave.training += _effectiveness>>
 She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet does her best to retain what makes the slave special,
 <<if $activeSlave.training > 150>>
 	<<set $activeSlave.training = 0>>
@@ -256,7 +259,6 @@ She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet
 
 <<set $activeSlave.training = 0>>
 <<if ($HeadGirl.fetish is "cumslut") && ($HeadGirl.fetishStrength > 60)>>
-	<<set $activeSlave.training = 0>>
 	In spare moments she teaches $activeSlave.slaveName how to suck cocks, cunts, and assholes. Her enthusiasm for oral sex is infectious. $activeSlave.slaveName's oral skills have improved.
 	<<set $skillIncrease = 2>><<OralSkillIncrease $activeSlave>>
 <<elseif ($HeadGirl.dick > 0) && canAchieveErection($HeadGirl) && $HeadGirl.dickAccessory != ("chastity")>>
@@ -268,7 +270,7 @@ She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet
 <<else>>
 	In spare moments she teaches $activeSlave.slaveName how to suck cocks, cunts, and assholes. $activeSlave.slaveName's oral skills have improved.
 <</if>>
-<<set $skillIncrease = Math.trunc($seed/10)>><<OralSkillIncrease $activeSlave>>
+<<set $skillIncrease = Math.trunc(_effectiveness/10)>><<OralSkillIncrease $activeSlave>>
 
 <<elseif $HGtraining is "anal skill">>
 
@@ -285,7 +287,7 @@ She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet
 <<else>>
 	In spare moments she teaches $activeSlave.slaveName how to take a dick up the butt. $activeSlave.slaveName's anal skills have improved.
 <</if>>
-<<set $skillIncrease = Math.trunc($seed/10)>><<AnalSkillIncrease $activeSlave>>
+<<set $skillIncrease = Math.trunc(_effectiveness/10)>><<AnalSkillIncrease $activeSlave>>
 
 <<elseif $HGtraining is "fuck skill">>
 
@@ -302,13 +304,13 @@ She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet
 <<else>>
 	In spare moments she teaches $activeSlave.slaveName how to take a dick. $activeSlave.slaveName's vanilla sex skills have improved.
 <</if>>
-<<set $skillIncrease = Math.trunc($seed/10)>><<VaginalSkillIncrease $activeSlave>>
+<<set $skillIncrease = Math.trunc(_effectiveness/10)>><<VaginalSkillIncrease $activeSlave>>
 
 <<elseif $HGtraining is "whore skill">>
 
 <<set $activeSlave.training = 0>>
 In spare moments she teaches $activeSlave.slaveName how to prostitute herself. $activeSlave.slaveName's whoring skills have improved.
-<<set $skillIncrease = Math.trunc($seed/10)>><<WhoreSkillIncrease $activeSlave>>
+<<set $skillIncrease = Math.trunc(_effectiveness/10)>><<WhoreSkillIncrease $activeSlave>>
 
 <<elseif $HGtraining is "entertain skill">>
 
@@ -319,7 +321,7 @@ In spare moments she teaches $activeSlave.slaveName how to prostitute herself. $
 <<else>>
 	In spare moments she teaches $activeSlave.slaveName how to entertain. $activeSlave.slaveName's entertainment skills have improved.
 <</if>>
-<<set $skillIncrease = Math.trunc($seed/10)>><<EntertainSkillIncrease $activeSlave>>
+<<set $skillIncrease = Math.trunc(_effectiveness/10)>><<EntertainSkillIncrease $activeSlave>>
 
 <</if>>
 <</if>>
diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw
index e85462215eb7d0e7d57517e01ed0c2c4625c74a8..42b437283bb1c38d7618be95fedb5caf33b318a6 100644
--- a/src/uncategorized/main.tw
+++ b/src/uncategorized/main.tw
@@ -1,7 +1,7 @@
 :: Main [nobr]
 
 <<if $ver.contains("0.9") or $ver.contains("0.8") or $ver.contains("0.7") or $ver.contains("0.6")>>
-	<<if ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9")>>
+	<<if ($ver != "0.9.7") && ($ver != "0.9.8") && ($ver != "0.9.9") && ($ver != "0.9.10")>>
 		''@@color:red;INCOMPATIBLE SAVE WARNING:@@'' your saved game was created using version $ver and you are using version 0.9.8. Please select New Game Plus from the Options menu or start a new game.
 		<br><br>
 	<</if>>
diff --git a/src/uncategorized/masterSuite.tw b/src/uncategorized/masterSuite.tw
index ddfc6145413c3d4a7384bdeac33557325cea480b..61d25521992b9d1a5e7b2ea72dac0167af938889 100644
--- a/src/uncategorized/masterSuite.tw
+++ b/src/uncategorized/masterSuite.tw
@@ -1,71 +1,60 @@
-:: Master Suite
- 
-<<nobr>>
-<<set $nextButton to "Back to Main">>
-<<set $nextLink to "Main">>
-<<set $returnTo to "Master Suite">>
+:: Master Suite [nobr]
+
+<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Master Suite">>
 
 <<if $masterSuiteName != "the Master Suite">>
 	<<set $masterSuiteNameCaps to $masterSuiteName.replace("the ", "The ")>>
 <</if>>
 
-<<set $masterSuiteSlaves to 0>>
-<<set $notMasterSuiteSlaves to 0>>
-<<set $masterSuitePregnantSlaves to 0>>
-<<set $masterSuitePregnantSlavesMultiple to 0>>
-<<set $masterSuitePregnantSlaves to 0>>
-<<set $masterSuiteAverageEnergy to 0>>
-<<set $masterSuiteAverageMilk to 0>>
-<<set $masterSuiteAverageCum to 0>>
-<<set $masterSuiteAverageDick to 0>>
-<<set $masterSuiteAveragePreg to 0>>
-<<set $masterSuiteAverageDom to 0>>
-<<set $masterSuiteAverageSadism to 0>>
+<<set $masterSuiteAverageEnergy = 0, $masterSuiteSlaves = 0, _masterSuiteAverageCum = 0, _masterSuiteAverageDick = 0, _masterSuiteAverageDom = 0, _masterSuiteAverageMilk = 0, _masterSuiteAveragePreg = 0, _masterSuiteAverageSadism = 0, _masterSuitePregnantSlaves = 0, _masterSuitePregnantSlavesMultiple = 0, _notMasterSuiteSlaves = 0, _SL = $slaves.length>>
 
-<<for _i to 0; _i < $slaves.length; _i++>>
+<<for _i to 0; _i < _SL; _i++>>
 <<set _Slave to $slaves[_i]>>
 <<if _Slave.assignment is "serve in the master suite">>
 	<<set $masterSuiteSlaves += 1>>
 	<<if $masterSuiteUpgradeLuxury is 2>>
-	<<if canAchieveErection($slaves[_i])>>
-		<<set $masterSuiteAverageCum += _Slave.balls>>
-		<<set $masterSuiteAverageDick += _Slave.dick>>
+	<<if canAchieveErection(_Slave)>>
+		<<set _masterSuiteAverageCum += _Slave.balls, _masterSuiteAverageDick += _Slave.dick>>
 	<</if>>
-	<<set $masterSuiteAverageMilk += _Slave.lactation*(_Slave.boobs-_Slave.boobsImplant)>>
+	<<set _masterSuiteAverageMilk += _Slave.lactation*(_Slave.boobs-_Slave.boobsImplant)>>
 	<<set $masterSuiteAverageEnergy += _Slave.energy>>
-	<<set $masterSuiteAveragePreg += _Slave.preg>>
+	<<set _masterSuiteAveragePreg += _Slave.preg>>
 	<<if _Slave.fetish is "dom">>
-		<<set $masterSuiteAverageDom += _Slave.fetishStrength>>
+		<<set _masterSuiteAverageDom += _Slave.fetishStrength>>
 	<<elseif _Slave.fetish is "submissive">>
-		<<set $masterSuiteAverageDom -= _Slave.fetishStrength>>
+		<<set _masterSuiteAverageDom -= _Slave.fetishStrength>>
 	<<elseif _Slave.fetish is "sadist">>
-		<<set $masterSuiteAverageSadism += _Slave.fetishStrength>>
+		<<set _masterSuiteAverageSadism += _Slave.fetishStrength>>
 	<<elseif _Slave.fetish is "masochist">>
-		<<set $masterSuiteAverageSadism -= _Slave.fetishStrength>>
+		<<set _masterSuiteAverageSadism -= _Slave.fetishStrength>>
 	<</if>>
 	<</if>>
 	<<if $masterSuiteUpgradeLuxury > 0>>
 	<<set _Slave.livingRules to "luxurious">>
 	<</if>>
+	<<set $slaves[_i] = _Slave>>
+	<<if _Slave.ID == $Concubine.ID>>
+		<<set $Concubine = _Slave>>
+	<</if>>
 <<else>>
-	<<set $notMasterSuiteSlaves += 1>>
+	<<set _notMasterSuiteSlaves += 1>>
 <</if>>
 <<if (_Slave.assignment is "serve in the master suite" or _Slave.ID is $Concubine.ID) && (_Slave.preg >= 4)>>
-	 <<set $masterSuitePregnantSlaves += 1>>
-	 <<if _Slave.pregType > 1>>
-		 <<set $masterSuitePregnantSlavesMultiple += 1>>
-	 <</if>>
+	<<set _masterSuitePregnantSlaves += 1>>
+	<<if _Slave.pregType > 1>>
+		<<set _masterSuitePregnantSlavesMultiple += 1>>
+	<</if>>
 <</if>>
 <</for>>
 
 <<if ($masterSuiteSlaves > 0)>>
 	<<set $masterSuiteAverageEnergy to $masterSuiteAverageEnergy/$masterSuiteSlaves>>
-	<<set $masterSuiteAverageMilk to $masterSuiteAverageMilk/$masterSuiteSlaves>>
-	<<set $masterSuiteAverageCum to $masterSuiteAverageCum/$masterSuiteSlaves>>
-	<<set $masterSuiteAverageDick to $masterSuiteAverageDick/$masterSuiteSlaves>>
-	<<set $masterSuiteAveragePreg to $masterSuiteAveragePreg/$masterSuiteSlaves>>
-	<<set $masterSuiteAverageDom to $masterSuiteAverageDom/$masterSuiteSlaves>>
-	<<set $masterSuiteAverageSadism to $masterSuiteAverageSadism/$masterSuiteSlaves>>
+	<<set _masterSuiteAverageMilk to _masterSuiteAverageMilk/$masterSuiteSlaves>>
+	<<set _masterSuiteAverageCum to _masterSuiteAverageCum/$masterSuiteSlaves>>
+	<<set _masterSuiteAverageDick to _masterSuiteAverageDick/$masterSuiteSlaves>>
+	<<set _masterSuiteAveragePreg to _masterSuiteAveragePreg/$masterSuiteSlaves>>
+	<<set _masterSuiteAverageDom to _masterSuiteAverageDom/$masterSuiteSlaves>>
+	<<set _masterSuiteAverageSadism to _masterSuiteAverageSadism/$masterSuiteSlaves>>
 <</if>>
 
 <<if $masterSuiteUpgradeLuxury == 1>>
@@ -121,11 +110,11 @@ $masterSuiteNameCaps is furnished
 It's is full of luxuries of all kinds. The slaves here live free of want or worry, and have everything except their freedom. Their only duties are to please you and look after the suite and one another.
 <<if $masterSuiteSlaves > 2>>
 	It's busy with slaves, so many that they are able to rotate through keeping themselves perfect and ready for your pleasure. The slaves not on call at the moment are beautifying themselves, cleaning, or serving others.
-	<<if ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple < 2)>>
+	<<if (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple < 2)>>
 	Many of the slaves are pregnant, and they walk around proudly displaying their bellies and the new slaves growing inside them.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
 	Many of the slaves are heavily pregnant with multiple children, and they waddle around proudly displaying their distended bulging bellies and the next generation of slaves growing within them.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2)>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2)>>
 	Many of the slaves are pregnant with multiple children, and they walk around proudly displaying their distended bellies and the next generation of slaves growing within them.<br>
 	<</if>>
 <<elseif $masterSuiteSlaves > 0>>
@@ -198,21 +187,21 @@ The true focus of the suite is, however, the fuckpit. This stepped depression in
 	<</if>>
 	<<if $masterSuiteAverageEnergy > 90>>
 	The pit features automated cleaning systems, which are quite necessary.
-	<<if $masterSuiteAverageDick > 4>>
+	<<if _masterSuiteAverageDick > 4>>
 		With so many huge cocks in the fuckpit, every hole available is frequently fucked vigorously.
 	<</if>>
-	<<if $masterSuiteAverageCum > 4>>
+	<<if _masterSuiteAverageCum > 4>>
 		The slaves' bodies grow more coated with cum, and more of the white stuff drips from their holes, until they take a break for a shower.
 	<</if>>
-	<<if $masterSuiteAverageMilk > 4000>>
+	<<if _masterSuiteAverageMilk > 4000>>
 		Most of them cannot tear themselves away (or cannot escape) for a normal machine milking, so their tender, overfull breasts squirt milk whenever anyone touches them. The lowest level of the fuckpit is a pool of milk.
 	<</if>>
 	<</if>>
-	<<if ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple < 2)>>
+	<<if (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple < 2)>>
 	Many of the slaves are pregnant, and more than one has her face buried in the cunt directly below a gravid belly while she lovingly massages her own.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
 	Many of the slaves are heavily pregnant with multiple children, and more than one has her face buried in the cunt directly below a massively overburdened belly while she lovingly massages her own distended squirming stomach.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2)>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2)>>
 	Many of the slaves are pregnant with multiple children, and more than one has her face buried in the cunt directly below a grossly swollen belly while she lovingly massages her own distended stomach.<br>
 	<</if>>
 <<elseif $masterSuiteSlaves > 0>>
@@ -275,11 +264,11 @@ $masterSuiteNameCaps is furnished
 
 <<if $masterSuiteSlaves > 2>>
 	It's busy with slaves, so many that they are able to rotate through keeping themselves perfect and ready for your pleasure. The slaves not on call at the moment are beautifying themselves, cleaning, or serving others.
-	<<if ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple < 2)>>
+	<<if (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple < 2)>>
 	Many of the slaves are pregnant, and they walk around proudly displaying their bellies and the new slaves growing inside them.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2) && $masterSuiteHyperPregnancy == 1>>
 	Many of the slaves are heavily pregnant with multiple children, and they waddle around proudly displaying their distended bulging bellies and the next generation of slaves growing within them.<br>
-	<<elseif ($masterSuitePregnantSlaves > 2) && ($masterSuitePregnantSlavesMultiple > 2)>>
+	<<elseif (_masterSuitePregnantSlaves > 2) && (_masterSuitePregnantSlavesMultiple > 2)>>
 	Many of the slaves are pregnant with multiple children, and they walk around proudly displaying their distended bellies and the next generation of slaves growing within them.<br>
 	<</if>>
 <<elseif $masterSuiteSlaves > 0>>
@@ -334,7 +323,7 @@ $masterSuiteNameCaps is furnished
 	<<display "Slave Summary">>
 <</if>>
 
-<<if $notMasterSuiteSlaves > 0>>
+<<if _notMasterSuiteSlaves > 0>>
 	<br><br>''Send a slave to serve in the master suite:''
 	<<set $Flag to 0>>
 	<<display "Slave Summary">>
@@ -342,4 +331,3 @@ $masterSuiteNameCaps is furnished
 <<unset $Flag>>
 
 <br><br>Rename $masterSuiteName: <<textbox "$masterSuiteName" $masterSuiteName "Master Suite">> //Use a noun or similar short phrase//
-<</nobr>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index db31a3916fe97c011e83dc1be9b4448d8bf125d4..867035f32880501a2fae663ce20c30a0175defad 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -1,43 +1,31 @@
 :: Master Suite Report [nobr]
 
-''Master Suite Report''<hr style="margin:0">
 
-<<set $legendaryAbolitionistID to 0>>
-<<set $masterSuiteSlaves to 0>>
-<<set $masterSuitePregnantSlaves to 0>>
-<<set $masterSuiteAverageEnergy to 0>>
-<<set $masterSuiteAverageMilk to 0>>
-<<set $masterSuiteAverageCum to 0>>
-<<set $masterSuiteAverageDick to 0>>
-<<set $masterSuiteAveragePreg to 0>>
-<<set $masterSuiteAverageDom to 0>>
-<<set $masterSuiteAverageSadism to 0>>
+<<set $legendaryAbolitionistID = 0, $masterSuiteAverageEnergy = 0, $masterSuiteSlaves = 0, _masterSuiteAverageCum = 0, _masterSuiteAverageDick = 0, _masterSuiteAverageDom = 0, _masterSuiteAverageMilk = 0, _masterSuiteAveragePreg = 0, _masterSuiteAverageSadism = 0, _masterSuitePregnantSlaves = 0, _masterSuitePregnantSlavesMultiple = 0, _SL = $slaves.length, _CCB = -1>>
 
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "serve in the master suite") || ($slaves[$i].assignment is "be your Concubine")>>
-	<<if $seeImages == 1>><<SlaveArt $slaves[$i] 0 0>><</if>>
-	<<set $masterSuiteSlaves += 1>>
-	<<set $masterSuiteAverageEnergy += $slaves[$i].energy>>
+<<for _i = 0; _i < _SL; _i++>>
+<<if ($slaves[_i].assignment is "serve in the master suite") || ($slaves[_i].assignment is "be your Concubine")>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set $masterSuiteSlaves += 1, $masterSuiteAverageEnergy += $slaves[_i].energy>>
 	<<if $masterSuiteUpgradeLuxury == 2>>
-	<<if canAchieveErection($slaves[$i])>>
-		<<set $masterSuiteAverageCum += $slaves[$i].balls>>
-		<<set $masterSuiteAverageDick += $slaves[$i].dick>>
+	<<if canAchieveErection($slaves[_i])>>
+		<<set _masterSuiteAverageCum += $slaves[_i].balls, _masterSuiteAverageDick += $slaves[_i].dick>>
 	<</if>>
-	<<set $masterSuiteAverageMilk += $slaves[$i].lactation*($slaves[$i].boobs-$slaves[$i].boobsImplant)>>
-	<<set $masterSuiteAveragePreg += $slaves[$i].preg>>
-	<<if $slaves[$i].fetish is "dom">>
-		<<set $masterSuiteAverageDom += $slaves[$i].fetishStrength>>
-	<<elseif $slaves[$i].fetish is "submissive">>
-		<<set $masterSuiteAverageDom -= $slaves[$i].fetishStrength>>
-	<<elseif $slaves[$i].fetish is "sadist">>
-		<<set $masterSuiteAverageSadism += $slaves[$i].fetishStrength>>
-	<<elseif $slaves[$i].fetish is "masochist">>
-		<<set $masterSuiteAverageSadism -= $slaves[$i].fetishStrength>>
+	<<set _masterSuiteAverageMilk += $slaves[_i].lactation*($slaves[_i].boobs-$slaves[_i].boobsImplant)>>
+	<<set _masterSuiteAveragePreg += $slaves[_i].preg>>
+	<<if $slaves[_i].fetish is "dom">>
+		<<set _masterSuiteAverageDom += $slaves[_i].fetishStrength>>
+	<<elseif $slaves[_i].fetish is "submissive">>
+		<<set _masterSuiteAverageDom -= $slaves[_i].fetishStrength>>
+	<<elseif $slaves[_i].fetish is "sadist">>
+		<<set _masterSuiteAverageSadism += $slaves[_i].fetishStrength>>
+	<<elseif $slaves[_i].fetish is "masochist">>
+		<<set _masterSuiteAverageSadism -= $slaves[_i].fetishStrength>>
 	<</if>>
 	<</if>>
-	<<if ($legendaryAbolitionistID == 0) && ($slaves[$i].devotion > 95) && ($slaves[$i].prestige == 0)>>
-	<<if ($slaves[$i].origin is "You sentenced her to enslavement as a punishment for attempted theft of a slave.") || ($slaves[$i].origin is "She is an enslaved Daughter of Liberty.")>>
-		<<set $legendaryAbolitionistID to $slaves[$i].ID>>
+	<<if ($legendaryAbolitionistID == 0) && ($slaves[_i].devotion > 95) && ($slaves[_i].prestige == 0)>>
+	<<if ($slaves[_i].origin is "You sentenced her to enslavement as a punishment for attempted theft of a slave.") || ($slaves[_i].origin is "She is an enslaved Daughter of Liberty.")>>
+		<<set $legendaryAbolitionistID to $slaves[_i].ID>>
 	<</if>>
 	<</if>>
 <</if>>
@@ -46,27 +34,30 @@
 <<if ($masterSuiteSlaves > 0)>>
 
 <<set $masterSuiteAverageEnergy to $masterSuiteAverageEnergy/$masterSuiteSlaves>>
-<<set $masterSuiteAverageMilk to $masterSuiteAverageMilk/$masterSuiteSlaves>>
-<<set $masterSuiteAverageCum to $masterSuiteAverageCum/$masterSuiteSlaves>>
-<<set $masterSuiteAverageDick to $masterSuiteAverageDick/$masterSuiteSlaves>>
-<<set $masterSuiteAveragePreg to $masterSuiteAveragePreg/$masterSuiteSlaves>>
-<<set $masterSuiteAverageDom to $masterSuiteAverageDom/$masterSuiteSlaves>>
-<<set $masterSuiteAverageSadism to $masterSuiteAverageSadism/$masterSuiteSlaves>>
+<<set _masterSuiteAverageMilk to _masterSuiteAverageMilk/$masterSuiteSlaves>>
+<<set _masterSuiteAverageCum to _masterSuiteAverageCum/$masterSuiteSlaves>>
+<<set _masterSuiteAverageDick to _masterSuiteAverageDick/$masterSuiteSlaves>>
+<<set _masterSuiteAveragePreg to _masterSuiteAveragePreg/$masterSuiteSlaves>>
+<<set _masterSuiteAverageDom to _masterSuiteAverageDom/$masterSuiteSlaves>>
+<<set _masterSuiteAverageSadism to _masterSuiteAverageSadism/$masterSuiteSlaves>>
 
 <<if $seeImages == 1>><br style="clear:both" /><</if>>
-''There<<if ($masterSuiteSlaves == 1)>>is one slave<<else>>are $masterSuiteSlaves slaves<</if>>
+''There <<if ($masterSuiteSlaves == 1)>>is one slave<<else>>are $masterSuiteSlaves slaves<</if>>
 seeing to your pleasure in the master suite.'' Such sexual opulence @@color:green;improves@@ your reputation.
 <<if ($arcologies[0].FSEgyptianRevivalist > 0) && ($masterSuiteSlaves >= 5)>>
 	Society @@color:green;approves@@ of your keeping a large number of women, which advances the Egyptian revivalist ideal of multiple concubinage.
 	<<set $repGain += 0.2*$masterSuiteSlaves*$FSSingleSlaveRep*($arcologies[0].FSEgyptianRevivalist/$FSLockinLevel)>>
-<<set $arcologies[0].FSEgyptianRevivalist += 0.01*$masterSuiteSlaves*$FSSingleSlaveRep>>
+	<<set $arcologies[0].FSEgyptianRevivalist += 0.01*$masterSuiteSlaves*$FSSingleSlaveRep>>
 <</if>>
-<<if ($masterSuitePregnantSlaves >= 1)>>
+<<if (_masterSuitePregnantSlaves >= 1)>>
 	The suite is supporting the pregnancies of the slaves
-	<<if ($masterSuitePregnancyFertilityDrugs == 1 || $masterSuiteHyperPregnancy == 1) && ($masterSuitePregnancyFertilitySupplements == 1)>>
-	within, and is providing them with fertility drugs and supplements to encourage impregnation.
-	<<elseif ($masterSuitePregnancyFertilityDrugs == 1 || $masterSuiteHyperPregnancy == 1)>>
-	within, and is providing them with fertility drugs to encourage impregnation.
+	<<if ($masterSuitePregnancyFertilityDrugs == 1 || $masterSuiteHyperPregnancy == 1)>>
+		within, and is providing them with fertility drugs
+		<<if ($masterSuitePregnancyFertilitySupplements == 1)>>
+		and supplements to encourage impregnation.
+		<<else>>
+		to encourage impregnation.
+		<</if>>
 	<<else>>
 	within.
 	<</if>>
@@ -89,10 +80,10 @@ The level of sexual energy in the suite is
 	<<else>>
 	relatively normal; the girls lounging in the fuckpit get each other off when they feel like it.
 	<</if>>
-	<<if $masterSuiteAverageCum > 4>>
+	<<if _masterSuiteAverageCum > 4>>
 	Unless it's right after an automated cleaning, everything in the fuckpit is spattered with cum.
 	<</if>>
-	<<if $masterSuiteAverageMilk > 4000>>
+	<<if _masterSuiteAverageMilk > 4000>>
 	There's so much lactation going on that the lowest level of the fuckpit is a pool of milk.
 	<</if>>
 <<else>>
@@ -100,53 +91,53 @@ The level of sexual energy in the suite is
 <</if>>
 <</if>>
 
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "serve in the master suite") || ($slaves[$i].assignment is "be your Concubine")>>
-
+<<for _i = 0; _i < _SL; _i++>>
+<<if ($slaves[_i].assignment is "serve in the master suite") || ($slaves[_i].assignment is "be your Concubine")>>
+<<set $i = _i>>
 <<silently>><<display "SA please you">><</silently>>
 
-<<if ($slaves[$i].assignment is "serve in the master suite")>>
-	<<if $verboseDescriptions == 1>><br><br>''__@@color:pink;$slaves[$i].slaveName@@__'' sees to your pleasure in the master suite.<</if>>
+<<if ($slaves[_i].assignment is "serve in the master suite")>>
+	<<if $verboseDescriptions == 1>><br><br>''__@@color:pink;$slaves[_i].slaveName@@__'' sees to your pleasure in the master suite.<</if>>
 	<<if ($masterSuiteUpgradeLuxury == 1)>>
-	<<if ($slaves[$i].devotion <= 95)>>
-		<<set $slaves[$i].devotion += 2>>
+	<<if ($slaves[_i].devotion <= 95)>>
+		<<set $slaves[_i].devotion += 2>>
 	<</if>>
 	<<if $masterSuiteDecoration != "standard">>
-		<<set $slaves[$i].devotion += 1>>
+		<<set $slaves[_i].devotion += 1>>
 	<</if>>
-	<<if ($slaves[$i].trust < 60)>>
-		<<set $slaves[$i].trust += 1>>
+	<<if ($slaves[_i].trust < 60)>>
+		<<set $slaves[_i].trust += 1>>
 	<</if>>
 	<<elseif ($masterSuiteUpgradeLuxury is 2)>>
-	<<if ($slaves[$i].energy > 90)>>
-		<<if ($slaves[$i].devotion <= 95)>>
-		<<set $slaves[$i].devotion += 2>>
+	<<if ($slaves[_i].energy > 90)>>
+		<<if ($slaves[_i].devotion <= 95)>>
+		<<set $slaves[_i].devotion += 2>>
 		<</if>>
-		<<if ($slaves[$i].trust <= 95)>>
-		<<set $slaves[$i].trust += 2>>
+		<<if ($slaves[_i].trust <= 95)>>
+		<<set $slaves[_i].trust += 2>>
 		<</if>>
 	<<else>>
-		<<if ($slaves[$i].devotion <= 60)>>
-		<<set $slaves[$i].devotion += 1>>
+		<<if ($slaves[_i].devotion <= 60)>>
+		<<set $slaves[_i].devotion += 1>>
 		<</if>>
-		<<if ($slaves[$i].trust < 60)>>
-		<<set $slaves[$i].trust += 1>>
+		<<if ($slaves[_i].trust < 60)>>
+		<<set $slaves[_i].trust += 1>>
 		<</if>>
 	<</if>>
 	<<else>>
-	<<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
-		<<set $slaves[$i].devotion -= 2>>
-		<<set $slaves[$i].trust -= 5>>
-	<<elseif ($slaves[$i].devotion <= 60)>>
-		<<set $slaves[$i].devotion += 2>>
-	<<elseif ($slaves[$i].devotion > 60)>>
-		<<set $slaves[$i].devotion -= 2>>
+	<<if ($slaves[_i].devotion <= 20) && ($slaves[_i].trust > -20)>>
+		<<set $slaves[_i].devotion -= 2, $slaves[_i].trust -= 5>>
+	<<elseif ($slaves[_i].devotion <= 60)>>
+		<<set $slaves[_i].devotion += 2>>
+	<<elseif ($slaves[_i].devotion > 60)>>
+		<<set $slaves[_i].devotion -= 2>>
 	<</if>>
-	<<if ($slaves[$i].trust < 60)>>
-		<<set $slaves[$i].trust += 1>>
+	<<if ($slaves[_i].trust < 60)>>
+		<<set $slaves[_i].trust += 1>>
 	<</if>>
 	<</if>>
 <<else>>
+	<<set $Concubine = $slaves[_i], _CCB = _i>>
 	<<if $verboseDescriptions == 1>><br><br><</if>>''Your concubine $Concubine.slaveName is serving you in $masterSuiteName.'' More than any other slave, her sexual brilliance and physical appeal are @@color:green;critical@@ to your reputation.
 	<<if ($Concubine.career is "an arcology owner")>>
 	She was once your rival, and your relationship is widely thought to be @@color:green;the perfect modern romance.@@
@@ -177,112 +168,117 @@ The level of sexual energy in the suite is
 	<<if $verboseDescriptions == 1>>Many citizens <<if $Concubine.publicCount > 10>>remember having had her themselves, and <</if>>@@color:green;respectfully@@ envy you her exclusive company.<</if>>
 	<<set $repGain += 25>>
 	<</if>>
-	<<if $slaves[$i].devotion <= 20>>
+	<<if $slaves[_i].devotion <= 20>>
 	<<if $masterSuiteUpgradeLuxury > 0>>
-		<<set $slaves[$i].devotion += 4>>
-		<<set $slaves[$i].trust += 4>>
+		<<set $slaves[_i].devotion += 4, $slaves[_i].trust += 4>>
 	<<else>>
-		<<set $slaves[$i].devotion += 2>>
-		<<set $slaves[$i].trust += 2>>
+		<<set $slaves[_i].devotion += 2, $slaves[_i].trust += 2>>
 	<</if>>
 	<</if>>
 	<<if $masterSuiteDecoration != "standard">>
-	<<set $slaves[$i].devotion += 1>>
+	<<set $slaves[_i].devotion += 1>>
 	<</if>>
 <</if>>
 
 <<if $masterSuiteUpgradeLuxury is 2>>
 
-<<fetishChangeChance $slaves[$i]>>
-<<if $slaves[$i].trust > -20>>
-<<if $slaves[$i].devotion > -10>>
-<<if $slaves[$i].fetishStrength <= 95>>
+<<if ($slaves[_i].trust > -20) && ($slaves[_i].devotion > -10) && ($slaves[_i].fetishStrength <= 95)>>
 <<if $masterSuiteAverageEnergy > random(50,90)>>
-	<<if ($masterSuiteAverageMilk > 2000) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "boobs">>
-		<<if $verboseDescriptions == 1>>Her<<else>>$slaves[$i].slaveName's<</if>> @@color:lightcoral;boob fetish is strengthened@@ by the constant availability of milky nipples for her to play with.
-		<<set $slaves[$i].fetishStrength += 4>>
+	<<if $verboseDescriptions == 1>>
+		<<set _Verb = "She">>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;acquires a boob fetish@@ after spending a lot of time in the fuckpit drinking from her fellow fucktoys' tits.
-		<<set $slaves[$i].fetish to "boobs">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageDick > 3) && ($slaves[$i].anus > 0) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "buttslut">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;sinks farther into anal pleasure,@@ since she spends her time in the fuckpit with at least one of the many available cocks up her butt.
-		<<set $slaves[$i].fetishStrength += 4>>
+		<<set _Verb = $slaves[_i].slaveName>>
+	<</if>>
+	<<fetishChangeChance $slaves[_i]>>
+	<<if (_masterSuiteAverageMilk > 2000) && ($fetishChangeChance > random(0,50))>>
+	<<if $slaves[_i].fetish is "boobs">>
+		<<if $verboseDescriptions == 1>>Her<<else>>$slaves[_i].slaveName's<</if>> @@color:lightcoral;boob fetish is strengthened@@ by the constant availability of milky nipples for her to play with.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;acquires an anal fetish@@ after helplessly orgasming at the mercy of your many fucktoys eager to shove their big stiff penises up her ass.
-		<<set $slaves[$i].fetish to "buttslut">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageCum > 3) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "cumslut">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;sinks farther into cum addiction,@@ since she spends her time in the fuckpit eagerly sucking down ejaculate, straight from the many sources.
-		<<set $slaves[$i].fetishStrength += 4>>
+		<<if $verboseDescriptions == 1>>She<<else>>$slaves[_i].slaveName<</if>> @@color:lightcoral;acquires a boob fetish@@ after spending a lot of time in the fuckpit drinking from her fellow fucktoys' tits.
+		<<set $slaves[_i].fetish to "boobs", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAverageDick > 3) && ($slaves[_i].anus > 0) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "buttslut">>
+		@@color:lightcoral;sinks farther into anal pleasure,@@ since she spends her time in the fuckpit with at least one of the many available cocks up her butt.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;acquires an oral fixation@@ after orally servicing your many fucktoys eager to blow their loads down her throat.
-		<<set $slaves[$i].fetish to "cumslut">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAveragePreg > 10) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "pregnancy">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;sinks farther into pregnancy obession,@@ since she never wants for a pregnant girl to make love to.
-		<<set $slaves[$i].fetishStrength += 4>>
+		@@color:lightcoral;acquires an anal fetish@@ after helplessly orgasming at the mercy of your many fucktoys eager to shove their big stiff penises up her ass.
+		<<set $slaves[_i].fetish to "buttslut", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAverageCum > 3) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "cumslut">>
+		@@color:lightcoral;sinks farther into cum addiction,@@ since she spends her time in the fuckpit eagerly sucking down ejaculate, straight from the many sources.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;acquires an pregnancy fetish,@@ since many of her sexual partners in the fuckpit are heavily pregnant.
-		<<set $slaves[$i].fetish to "pregnancy">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageDom < 50) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "dom">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes more dominant,@@ since there are so many subs in the fuckpit who beg her to fuck them hard.
-		<<set $slaves[$i].fetishStrength += 4>>
+		@@color:lightcoral;acquires an oral fixation@@ after orally servicing your many fucktoys eager to blow their loads down her throat.
+		<<set $slaves[_i].fetish to "cumslut", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAveragePreg > 10) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "pregnancy">>
+		@@color:lightcoral;sinks farther into pregnancy obession,@@ since she never wants for a pregnant girl to make love to.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes sexually dominant@@ after having fun satisfying the many submissive fucktoys in the fuckpit who beg her to top them.
-		<<set $slaves[$i].fetish to "dom">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageDom > 50) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "submissive">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes even more submissive,@@ since there are so many doms in the fuckpit that she's often used by more than one at once.
-		<<set $slaves[$i].fetishStrength += 4>>
+		@@color:lightcoral;acquires an pregnancy fetish,@@ since many of her sexual partners in the fuckpit are heavily pregnant.
+		<<set $slaves[_i].fetish to "pregnancy", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAverageDom < 50) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "dom">>
+		@@color:lightcoral;becomes more dominant,@@ since there are so many subs in the fuckpit who beg her to fuck them hard.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes sexually submissive@@ after the many dominant slaves in the fuckpit hold her down and use her for their pleasure.
-		<<set $slaves[$i].fetish to "sub">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageSadism < 50) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "sadist">>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes more sadistic,@@ since there are so many girls in the fuckpit who will do anything for her if she'll only spank them.
-		<<set $slaves[$i].fetishStrength += 4>>
+		@@color:lightcoral;becomes sexually dominant@@ after having fun satisfying the many submissive fucktoys in the fuckpit who beg her to top them.
+		<<set $slaves[_i].fetish to "dom", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAverageDom > 50) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "submissive">>
+		@@color:lightcoral;becomes even more submissive,@@ since there are so many doms in the fuckpit that she's often used by more than one at once.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;becomes a bit of a sadist@@ after she notices that so many of her fellow fucktoys cum harder if she gives them a good slap.
-		<<set $slaves[$i].fetish to "sadist">>
-		<<set $slaves[$i].fetishStrength = 65>>
-	<</if>>
-	<<elseif ($masterSuiteAverageSadism > 50) && ($fetishChangeChance > random(0,50))>>
-	<<if $slaves[$i].fetish is "masochist">>
-		<<if $verboseDescriptions == 1>>Her<<else>>$slaves[$i].slaveName's<</if>> @@color:lightcoral;pain addiction deepens,@@ since the fuckpit is full of ladies happy to fuck her while she screams.
-		<<set $slaves[$i].fetishStrength += 4>>
+		@@color:lightcoral;becomes sexually submissive@@ after the many dominant slaves in the fuckpit hold her down and use her for their pleasure.
+		<<set $slaves[_i].fetish to "sub", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<<elseif (_masterSuiteAverageSadism < 50) && ($fetishChangeChance > random(0,50))>>
+	_Verb
+	<<if $slaves[_i].fetish is "sadist">>
+		@@color:lightcoral;becomes more sadistic,@@ since there are so many girls in the fuckpit who will do anything for her if she'll only spank them.
+		<<set $slaves[_i].fetishStrength += 4>>
 	<<else>>
-		<<if $verboseDescriptions == 1>>She<<else>>$slaves[$i].slaveName<</if>> @@color:lightcoral;learns masochism@@ after experiencing many orgasms under the exquisite sexual torture of the sadists in the fuckpit.
-		<<set $slaves[$i].fetish to "masochist">>
-		<<set $slaves[$i].fetishStrength = 65>>
+		@@color:lightcoral;becomes a bit of a sadist@@ after she notices that so many of her fellow fucktoys cum harder if she gives them a good slap.
+		<<set $slaves[_i].fetish to "sadist", $slaves[_i].fetishStrength = 65>>
 	<</if>>
+	<<elseif (_masterSuiteAverageSadism > 50) && ($fetishChangeChance > random(0,50))>>
+	<<if $slaves[_i].fetish is "masochist">>
+		<<if $verboseDescriptions == 1>>Her<<else>>$slaves[_i].slaveName's<</if>> @@color:lightcoral;pain addiction deepens,@@ since the fuckpit is full of ladies happy to fuck her while she screams.
+		<<set $slaves[_i].fetishStrength += 4>>
+	<<else>>
+		<<if $verboseDescriptions == 1>>She<<else>>$slaves[_i].slaveName<</if>> @@color:lightcoral;learns masochism@@ after experiencing many orgasms under the exquisite sexual torture of the sadists in the fuckpit.
+		<<set $slaves[_i].fetish to "masochist", $slaves[_i].fetishStrength = 65>>
+	<</if>>
+	<</if>>
+	<<if $slaves[_i].energy > 40 && $slaves[_i].energy < 95>>
+		Being a constant part of the fuckpit orgy @@color:lime;greatly heightens her libido.@@
+		<<set $slaves[_i].energy += 2>>
 	<</if>>
-<</if>>
-<</if>>
-<<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
-	Being a constant part of the fuckpit orgy @@color:lime;greatly heightens her libido.@@
-	<<set $slaves[$i].energy += 2>>
-<</if>>
 <</if>>
 <</if>>
 
 <</if>>
 
 <<if $verboseDescriptions == 1>>
+	<<if $slaves[_i].choosesOwnClothes == 1>>
+	<<display "SA chooses own clothes">>
+	<<if ($slaves[_i].devotion <= 20)>>
+		<<set $slaves[_i].devotion -= 5>>
+	<<else>>
+		<<set $slaves[_i].devotion += 1>>
+	<</if>>
+	<</if>>
 	<<display "SA diet">>
 	<<display "SA long term effects">>
 	<<display "SA drugs">>
@@ -290,6 +286,14 @@ The level of sexual energy in the suite is
 	<<display "SA rivalries">>
 <<else>>
 	<<silently>>
+	<<if $slaves[_i].choosesOwnClothes == 1>>
+	<<display "SA chooses own clothes">>
+	<<if ($slaves[_i].devotion <= 20)>>
+		<<set $slaves[_i].devotion -= 5>>
+	<<else>>
+		<<set $slaves[_i].devotion += 1>>
+	<</if>>
+	<</if>>
 	<<display "SA diet">>
 	<<display "SA long term effects">>
 	<<display "SA drugs">>
@@ -297,53 +301,53 @@ The level of sexual energy in the suite is
 	<<display "SA rivalries">>
 	<</silently>>
 <</if>>
-<<if $slaves[$i].health < 80>>
+<<if $slaves[_i].health < 80>>
 	<<if $masterSuiteUpgradeLuxury == 1>>
-	<<set $slaves[$i].health += 20>>
+	<<set $slaves[_i].health += 20>>
 	<<else>>
-	<<set $slaves[$i].health += 10>>
+	<<set $slaves[_i].health += 10>>
 	<</if>>
 <</if>>
 
 <<if $masterSuiteUpgradePregnancy == 1>>
 	/* If they're not on fertility drugs and the toggle is active, stick them on (if they can take them). Otherwise take them off. */
-	<<if ($masterSuitePregnancyFertilityDrugs == 1) && ($slaves[$i].drugs != "fertility drugs") && isFertile($slaves[$i]) and ($slaves[$i].assignment is "serve in the master suite" or $slaves[$i].assignment is "be your Concubine")>>
-	<<set $slaves[$i].drugs to "fertility drugs">>
-	<<elseif ($masterSuiteHyperPregnancy == 1) && ($slaves[$i].drugs != "super fertility drugs") && isFertile($slaves[$i]) and ($slaves[$i].assignment is "serve in the master suite" or $slaves[$i].assignment is "be your Concubine") && $slaves[$i].breedingMark != 1>>
-	<<set $slaves[$i].drugs to "super fertility drugs">>
-	<<elseif ($masterSuitePregnancyFertilityDrugs == 0) && ($slaves[$i].drugs is "fertility drugs") && ($slaves[$i].assignment is "serve in the master suite" or $slaves[$i].assignment is "be your Concubine")>>    
-	<<set $slaves[$i].drugs to "no drugs">>
+	<<if ($masterSuitePregnancyFertilityDrugs == 1) && ($slaves[_i].drugs != "fertility drugs") && isFertile($slaves[_i]) and ($slaves[_i].assignment is "serve in the master suite" or $slaves[_i].assignment is "be your Concubine")>>
+		<<set $slaves[_i].drugs = "fertility drugs">>
+	<<elseif ($masterSuiteHyperPregnancy == 1) && ($slaves[_i].drugs != "super fertility drugs") && isFertile($slaves[_i]) and ($slaves[_i].assignment is "serve in the master suite" or $slaves[_i].assignment is "be your Concubine")>>
+		<<set $slaves[_i].drugs to "super fertility drugs">>
+	<<elseif ((($masterSuitePregnancyFertilityDrugs == 0) && ($slaves[_i].drugs is "fertility drugs")) || (($masterSuiteHyperPregnancy == 0) && ($slaves[_i].drugs is "super fertility drugs"))) && ($slaves[_i].assignment is "serve in the master suite" or $slaves[_i].assignment is "be your Concubine")>>
+		<<set $slaves[_i].drugs to "no drugs">>
 	<</if>>
 	/* We don't know they're pregnant for a month or so by game logic */
-	<<if ($slaves[$i].preg >= 4)>>
+	<<if ($slaves[_i].preg >= 4)>>
 	/* Once we know they're knocked up, get the counter going. */
-	<<set $masterSuitePregnantSlaves += 1>>
+	<<set _masterSuitePregnantSlaves += 1>>
 	/* Don't know about twins/triplets etc until 10 weeks. Once we do, get the counter going */
-	<<if ($slaves[$i].pregType > 1) && ($slaves[$i].preg >= 10)>>
-		<<set $masterSuitePregnantSlavesMultiple += 1>>
+	<<if ($slaves[_i].pregType > 1) && ($slaves[_i].preg >= 10)>>
+		<<set _masterSuitePregnantSlavesMultiple += 1>>
 	<</if>>
 	/* If they're preggo and in the upgraded suite, give them extra devotion. More if they're being given lighter duties. */
-	<<if ($slaves[$i].devotion <= 100)>>
+	<<if ($slaves[_i].devotion <= 100)>>
 	<<if ($masterSuitePregnancySlaveLuxuries == 0)>>
-		<<set $slaves[$i].devotion += 2>>
+		<<set $slaves[_i].devotion += 2>>
 	<<else>>
-		<<set $slaves[$i].devotion += 5>>
+		<<set $slaves[_i].devotion += 5>>
 	<</if>>
 	<</if>>
 	/* If they're preggo and in the upgraded suite, give them extra trust. More if they're being given lighter duties. */
-	<<if ($slaves[$i].trust <= 100)>>
+	<<if ($slaves[_i].trust <= 100)>>
 	<<if ($masterSuitePregnancySlaveLuxuries == 0)>>
-		<<set $slaves[$i].trust += 2>>
+		<<set $slaves[_i].trust += 2>>
 	<<else>>
-		<<set $slaves[$i].trust += 5>>
+		<<set $slaves[_i].trust += 5>>
 	<</if>>
 	<</if>>
 	/* If they're preggo and in the upgraded suite, give them extra health. More if they're being given lighter duties. */
-	<<if ($slaves[$i].health < 100)>>
-	<<if ($slaves[$i].health < 100) && ($masterSuitePregnancySlaveLuxuries == 0)>>
-		<<set $slaves[$i].health += 15>>
+	<<if ($slaves[_i].health < 100)>>
+	<<if ($masterSuitePregnancySlaveLuxuries == 0)>>
+		<<set $slaves[_i].health += 15>>
 	<<else>>
-		<<set $slaves[$i].health += 25>>
+		<<set $slaves[_i].health += 25>>
 	<</if>>
 	<</if>>
 	<</if>>
@@ -352,6 +356,10 @@ The level of sexual energy in the suite is
 <</if>>
 <</for>>
 
+<<if _CCB != -1>>
+	<<set $Concubine = $slaves[_CCB]>>
+<</if>>
+
 <<if $arcologies[0].FSRestart != "unset">>
 <<if $propOutcome != 1>>
 <<if $masterSuitePregnantSlaves > 0>>
diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw
index ed4ff53b27c8cd8f60e6216e0154eb1672df0276..69aedcb06e75ad7e9d20d81c3f9c6acec4ba295b 100644
--- a/src/uncategorized/options.tw
+++ b/src/uncategorized/options.tw
@@ -141,6 +141,17 @@ Assignment performance vignettes on the end week report are
 	@@color:cyan;ENABLED@@. [[Disable|Options][$showVignettes to 0]]
 <</if>>
 
+/* Accordion 000-250-006 */
+<br />
+	Accordion effects on weekly reports are 
+<<if ndef $useAccordion>>
+	@@color:red;DISABLED@@. [[Enable|Options][$useAccordion to 1]]
+<<else>>
+	@@color:cyan;ENABLED@@. [[Disable|Options][unset $useAccordion]]
+<</if>>
+/* Accordion 000-250-006 */
+
+
 <br>
 
 <<if $verboseDescriptions == 1>>
diff --git a/src/uncategorized/pePitFight.tw b/src/uncategorized/pePitFight.tw
index 562e1bd88386a1e9572b0f8c489011c848df6185..b81cd685dc73e6151c3378a263bb5af9cfe8a083 100644
--- a/src/uncategorized/pePitFight.tw
+++ b/src/uncategorized/pePitFight.tw
@@ -38,11 +38,11 @@ Across the ring, her opponent's owner nods civilly to you and examines $activeSl
 	Her huge muscles are an intimidating sight, but may hinder her flexibility.
 <<elseif $activeSlave.muscles > 30>>
 	Her muscles are a trim and powerful sight.
-<<elseif $slaves[$i].muscles < -95>>
+<<elseif $activeSlave.muscles < -95>>
 	She can barely stand, let alone ready her weapon. Her feeble attempts elicit a roar of laughter from the spectators.
-<<elseif $slaves[$i].muscles < -30>>
+<<elseif $activeSlave.muscles < -30>>
 	She struggles to raise her weapon. Her feeble attempts elicit a roar of laughter from the spectators.
-<<elseif $slaves[$i].muscles < -5>>
+<<elseif $activeSlave.muscles < -5>>
 	She is rather unfit, she will likely be outmatched by near any real opponent.
 <</if>>
 
diff --git a/src/uncategorized/policies.tw b/src/uncategorized/policies.tw
index f4f63fe009dd5b2f2774cc6be7eb9abf7b64b344..dfb5d22daeae6be5f04350ffe2be76095ecf839e 100644
--- a/src/uncategorized/policies.tw
+++ b/src/uncategorized/policies.tw
@@ -60,22 +60,22 @@
 
 <<if $BasicBeautySMR == 1>>
 	<br>''Basic Beauty Standards:'' no unattractive slaves may be sold in the slave markets.
-	[[Repeal|Policies][$BasicBeautySMR to 0, $minimumSlaveCost -= 3000]]
+	[[Repeal|Policies][$BasicBeautySMR = 0, $minimumSlaveCost -= 3000]]
 <</if>>
 
 <<if $QualityBeautySMR == 1>>
 	<br>''Quality Beauty Standards:'' only attractive slaves may be sold in the slave markets.
-	[[Repeal|Policies][$QualityBeautySMR to 0, $minimumSlaveCost -= 10000]]
+	[[Repeal|Policies][$QualityBeautySMR = 0, $minimumSlaveCost -= 10000]]
 <</if>>
 
 <<if $BasicIntelligenceSMR == 1>>
 	<br>''Basic Intelligence Standards:'' no stupid slaves may be sold in the slave markets.
-	[[Repeal|Policies][$BasicIntelligenceSMR to 0, $minimumSlaveCost -= 2000]]
+	[[Repeal|Policies][$BasicIntelligenceSMR = 0, $minimumSlaveCost -= 2000]]
 <</if>>
 
 <<if $QualityIntelligenceSMR == 1>>
 	<br>''Quality Intelligence Standards:'' only intelligent slaves may be sold in the slave markets.
-	[[Repeal|Policies][$QualityIntelligenceSMR to 0, $minimumSlaveCost -= 10000]]
+	[[Repeal|Policies][$QualityIntelligenceSMR = 0, $minimumSlaveCost -= 10000]]
 <</if>>
 
 <</if>>
@@ -84,32 +84,32 @@
 
 <<if $OralEncouragement == 1>>
 	<br>''Oral Sex Encouragement:'' you are using your personal influence to make blowjobs the most fashionable sex act in the arcology.
-	[[Repeal|Policies][$OralEncouragement to 0]]
+	[[Repeal|Policies][$OralEncouragement = 0]]
 <</if>>
 
 <<if $OralDiscouragement == 1>>
 	<br>''Anti-Oral Campaign:'' you are using your personal influence to denigrate oral sex.
-	[[Repeal|Policies][$OralDiscouragement to 0]]
+	[[Repeal|Policies][$OralDiscouragement = 0]]
 <</if>>
 
 <<if $VaginalEncouragement == 1>>
 	<br>''Vaginal Sex Encouragement:'' you are using your personal influence to keep pussies the most fashionable holes in the arcology.
-	[[Repeal|Policies][$VaginalEncouragement to 0]]
+	[[Repeal|Policies][$VaginalEncouragement = 0]]
 <</if>>
 
 <<if $VaginalDiscouragement == 1>>
 	<br>''Anti-Vaginal Campaign:'' you are using your personal influence to communicate disapproval of vaginal sex.
-	[[Repeal|Policies][$VaginalDiscouragement to 0]]
+	[[Repeal|Policies][$VaginalDiscouragement = 0]]
 <</if>>
 
 <<if $AnalEncouragement == 1>>
 	<br>''Anal Sex Encouragement:'' you are using your personal influence to make anuses the most fashionable holes in the arcology.
-	[[Repeal|Policies][$AnalEncouragement to 0]]
+	[[Repeal|Policies][$AnalEncouragement = 0]]
 <</if>>
 
 <<if $AnalDiscouragement == 1>>
 	<br>''Anti-Anal Campaign:'' you are using your personal influence to communicate disgust with putting things up the butt.
-	[[Repeal|Policies][$AnalDiscouragement to 0]]
+	[[Repeal|Policies][$AnalDiscouragement = 0]]
 <</if>>
 
 <</if>>
@@ -118,52 +118,52 @@
 
 <<if $ProRefugees == 1>>
 	<br>''Encourage Refugee Servitude:'' the image of slavery in your arcology is being softened, encouraging old world refugees to consider becoming menial slaves.
-	[[Repeal|Policies][$ProRefugees to 0]]
+	[[Repeal|Policies][$ProRefugees = 0]]
 <</if>>
 
 <<if $ProRecruitment == 1>>
 	<br>''Encourage Self-Enslavement:'' your image as a slaveowner is being softened, encouraging the desperate to consider coming to you for enslavement.
-	[[Repeal|Policies][$ProRecruitment to 0]]
+	[[Repeal|Policies][$ProRecruitment = 0]]
 <</if>>
 
 <<if $ProImmigrationCash == 1>>
 	<br>''Immigration Promotion:'' you are offering citizen immigrants a generous promotion.
-	[[Repeal|Policies][$ProImmigrationCash to 0]]
+	[[Repeal|Policies][$ProImmigrationCash = 0]]
 <</if>>
 
 <<if $ProImmigrationRep == 1>>
 	<br>''Welcome Program:'' you are using your personal influence to encourage wealthy people to immigrate.
-	[[Repeal|Policies][$ProImmigrationRep to 0]]
+	[[Repeal|Policies][$ProImmigrationRep = 0]]
 <</if>>
 
 <<if $AntiImmigrationCash == 1>>
 	<br>''Immigrant Information Brokerage:'' you are covertly selling information on troubled potential immigrants to your arcology.
-	[[Repeal|Policies][$AntiImmigrationCash to 0]]
+	[[Repeal|Policies][$AntiImmigrationCash = 0]]
 <</if>>
 
 <<if $AntiImmigrationRep == 1>>
 	<br>''Citizen Input on Immigration:'' you are selectively turn away potential immigrants to the arcology based on the recommendations of citizens.
-	[[Repeal|Policies][$AntiImmigrationRep to 0]]
+	[[Repeal|Policies][$AntiImmigrationRep = 0]]
 <</if>>
 
 <<if $ProEnslavementCash == 1>>
 	<br>''Enslavement Kickbacks:'' you are taking kickbacks in return for turning a blind eye to enslavement of poor citizens.
-	[[Repeal|Policies][$ProEnslavementCash to 0]]
+	[[Repeal|Policies][$ProEnslavementCash = 0]]
 <</if>>
 
 <<if $ProEnslavementRep == 1>>
 	<br>''Covert Upstart Enslavement:'' you are offering prominent citizens your tacit assistance in enslaving rivals.
-	[[Repeal|Policies][$ProEnslavementRep to 0]]
+	[[Repeal|Policies][$ProEnslavementRep = 0]]
 <</if>>
 
 <<if $AntiEnslavementCash == 1>>
 	<br>''Poor Citizen Relief:'' you are offering limited emergency assistance to poor citizens in danger of being enslaved.
-	[[Repeal|Policies][$AntiEnslavementCash to 0]]
+	[[Repeal|Policies][$AntiEnslavementCash = 0]]
 <</if>>
 
 <<if $AntiEnslavementRep == 1>>
 	<br>''Charity Promotion Efforts:'' you are using your personal influence to discourage enslavement of citizens.
-	[[Repeal|Policies][$AntiEnslavementRep to 0]]
+	[[Repeal|Policies][$AntiEnslavementRep = 0]]
 <</if>>
 
 <</if>>
@@ -172,37 +172,37 @@
 
 <<if $alwaysSubsidizeGrowth == 1>>
 	<br>''Economic Growth Subsidy:'' promising new businesses are offered generous subsidies, driving arcology prosperity.
-	[[Repeal|Policies][$alwaysSubsidizeGrowth to 0]]
+	[[Repeal|Policies][$alwaysSubsidizeGrowth = 0]]
 <</if>>
 
 <<if $alwaysSubsidizeRep == 1>>
 	<br>''Self-Promotion Program:'' subtle paid advertising communicates your good side to the public.
-	[[Repeal|Policies][$alwaysSubsidizeRep to 0]]
+	[[Repeal|Policies][$alwaysSubsidizeRep = 0]]
 <</if>>
 
 <<if $CashForRep == 1>>
 	<br>''Business Generosity:'' you are doing your best to help your citizens, even when it disadvantages you personally.
-	[[Repeal|Policies][$CashForRep to 0]]
+	[[Repeal|Policies][$CashForRep = 0]]
 <</if>>
 
 <<if $RepForCash == 1>>
 	<br>''Business Selfishness:'' you are leveraging your position as arcology owner for money, even when it disadvantages citizens.
-	[[Repeal|Policies][$RepForCash to 0]]
+	[[Repeal|Policies][$RepForCash = 0]]
 <</if>>
 
 <<if $Cash4Babies == 1>>
-  <br>''Free Trade of Slave Babies:'' newborn slave children are now eligible to be sold rather than entrusted to a slave orphanage.
-  [[Repeal|Policies][$Cash4Babies to 0]]
+	<br>''Free Trade of Slave Babies:'' newborn slave children are now eligible to be sold rather than entrusted to a slave orphanage.
+	[[Repeal|Policies][$Cash4Babies = 0]]
 <</if>>
 
 <<if $PAPublic == 1>>
 	<br>''Public Personal Assistant:'' $assistantName is part of your public image.
-	[[Repeal|Policies][$PAPublic to 0]]
+	[[Repeal|Policies][$PAPublic = 0]]
 <</if>>
 
 <<if $CoursingAssociation == 1>>
 	<br>''Coursing Association:'' you are sponsoring a [[Coursing Association]] that will hold monthly races.
-	[[Repeal|Policies][$CoursingAssociation to 0]]
+	[[Repeal|Policies][$CoursingAssociation = 0]]
 <</if>>
 
 <</if>>
@@ -211,62 +211,62 @@
 
 <<if $TSS.subsidize == 1>>
 	<br>''The Slave School subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$TSS.subsidize to 0]]
+	[[Repeal|Policies][$TSS.subsidize = 0]]
 <</if>>
 
 <<if $TSS.subsidize == -1>>
 	<br>''Undermine The Slave School:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$TSS.subsidize to 0]]
+	[[Repeal|Policies][$TSS.subsidize = 0]]
 <</if>>
 
 <<if $GRI.subsidize == 1>>
 	<br>''The Growth Research Institute subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$GRI.subsidize to 0]]
+	[[Repeal|Policies][$GRI.subsidize = 0]]
 <</if>>
 
 <<if $GRI.subsidize == -1>>
 	<br>''Undermine the Growth Research Institute:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$GRI.subsidize to 0]]
+	[[Repeal|Policies][$GRI.subsidize = 0]]
 <</if>>
 
 <<if $SCP.subsidize == 1>>
 	<br>''St. Claver Preparatory subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$SCP.subsidize to 0]]
+	[[Repeal|Policies][$SCP.subsidize = 0]]
 <</if>>
 
 <<if $SCP.subsidize == -1>>
 	<br>''Undermine St. Claver Preparatory:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$SCP.subsidize to 0]]
+	[[Repeal|Policies][$SCP.subsidize = 0]]
 <</if>>
 
 <<if $LDE.subsidize == 1>>
 	<br>''L'Ecole des Enculees subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$LDE.subsidize to 0]]
+	[[Repeal|Policies][$LDE.subsidize = 0]]
 <</if>>
 
 <<if $LDE.subsidize == -1>>
 	<br>''Undermine L'Ecole des Enculees:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$LDE.subsidize to 0]]
+	[[Repeal|Policies][$LDE.subsidize = 0]]
 <</if>>
 
 <<if $TGA.subsidize == 1>>
 	<br>''The Gymnasium-Academy subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$TGA.subsidize to 0]]
+	[[Repeal|Policies][$TGA.subsidize = 0]]
 <</if>>
 
 <<if $TGA.subsidize == -1>>
 	<br>''Undermine the Gymnasium-Academy:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$TGA.subsidize to 0]]
+	[[Repeal|Policies][$TGA.subsidize = 0]]
 <</if>>
 
 <<if $TFS.subsidize == 1>>
 	<br>''Futanari Sisters subsidy:'' you are subsidizing this school's branch campus in your arcology.
-	[[Repeal|Policies][$TFS.subsidize to 0]]
+	[[Repeal|Policies][$TFS.subsidize = 0]]
 <</if>>
 
 <<if $TFS.subsidize == -1>>
 	<br>''Undermine the Futanari Sisters:'' you are covertly hurting this school's branch campus in your arcology.
-	[[Repeal|Policies][$TFS.subsidize to 0]]
+	[[Repeal|Policies][$TFS.subsidize = 0]]
 <</if>>
 
 <</if>>
@@ -282,103 +282,103 @@
 
 <<if $PhysicalRetirementAgePolicy == 1>>
 	<br>''Redefined Mandatory Retirement Age:'' you have set your arcology's standard retirement age for slave bodies at $retirementAge.
-	[[Repeal|Policies][$PhysicalRetirementAgePolicy to 0, $retirementAge to 45]]
+	[[Repeal|Policies][$PhysicalRetirementAgePolicy = 0, $retirementAge = 45]]
 <</if>>
 
 <<if $BioreactorRetirement == 1>>
 	<br>''Public Fluid Production Retirement:'' once reaching mandatory retirement age, slaves are converted for full-time milk<<if $seeDicks != 0>>, vaginal secretion, and semen<</if>> production.
-	[[Repeal|Policies][$BioreactorRetirement to 0]]
+	[[Repeal|Policies][$BioreactorRetirement = 0]]
 <<elseif $ArcadeRetirement == 1>>
 	<br>''Public Arcade Retirement:'' once reaching mandatory retirement age, slaves are placed in cheap public arcades to be used until useless.
-	[[Repeal|Policies][$ArcadeRetirement to 0]]
+	[[Repeal|Policies][$ArcadeRetirement = 0]]
 <<elseif $CitizenRetirement == 1>>
 	<br>''Citizen Retirement:'' all slaveowners are required to pay into accounts to support their slaves as lower-class citizens in retirement.
-	[[Repeal|Policies][$CitizenRetirement to 0, $SexMilestoneRetirement to 0, $MilkMilestoneRetirement to 0, $BirthsMilestoneRetirement to 0, $KillsMilestoneRetirement to 0]]
+	[[Repeal|Policies][$CitizenRetirement to 0, $SexMilestoneRetirement to 0, $MilkMilestoneRetirement to 0, $BirthsMilestoneRetirement to 0, $KillsMilestoneRetirement = 0]]
 <<else>>
 	<br>''Menial Retirement:'' in the absence of a clear slave retirement policy, overaged sex slaves will become menial slaves.
 <</if>>
 
 <<if $SexMilestoneRetirement == 1>>
 	<br>''Sexual Milestone Retirement:'' slaves will be rewarded with their freedom once they have been fucked $retirementSex times.
-	[[Repeal|Policies][$SexMilestoneRetirement to 0]]
+	[[Repeal|Policies][$SexMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementSex" $retirementSex "Policies">>
 <</if>>
 
 <<if $MilkMilestoneRetirement == 1>>
 	<br>''Productive Cow Retirement:'' slaves will be rewarded with their freedom once they have given $retirementMilk liters of milk.
-	[[Repeal|Policies][$MilkMilestoneRetirement to 0]]
+	[[Repeal|Policies][$MilkMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementMilk" $retirementMilk "Policies">>
 <</if>>
 
 <<if $BirthsMilestoneRetirement == 1>>
 	<br>''Fertile Breeder Retirement:'' slaves will be rewarded with their freedom once they add $retirementBirths new slaves to the population of $arcologies[0].name.
-	[[Repeal|Policies][$BirthsMilestoneRetirement to 0]]
+	[[Repeal|Policies][$BirthsMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementBirths" $retirementBirths "Policies">>
 <</if>>
 
 <<if $KillsMilestoneRetirement == 1>>
 	<br>''Champion Gladiatrix Retirement:'' slaves will be rewarded with their freedom once they have killed $retirementKills of their fellow slaves in the pit.
-	[[Repeal|Policies][$KillsMilestoneRetirement to 0]]
+	[[Repeal|Policies][$KillsMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementKills" $retirementKills "Policies">>
 <</if>>
 
 <<if $MixedMarriage == 1>>
 	<br>''Marriage between Owners and Slaves:'' you are providing a legal basis for citizens to marry their slaves without impacting their rights as slaveowners.
-	[[Repeal|Policies][$MixedMarriage to 0]]
+	[[Repeal|Policies][$MixedMarriage = 0]]
 <</if>>
 
 <<if ndef $arcologies[0].FSGenderFundamentalistLawBimbo>><<set $arcologies[0].FSGenderFundamentalistLawBimbo to 0>><</if>>
-<<if (($arcologies[0].FSSupremacistLawME + $arcologies[0].FSSupremacistSMR + $arcologies[0].FSSubjugationistLawME + $arcologies[0].FSSubjugationistSMR + $arcologies[0].FSGenderRadicalistLawBeauty + $arcologies[0].FSGenderRadicalistLawFuta + $arcologies[0].FSGenderRadicalistLawDicks + $arcologies[0].FSGenderFundamentalistLawBeauty + $arcologies[0].FSGenderFundamentalistLawBimbo + $arcologies[0].FSGenderFundamentalistSMR + $arcologies[0].FSPaternalistLaw + $arcologies[0].FSPaternalistSMR + $arcologies[0].FSDegradationistLaw + $arcologies[0].FSDegradationistSMR + $arcologies[0].FSBodyPuristLaw + $arcologies[0].FSBodyPuristSMR + $arcologies[0].FSTransformationFetishistSMR + $arcologies[0].FSYouthPreferentialistLaw + $arcologies[0].FSYouthPreferentialistSMR + $arcologies[0].FSMaturityPreferentialistLaw + $arcologies[0].FSMaturityPreferentialistSMR + $arcologies[0].FSSlimnessEnthusiastSMR + $arcologies[0].FSAssetExpansionistSMR + $arcologies[0].FSPastoralistLaw + $arcologies[0].FSPastoralistSMR + $arcologies[0].FSPhysicalIdealistSMR + $arcologies[0].FSChattelReligionistLaw + $arcologies[0].FSChattelReligionistSMR + $arcologies[0].FSRomanRevivalistLaw + $arcologies[0].FSRomanRevivalistSMR + $arcologies[0].FSEgyptianRevivalistLaw + $arcologies[0].FSEgyptianRevivalistSMR + $arcologies[0].FSEdoRevivalistLaw + $arcologies[0].FSEdoRevivalistSMR + $arcologies[0].FSArabianRevivalistLaw + $arcologies[0].FSArabianRevivalistSMR + $arcologies[0].FSChineseRevivalistLaw + $arcologies[0].FSChineseRevivalistSMR) > 0 + $arcologies[0].FSRepopulationFocusLaw + $arcologies[0].FSRepopulationFocusSMR + $arcologies[0].FSRestartLaw + $arcologies[0].FSRestartSMR > 0) || ($CulturalOpenness != 0)>>
+<<if (($arcologies[0].FSSupremacistLawME + $arcologies[0].FSSupremacistSMR + $arcologies[0].FSSubjugationistLawME + $arcologies[0].FSSubjugationistSMR + $arcologies[0].FSGenderRadicalistLawBeauty + $arcologies[0].FSGenderRadicalistLawFuta + $arcologies[0].FSGenderRadicalistLawDicks + $arcologies[0].FSGenderFundamentalistLawBeauty + $arcologies[0].FSGenderFundamentalistLawBimbo + $arcologies[0].FSGenderFundamentalistSMR + $arcologies[0].FSPaternalistLaw + $arcologies[0].FSPaternalistSMR + $arcologies[0].FSDegradationistLaw + $arcologies[0].FSDegradationistSMR + $arcologies[0].FSBodyPuristLaw + $arcologies[0].FSBodyPuristSMR + $arcologies[0].FSTransformationFetishistSMR + $arcologies[0].FSYouthPreferentialistLaw + $arcologies[0].FSYouthPreferentialistSMR + $arcologies[0].FSMaturityPreferentialistLaw + $arcologies[0].FSMaturityPreferentialistSMR + $arcologies[0].FSSlimnessEnthusiastSMR + $arcologies[0].FSAssetExpansionistSMR + $arcologies[0].FSPastoralistLaw + $arcologies[0].FSPastoralistSMR + $arcologies[0].FSPhysicalIdealistSMR + $arcologies[0].FSChattelReligionistLaw + $arcologies[0].FSChattelReligionistSMR + $arcologies[0].FSChattelReligionistCreed + $arcologies[0].FSRomanRevivalistLaw + $arcologies[0].FSRomanRevivalistSMR + $arcologies[0].FSEgyptianRevivalistLaw + $arcologies[0].FSEgyptianRevivalistSMR + $arcologies[0].FSEdoRevivalistLaw + $arcologies[0].FSEdoRevivalistSMR + $arcologies[0].FSArabianRevivalistLaw + $arcologies[0].FSArabianRevivalistSMR + $arcologies[0].FSChineseRevivalistLaw + $arcologies[0].FSChineseRevivalistSMR) > 0 + $arcologies[0].FSRepopulationFocusLaw + $arcologies[0].FSRepopulationFocusSMR + $arcologies[0].FSRestartLaw + $arcologies[0].FSRestartSMR > 0) || ($CulturalOpenness != 0)>>
 <br>__Future Society Policies__
 
 <<if $CulturalOpenness == 1>>
 	<br>''Cultural Openness:'' you are promoting the exchange of ideas between arcologies, increasing cultural crossover between your arcology and its neighbors.
-	[[Repeal|Policies][$CulturalOpenness to 0]]
+	[[Repeal|Policies][$CulturalOpenness = 0]]
 <</if>>
 
 <<if $CulturalOpenness == -1>>
 	<br>''Cultural Defensiveness:'' you are doing your best to suppress the exchange of ideas between arcologies, reducing cultural crossover between your arcology and its neighbors.
-	[[Repeal|Policies][$CulturalOpenness to 0]]
+	[[Repeal|Policies][$CulturalOpenness = 0]]
 <</if>>
 
 <<if $arcologies[0].FSSupremacistLawME == 1>>
 	<br>''Universal Enslavement of the Impure:'' by law, anyone not of the $arcologies[0].FSSupremacistRace in your arcology is a slave.
-	[[Repeal|Policies][$arcologies[0].FSSupremacistLawME to 0]]
+	[[Repeal|Policies][$arcologies[0].FSSupremacistLawME = 0]]
 <</if>>
 
 <<if $arcologies[0].FSSupremacistSMR == 1>>
 	<br>''Ethnic Preservation SMR:'' in order to be sold in the arcology, slaves of inferior races with dicks must have their balls removed to prevent racial pollution.
-	[[Repeal|Policies][$arcologies[0].FSSupremacistSMR to 0]]
+	[[Repeal|Policies][$arcologies[0].FSSupremacistSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSSubjugationistLawME == 1>>
 	<br>''Universal Enslavement of Subhumans:'' by law, all $arcologies[0].FSSubjugationistRace subhumans in your arcology are slaves.
-	[[Repeal|Policies][$arcologies[0].FSSubjugationistLawME to 0]]
+	[[Repeal|Policies][$arcologies[0].FSSubjugationistLawME = 0]]
 <</if>>
 
 <<if $arcologies[0].FSSubjugationistSMR == 1>>
 	<br>''Racial Purity SMR:'' in order to be sold in the arcology, subhumans with dicks must have their balls removed to prevent racial pollution.
-	[[Repeal|Policies][$arcologies[0].FSSubjugationistSMR to 0]]
+	[[Repeal|Policies][$arcologies[0].FSSubjugationistSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSRepopulationFocusSMR == 1>>
   <br>''Occupied Womb SMR:'' in order to be sold in the arcology, slaves must be pregnant.
-  [[Repeal|Policies][$arcologies[0].FSRepopulationFocusSMR to 0]]
+  [[Repeal|Policies][$arcologies[0].FSRepopulationFocusSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSRepopulationFocusLaw == 1>>
   <br>''Universal Pregnancy Subsidy:'' all pregnant citizens are offered reduced rent.
-  [[Repeal|Policies][$arcologies[0].FSRepopulationFocusLaw to 0]]
+  [[Repeal|Policies][$arcologies[0].FSRepopulationFocusLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSRestartSMR == 1>>
   <br>''Population Control SMR:'' in order to be sold in the arcology, slaves must be infertile.
-  [[Repeal|Policies][$arcologies[0].FSRestartSMR to 0]]
+  [[Repeal|Policies][$arcologies[0].FSRestartSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSRestartLaw == 1>>
   <br>''Taxation of Fertile Non-Elite:'' all fertile lower class citizens pay increased taxes.
-  [[Repeal|Policies][$arcologies[0].FSRestartLaw to 0]]
+  [[Repeal|Policies][$arcologies[0].FSRestartLaw = 0]]
 <</if>>
 
 <<if $propOutcome == 1>>
@@ -389,36 +389,36 @@
 
 
 <<if $arcologies[0].FSGenderRadicalistLawBeauty == 1>>
-	<br>''Fashionable Feminine Aspiration:'' you are doing your best to maintain a fashion for turning slaves into elegant girls with just the right amount of T&A. [[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawBeauty to 0]]
+	<br>''Fashionable Feminine Aspiration:'' you are doing your best to maintain a fashion for turning slaves into elegant girls with just the right amount of T&A. [[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawBeauty = 0]]
 <</if>>
 
 <<if $arcologies[0].FSGenderRadicalistLawFuta == 1>>
 	<br>''Futanari Focused Radicalism:'' you are encouraging Gender Radicalism towards veneration of slaves with both dicks and pussies.
-	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawFuta to 0]]
+	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawFuta = 0]]
 <<elseif $arcologies[0].FSGenderRadicalistLawFuta == 2>>
 	<br>''Cock and Balls Focused Radicalism:'' you are encouraging Gender Radicalism towards an appreciation for stiff dicks and swinging balls.
-	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawDicks to 0]]
+	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawDicks = 0]]
 <<elseif $arcologies[0].FSGenderRadicalistLawFuta == 3>>
 	<br>''Bottom Heavy Radicalism:'' you are encouraging an appreciation for broad hips, plush asses, big buttholes, and skilled sphincters.
-	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawDicks to 0]]
+	[[Repeal|Policies][$arcologies[0].FSGenderRadicalistLawDicks = 0]]
 <</if>>
 
 <<if $arcologies[0].FSGenderFundamentalistLawBeauty == 1>>
-	<br>''Fashionable Feminine Ideal:'' you are doing your best to maintain a fashion for elegant girls with just the right amount of T&A. [[Repeal|Policies][$arcologies[0].FSGenderFundamentalistLawBeauty to 0]]
+	<br>''Fashionable Feminine Ideal:'' you are doing your best to maintain a fashion for elegant girls with just the right amount of T&A. [[Repeal|Policies][$arcologies[0].FSGenderFundamentalistLawBeauty = 0]]
 <</if>>
 
 <<if $arcologies[0].FSGenderFundamentalistLawBimbo == 1>>
 	<br>''Bimbo Fetishism:'' you are doing your best to encourage sexual attraction to female stupidity.
-	[[Repeal|Policies][$arcologies[0].FSGenderFundamentalistLawBimbo to 0]]
+	[[Repeal|Policies][$arcologies[0].FSGenderFundamentalistLawBimbo = 0]]
 <</if>>
 
 <<if $arcologies[0].FSGenderFundamentalistSMR == 1>>
-	<br>''Mandatory Feminization SMR:'' in order to be sold in the arcology, slaves with dicks must have their balls removed. [[Repeal|Policies][$arcologies[0].FSGenderFundamentalistSMR to 0]]
+	<br>''Mandatory Feminization SMR:'' in order to be sold in the arcology, slaves with dicks must have their balls removed. [[Repeal|Policies][$arcologies[0].FSGenderFundamentalistSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSPaternalistLaw == 1>>
 	<br>''Good Treatment Subsidy:'' slaveowners who treat their slaves well are offered reduced rent.
-	[[Repeal|Policies][$arcologies[0].FSPaternalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSPaternalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSPaternalistSMR == 1>>
@@ -428,17 +428,17 @@
 
 <<if $arcologies[0].FSDegradationistLaw == 1>>
 	<br>''Universal Arcade Access Mandate:'' slaveowners are required to allow their menial slaves to use the sex arcades.
-	[[Repeal|Policies][$arcologies[0].FSDegradationistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSDegradationistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSDegradationistSMR == 1>>
 	<br>''Agonizing Induction SMR:'' slave markets are required to punish new slaves severely simply to introduce them to pain.
-	[[Repeal|Policies][$arcologies[0].FSDegradationistSMR to 0]]
+	[[Repeal|Policies][$arcologies[0].FSDegradationistSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSBodyPuristLaw == 1>>
 	<br>''Drug Purity Mandate:'' all drugs in the arcology must pass rigorous testing for purity.
-	[[Repeal|Policies][$arcologies[0].FSBodyPuristLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSBodyPuristLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSBodyPuristSMR == 1>>
@@ -453,7 +453,7 @@
 
 <<if $arcologies[0].FSYouthPreferentialistLaw == 1>>
 	<br>''Youthful Citizen Subsidy:'' young citizens are offered reduced rent.
-	[[Repeal|Policies][$arcologies[0].FSYouthPreferentialistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSYouthPreferentialistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSYouthPreferentialistSMR == 1>>
@@ -463,7 +463,7 @@
 
 <<if $arcologies[0].FSMaturityPreferentialistLaw == 1>>
 	<br>''Mature Citizen Subsidy:'' older citizens are offered reduced rent.
-	[[Repeal|Policies][$arcologies[0].FSMaturityPreferentialistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSMaturityPreferentialistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSMaturityPreferentialistSMR == 1>>
@@ -483,7 +483,7 @@
 
 <<if $arcologies[0].FSPastoralistLaw == 1>>
 	<br>''Animal Products Ban:'' animal products that compete with slave fluids are banned.
-	[[Repeal|Policies][$arcologies[0].FSPastoralistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSPastoralistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSPastoralistSMR == 1>>
@@ -498,27 +498,33 @@
 
 <<if $arcologies[0].FSChattelReligionistLaw == 1>>
 	<br>''Official Religion:'' you are enshrined as the prophet of a vibrant slaveowning religion.
-	[[Repeal|Policies][$arcologies[0].FSChattelReligionistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSChattelReligionistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSChattelReligionistSMR == 1>>
 	<br>''Consecration by Public Use SMR:'' in order to be sold in the arcology, slaves must be offered for public use for a single day.
-	[[Repeal|Policies][$arcologies[0].FSChattelReligionistSMR to 0]]
+	[[Repeal|Policies][$arcologies[0].FSChattelReligionistSMR = 0]]
+<</if>>
+
+<<if $arcologies[0].FSChattelReligionistCreed == 1>>
+	<br>''Chattel Religionist Creed:'' Chattel Religionism in your arcology subscribes to the creed established by the $nicaeaName, which honors <<if $nicaeaFocus == "slaves">>slaves<<else>>slaveowners<</if>>, enhances <<if $nicaeaAssignment == "whore">>prostitution<<elseif $nicaeaAssignment == "serve the public">>public service<<else>>fucktoy duty<</if>>, and respects <<if $nicaeaAchievement == "slaves">>owning many <</if>><<if $nicaeaFocus == "devotion">>worshipful slaves<<else>>trusting slaves<</if>>. The creed is <<if $nicaeaPower > 1>>strong<<else>>somewhat weak<</if>>.
+	[[Repeal|Policies][$arcologies[0].FSChattelReligionistCreed = 0, $cash -=10000, $rep -= 2000]]
+	//Repealing this policy costs twice as much as implementing one.//
 <</if>>
 
 <<if $arcologies[0].FSRomanRevivalistLaw == 1>>
 	<br>''Republican Military Establishment:'' all citizens of stature are required to participate personally in the defense of the state.
-	[[Repeal|Policies][$arcologies[0].FSRomanRevivalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSRomanRevivalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSRomanRevivalistSMR == 1>>
 	<br>''Market Slave Expendability SMR:'' slave markets are encouraged to immediately dispose of low quality menial slaves in gladiatorial combats.
-	[[Repeal|Policies][$arcologies[0].FSRomanRevivalistSMR to 0]]
+	[[Repeal|Policies][$arcologies[0].FSRomanRevivalistSMR = 0]]
 <</if>>
 
 <<if $arcologies[0].FSEgyptianRevivalistLaw == 1>>
 	<br>''Pharaoh's Consort:'' your Head Girl holds legal status as your Consort, increasing her prominence.
-	[[Repeal|Policies][$arcologies[0].FSEgyptianRevivalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSEgyptianRevivalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSEgyptianRevivalistSMR == 1>>
@@ -528,7 +534,7 @@
 
 <<if $arcologies[0].FSEdoRevivalistLaw == 1>>
 	<br>''Cultural Insularity:'' protects the arcology from old world influences, speeding the acceptance of all future societies.
-	[[Repeal|Policies][$arcologies[0].FSEdoRevivalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSEdoRevivalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSEdoRevivalistSMR == 1>>
@@ -538,7 +544,7 @@
 
 <<if $arcologies[0].FSArabianRevivalistLaw == 1>>
 	<br>''Jizya Tax:'' raises the rents of unassimilated citizens, speeding the acceptance of all future societies.
-	[[Repeal|Policies][$arcologies[0].FSArabianRevivalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSArabianRevivalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSArabianRevivalistSMR == 1>>
@@ -548,7 +554,7 @@
 
 <<if $arcologies[0].FSChineseRevivalistLaw == 1>>
 	<br>''Slave Administrator Enabling Law:'' affords your Head Girl considerable legal power, allowing her to accomplish even more slave training.
-	[[Repeal|Policies][$arcologies[0].FSChineseRevivalistLaw to 0]]
+	[[Repeal|Policies][$arcologies[0].FSChineseRevivalistLaw = 0]]
 <</if>>
 
 <<if $arcologies[0].FSChineseRevivalistSMR == 1>>
@@ -585,14 +591,14 @@
 
 <<if $FrigiditySMR == 0>>
 	<br>''Frigidity SMR:'' in order to be sold in the slave market, slaves must have their sex drives reduced until they're virtually gone.
-	[[Implement|Policies][$FrigiditySMR to 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 500]]
+	[[Implement|Policies][$FrigiditySMR = 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 500]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will reduce the sex drive of slaves in the markets and annoy those looking for sex slaves//
 <</if>>
 
 <<if $BasicBeautySMR == 0>>
 <<if $QualityBeautySMR == 0>>
 	<br>''Basic Beauty Standards:'' no unattractive slaves may be sold in the slave markets.
-	[[Implement|Policies][$BasicBeautySMR to 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 3000]]
+	[[Implement|Policies][$BasicBeautySMR = 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 3000]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//This will raise the price of slaves.
 <</if>>
 <</if>>
@@ -600,7 +606,7 @@
 <<if $BasicBeautySMR == 0>>
 <<if $QualityBeautySMR == 0>>
 	<br>''Quality Beauty Standards:'' only attractive slaves may be sold in the slave markets.
-	[[Implement|Policies][$QualityBeautySMR to 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 10000]]
+	[[Implement|Policies][$QualityBeautySMR = 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 10000]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//This will raise the price of slaves.
 <</if>>
 <</if>>
@@ -608,7 +614,7 @@
 <<if $BasicIntelligenceSMR == 0>>
 <<if $QualityIntelligenceSMR == 0>>
 	<br>''Basic Intelligence Standards:'' no stupid slaves may be sold in the slave markets.
-	[[Implement|Policies][$BasicIntelligenceSMR to 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 2000]]
+	[[Implement|Policies][$BasicIntelligenceSMR = 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 2000]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//This will raise the price of slaves.
 <</if>>
 <</if>>
@@ -616,7 +622,7 @@
 <<if $BasicIntelligenceSMR == 0>>
 <<if $QualityIntelligenceSMR == 0>>
 	<br>''Quality Intelligence Standards:'' only intelligent slaves may be sold in the slave markets.
-	[[Implement|Policies][$QualityIntelligenceSMR to 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 10000]]
+	[[Implement|Policies][$QualityIntelligenceSMR = 1, $cash -=5000, $rep -= 1000, $minimumSlaveCost += 10000]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//This will raise the price of slaves significantly.
 <</if>>
 <</if>>
@@ -1231,6 +1237,13 @@
 <</if>>
 <</if>>
 <</if>>
+<<if $nicaeaHeld == 1>>
+<<if $arcologies[0].FSChattelReligionistCreed == 0>>
+	<br>''@@color:lime;Chattel Religionist Creed:@@'' Chattel Religionism in your arcology will subscribe to the creed established by the $nicaeaName, which honors <<if $nicaeaFocus == "slaves">>slaves<<else>>slaveowners<</if>>, enhances <<if $nicaeaAssignment == "whore">>prostitution<<elseif $nicaeaAssignment == "serve the public">>public service<<else>>fucktoy duty<</if>>, and respects <<if $nicaeaAchievement == "slaves">>owning many <</if>><<if $nicaeaFocus == "devotion">>worshipful slaves<<else>>trusting slaves<</if>>. The creed is <<if $nicaeaPower > 1>>strong<<else>>somewhat weak<</if>>.
+	[[Implement|Policies][$arcologies[0].FSChattelReligionistCreed = 1, $cash -=5000, $rep -= 1000]]
+	//Repealing this policy costs twice as much as implementing one.//
+<</if>>
+<</if>>
 
 <<if $arcologies[0].FSRomanRevivalist >= 40>>
 <<if $arcologies[0].FSRomanRevivalistSMR == 0>>
diff --git a/src/uncategorized/randomIndividualEvent.tw b/src/uncategorized/randomIndividualEvent.tw
index 1acd692293fc776bee51ccdb459301cbc7dfb104..91fb981d3349f65167b88716d8ce09eba6d018b6 100644
--- a/src/uncategorized/randomIndividualEvent.tw
+++ b/src/uncategorized/randomIndividualEvent.tw
@@ -703,7 +703,7 @@
 <<if ($eventSlave.assignment == "serve the public") || ($eventSlave.assignment == "whore")>>
 <<if $eventSlave.devotion > -20>>
 <<if $eventSlave.devotion <= 95>>
-	<<set $RESSTRevent.push("ara ara")>>
+	<<set $RESSevent.push("ara ara")>>
 <</if>>
 <</if>>
 <</if>>
@@ -713,7 +713,7 @@
 <<if $eventSlave.anus > 3>>
 <<if $eventSlave.devotion > 50>>
 <<if $eventSlave.trust > 50>>
-	<<set $RESSTRevent.push("gaped asshole")>>
+	<<set $RESSevent.push("gaped asshole")>>
 <</if>>
 <</if>>
 <</if>>
@@ -724,7 +724,7 @@
 <<if $eventSlave.weight >= -30>>
 <<if $eventSlave.trust > 50>>
 <<if $eventSlave.devotion > 50>>
-	<<set $RESSTRevent.push("passing declaration")>>
+	<<set $RESSevent.push("passing declaration")>>
 <</if>>
 <</if>>
 <</if>>
@@ -734,12 +734,18 @@
 
 <<if $eventSlave.trust < -50>>
 <<if $eventSlave.devotion < 50>>
-	<<set $RESSTRevent.push("im scared")>>
+	<<set $RESSevent.push("im scared")>>
 <</if>>
 <</if>>
 
 <</if>> /* closes mute exempt */
 
+<<if $eventSlave.trust > 20>>
+<<if $eventSlave.energy > 40>>
+	<<set $RESSTRevent.push("comfortable seat")>>
+<</if>>
+<</if>>
+
 <<if $eventSlave.vaginaLube > 1>>
 <<if $eventSlave.devotion > 20>>
 <<if $eventSlave.vagina > -1>>
diff --git a/src/uncategorized/reFSNonconformist.tw b/src/uncategorized/reFSNonconformist.tw
index f1f8b14ebb09644d1ed9553654f4588dd670c3a5..eb1f5a0abcc145370916b566d1d74bac1e4d7f3b 100644
--- a/src/uncategorized/reFSNonconformist.tw
+++ b/src/uncategorized/reFSNonconformist.tw
@@ -14,7 +14,7 @@ A deputation of your citizens arrive at your penthouse and ask to see you. They'
 <<if $FSNonconformist is "Pastoralist">>
 	committed to making the future of the arcology a creamy one. They're looking quite grim, an unusual mood for a group of oligarchs more inclined to spend their time planning milk orgies,
 <<elseif $FSNonconformist is "Supremacist">>
-	committed to the ascenancy of the $arcologies[0].FSSupremacistRace race. They're looking quite grim, an unusual mood for a group of oligarchs more inclined to spend their time eagerly debating revisionist histories,
+	committed to the ascendancy of the $arcologies[0].FSSupremacistRace race. They're looking quite grim, an unusual mood for a group of oligarchs more inclined to spend their time eagerly debating revisionist histories,
 <<elseif $FSNonconformist is "Subjugationist">>
 	involved in the subjugation of the $arcologies[0].FSSubjugationistRace race. They're looking quite grim, an unusual mood for a group of oligarchs more inclined to spend their time competing to come up with ever more extreme ways to degrade mongrels,
 <<elseif $FSNonconformist is "Repopulation Efforts">>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index 76ce7f2ec5ff5337c97b7787681c9213edaa76c9..c696e7ab89b24cd9c692a9107f4568dbe62ad574 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -30,7 +30,7 @@
 <</for>>
 
 <<set $recruitedType = []>>
-<<if $eventSlave.mother == 0 && $activeSlave.actualAge < 24 && $seeDicks != 100>>>>
+<<if $eventSlave.mother == 0 && $activeSlave.actualAge < 24 && $seeDicks != 100>>
 	<<set $recruitedType.push("mother")>>
 	<<set $recruitedType.push("mother")>>
 	<<set $recruitedType.push("mother")>>
diff --git a/src/uncategorized/saDevotion.tw b/src/uncategorized/saDevotion.tw
index d432cd6a9814abc0fde52198e3c7d0ed08c3da44..b48210324fae33a651400244e29a715fb428016f 100644
--- a/src/uncategorized/saDevotion.tw
+++ b/src/uncategorized/saDevotion.tw
@@ -185,6 +185,12 @@
 	<<set $slaves[$i].trust -= 10>>
 	<</if>>
 <</if>>
+<<if $arcologies[0].FSChattelReligionistCreed == 1>>
+<<if $nicaeaFocus == "slaves">>
+	The creed of $nicaeaName @@color:hotpink;focuses on slaves@@ and is repeated constantly all around her.
+	<<set $slaves[$i].devotion += $nicaeaPower>>
+<</if>>
+<</if>>
 
 /* INDENTURE MENTAL EFFECTS */
 
diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw
index 7e70e9e355b112f5a77f3e91edfb57d80fa2eb1b..e94c7aeda398612452cffb95aa5f840309834780 100644
--- a/src/uncategorized/saDiet.tw
+++ b/src/uncategorized/saDiet.tw
@@ -208,7 +208,7 @@
 				<<if $slaves[$i].dietCum == 2>>
 					She hates herself for it, but the cum addict is @@color:lightpink;grateful@@ to have so much ejaculate in her diet, especially because she's given extra food this week.
 					<<set $slaves[$i].devotion += 1>>
-				<<else if $slaves[$i].dietCum == 1>>
+				<<elseif $slaves[$i].dietCum == 1>>
 					The cum addict @@color:gold;anxiously@@ slurps up every drop of her cum-supplemented food this week.  She eats all the extra food she's given and is @@color:mediumorchid;disturbed@@ by her insatiable hunger for more.
 					<<set $slaves[$i].devotion -= 1>>
 					<<set $slaves[$i].trust -= 1>>
@@ -255,7 +255,7 @@
 				<<if $slaves[$i].dietMilk == 2>>
 					She hates herself for it, but the breast growth fanatic is @@color:lightpink;grateful@@ to have so much mother's milk in her diet, especially because she's given extra food this week.
 					<<set $slaves[$i].devotion += 1>>
-				<<else if $slaves[$i].dietMilk == 1>>
+				<<elseif $slaves[$i].dietMilk == 1>>
 					The breast growth fanatic @@color:gold;anxiously@@ slurps up every drop of her milk-supplemented food this week.  She eats all the extra food she's given and is @@color:mediumorchid;disturbed@@ by her insatiable hunger for more mother's milk.
 					<<set $slaves[$i].devotion -= 1>>
 					<<set $slaves[$i].trust -= 1>>
@@ -726,6 +726,21 @@
 		<</if>>
 	<</if>>
 <</if>>
+<<if $revealFoodEffects == 1>>
+	She knows that every meal of the liquid slave food she <<if $cockFeeder == 1>>sucks down<<else>>eats<</if>> makes it less and less likely that she'll ever survive without it,
+	<<if $slaves[$i].devotion > 50>>
+		but she actually @@color:mediumaquamarine;takes a kind of comfort@@ in knowing that she'll always be a slave.
+		<<set $slaves[$i].trust++>>
+	<<elseif $slaves[$i].devotion > 20>>
+		but since she's been broken to slavery, she does her best not to think about it.
+	<<elseif $slaves[$i].devotion > -20>>
+		and though she does her best not to think about it, it sometimes makes her @@color:gold;cry herself to sleep.@@
+		<<set $slaves[$i].trust-->>
+	<<else>>
+		knowledge that fills her with @@color:gold;fear@@ and @@color:mediumorchid;horror@@ every time she thinks about it.
+		<<set $slaves[$i].trust--,$slaves[$i].devotion-->>
+	<</if>>
+<</if>>
 
 <<else>> /* FUCKDOLL DIETS */
 
diff --git a/src/uncategorized/saGetMilked.tw b/src/uncategorized/saGetMilked.tw
index 27322853a73f4c58bc05732441257fdfca5d53eb..24fd642c2febdbb57eb0c3a571030ffec2d72e8c 100644
--- a/src/uncategorized/saGetMilked.tw
+++ b/src/uncategorized/saGetMilked.tw
@@ -113,7 +113,7 @@ gets milked this week.
 		<<if ($slaves[$i].boobs <= 700)>>
 			<<if ($arcologies[0].FSSlimnessEnthusiast > 80)>>
 				Your arcology's milkers are optimized to extract maximum output from small breasted slaves, which substantially increases her otherwise modest productivity.
-				<<set $milk *= *1.5>>
+				<<set $milk *= 1.5>>
 			<<elseif ($arcologies[0].FSSlimnessEnthusiast > 20)>>
 				Your arcology's milkers have been carefully modified to more readily accommodate slaves with tiny breasts, which slightly mitigates her less than ideal physiology for milk production.
 				<<set $milk *= 1.1>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 4bc7604abe683f6cd4ea4f23e4003a4fa9e4b019..b674a6d7df42421fb1a4dfb3bded742f5096e34a 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -2927,21 +2927,21 @@ and ($slaves[$i].clothes != "a slutty qipao") and ($slaves[$i].clothes != "restr
 <</if>>
 
 <<if ($slaves[$i].boobsImplant > 1000)>>
-<<if ($slaves[$i]. boobs-$slaves[$i].boobsImplant < 1000)>>
+<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 1000)>>
 <<if (random(1,100) > 60)>>
 	$possessiveCap breast tissue has naturally @@color:lime;stretched and grown@@ to accommodate $possessive massive implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
 <</if>>
 <</if>>
 <<elseif ($slaves[$i].boobsImplant > 600)>>
-<<if ($slaves[$i]. boobs-$slaves[$i].boobsImplant < 500)>>
+<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 500)>>
 <<if (random(1,100) > 60)>>
 	$possessiveCap breast tissue has naturally @@color:lime;stretched and grown@@ to accommodate $possessive large implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
 <</if>>
 <</if>>
 <<elseif ($slaves[$i].boobsImplant > 0)>>
-<<if ($slaves[$i]. boobs-$slaves[$i].boobsImplant < 300)>>
+<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 300)>>
 <<if (random(1,100) > 60)>>
 	$possessiveCap breast tissue has naturally @@color:lime;stretched and grown@@ to accommodate $possessive implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
diff --git a/src/uncategorized/saTakeClasses.tw b/src/uncategorized/saTakeClasses.tw
index 1ac8809486b148c80fb39bd9dfbf157b89a64974..a0cc028f3c8b8f24417a95c1f7bb065d66f80680 100644
--- a/src/uncategorized/saTakeClasses.tw
+++ b/src/uncategorized/saTakeClasses.tw
@@ -1,5 +1,5 @@
 :: SA take classes [nobr]
- 
+
 <<set $learning to 1>>
 
 <<if ($slaves[$i].assignment is "learn in the schoolroom")>>
@@ -180,8 +180,7 @@ takes courses in slavery<<if $schoolroomUpgradeSkills + $schoolroomUpgradeRemedi
 <<if ($slaves[$i].analSkill > 10) || ($slaves[$i].anus < 1)>>
 <<if ($slaves[$i].vaginalSkill > 10) || ($slaves[$i].vagina < 1)>>
 	She can learn little from further classes, so @@color:yellow;her assignment has defaulted to rest.@@
-	<<set $slaves[$i].assignment to "rest">>
-	<<set $slaves[$i].assignmentVisible to 1>>
+	<<set $slaves[$i].assignment to "rest", $slaves[$i].assignmentVisible to 1, $schoolroomSlaves-->>
 <</if>>
 <</if>>
 <</if>>
diff --git a/src/uncategorized/scheduledEvent.tw b/src/uncategorized/scheduledEvent.tw
index c05f86f845b43b46bfee6ea24ef416710f02767f..9edcbd44b700a913690efce4817084209e9b47e9 100644
--- a/src/uncategorized/scheduledEvent.tw
+++ b/src/uncategorized/scheduledEvent.tw
@@ -1,5 +1,5 @@
 :: Scheduled Event
- 
+
 <<set $showEncyclopedia to 0>>
 
 <<if $expired == 1>>
@@ -106,9 +106,8 @@
 	<</if>>
 	<</for>>
 	<<if $seed == 0>>
-	<<set $weddingPlanned to 0>>
-	<<set $cash += 10000>>
-	<<goto "Scheduled Event">>
+		<<set $weddingPlanned to 0, $cash += 10000>>
+		<<goto "Scheduled Event">>
 	<</if>>
 <<elseif $playerBred == 1 && ($PC.preg == 0 || $PC.preg == -1)>>
 	<<goto "P insemination">>
@@ -131,11 +130,7 @@
 <<elseif ($Lurcher != 0) && ($CoursingAssociation != 0) && (Math.trunc($week/4) is ($week/4)) && ($coursed != 1)>>
 	<<goto "SE coursing">>
 <<elseif ((($fighterIDs.length > 1) && ($pitBG == 0)) || (($fighterIDs.length > 0) && ($Bodyguard != 0) && ($pitBG == 1))) && ($pitFought == 0)>>
-	<<if $pitLethal == 1>>
-	<<goto "SE lethal pit">>
-	<<else>>
-	<<goto "SE nonlethal pit">>
-	<</if>>
+	<<if $pitLethal == 1>><<goto "SE lethal pit">><<else>><<goto "SE nonlethal pit">><</if>>
 <<elseif ($bioreactorPerfectedID != 0) && ($bioreactorsAnnounced != 1)>>
 	<<goto "P bioreactor perfected">>
 <<elseif ($TSS.schoolPresent == 1) && ($TSS.schoolProsperity <= -10)>>
@@ -152,6 +147,28 @@
 	<<goto "RES Failure">>
 <<elseif ($TFS.schoolPresent == 1) && ($organFarmUpgrade != 0) && ($TFS.farmUpgrade == 0)>>
 	<<goto "TFS Farm Upgrade">>
+<<elseif ($nicaea == 1) && ($organFarmUpgrade != 0) && ($TFS.farmUpgrade == 0)>>
+	<<goto "TFS Farm Upgrade">>
+<<elseif $arcologies[0].FSChattelReligionist != "unset">>
+	<<if $nicaeaHeld == 1>>
+		<<if $plot == 1>><<goto "Nonrandom Event">><<else>><<goto "Random Nonindividual Event">><</if>>
+	<<elseif ($nicaeaAnnounceable == 1) && ($nicaeaAnnounced != 1)>>
+		<<goto "SE nicaea announcement">>
+	<<elseif $nicaeaPreparation == 1>>
+		<<if $nicaeaInvolvement != 0>>
+			<<goto "SE nicaea preparation">>
+		<<else>>
+			<<if $plot == 1>><<goto "Nonrandom Event">><<else>><<goto "Random Nonindividual Event">><</if>>
+		<</if>>
+	<<elseif $nicaeaInvolvement >= 0>>
+		<<set $nicaeaRollA = random(-1,0), $nicaeaRollB = random(-1,0), $nicaeaRollC = random(-1,0)>>
+		<<set $nicaeaFocus = either("owners", "slaves")>>
+		<<set $nicaeaAssignment = either("whore", "serve the public", "please you")>>
+		<<set $nicaeaAchievement = either("devotion", "trust", "slaves")>>
+		<<goto "SE nicaea council">>
+	<<else>>
+		<<if $plot == 1>><<goto "Nonrandom Event">><<else>><<goto "Random Nonindividual Event">><</if>>
+	<</if>>
 <<elseif $plot == 1>>
 	<<goto "Nonrandom Event">>
 <<else>>
diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw
index 578624acbea6842b758bb0e6ae9db9b9c12eb299..c4b8d3a253c816e497bfe808143e2175e2ebd1ca 100644
--- a/src/uncategorized/schoolroomReport.tw
+++ b/src/uncategorized/schoolroomReport.tw
@@ -1,6 +1,5 @@
 :: Schoolroom Report [nobr]
 
-''Schoolroom Report''<hr style="margin:0">
 
 <<set $schoolroomSlaves to 0>>
 <<set $schoolteacherFetish to 0>>
diff --git a/src/uncategorized/seNicaeaAnnouncement.tw b/src/uncategorized/seNicaeaAnnouncement.tw
new file mode 100644
index 0000000000000000000000000000000000000000..f8885915fb19def1eb8d07f7aa9fd5337ed08e4a
--- /dev/null
+++ b/src/uncategorized/seNicaeaAnnouncement.tw
@@ -0,0 +1,61 @@
+:: SE nicaea announcement [nobr]
+
+<<set $nextLink to "Scheduled Event", $nextButton to "Continue">>
+<<set $nicaeaAnnounced = 1, $nicaeaPreparation = 1, $nicaeaInvolvement = 0, $nicaeaPower = 1>>
+<<set $nicaeaName = "Council of " + $ArcologyNamesChattelReligionist.random()>>
+
+<<if $PC.title = 1>><<set _advocate = "male">><<elseif $PC.dick = 1>><<set _advocate = "futa">><<else>><<set _advocate = "female">><</if>>
+
+Religion is full of politics.
+<br><br>
+The Chattel Religionist faith was always going to be a ferociously controversial thing. The old world faiths it borrows from condemned it as sinful at best and heretical at worst, right from the start, and they've done their feeble best against it ever since. Secular old world institutions regard it with a predictable mixture of disdain and fear. Lately, however, the young faith has started to suffer from another common malady of new religions for the first time: internal dissention. Just who is a Chattel Religionist? The faith has no governing body, no standard holy text, and no creed held in common. So far, any slaveowner has been able to define themselves as a Chattel Religionist by adopting some old world religious tropes adapted to modern slavery, and by calling themselves a Chattel Religionist. That's it. This loose, welcoming basis has often been a strength. It appeals to many potential converts among Free Cities slaveowners, and it's been difficult to have internal disputes when there are no rules to fight over.
+<br><br>
+Some prominent Chattel Religionists, however, are now arguing that Chattel Religionism can and should do more. You're conversing with one such advocate now, via video call. "Chattel Religionism could be truly great," <<if _advocate = "male">>he<<else>>she<</if>> argues vigorously. "It isn't now. We'll never accomplish anything without minimal unity and direction. There's too much play-acting and not enough evangelical fire." <<if _advocate = "male">>He<<else>>She<</if>> rotates the camera, letting you see the view
+<<if _advocate = "male">>
+	from his desk. He's not an arcology owner, but he runs an extremely successful chain of slave brothels. He's had success in large part because of how he's inculcated his whores with the faith. Several naked women are kneeling in front of the desk he's calling you from. They're praying aloud for God to bless them with many customers today, so they can honor their owner with good profits. "This is well enough," he says with satisfaction. "But if we pull together, someday every woman in the world might understand that a pure, subservient role is her only way to heaven." He
+<<elseif _advocate = "futa">>
+	down her naked chest. She's reclining on a pile of cushions, and a slave is squatting over her, riding her cock. The slave's head and shoulders are covered in religious garb, and the slave is wearing an expression of the most transcendent delight as she pistons herself up and down on her Mistress's penis. The slave orgasms, tears of rapture streaming down her face as she gives herself a pearl necklace. "This is well enough," your interlocutor says with satisfaction. "But if we pull together, we can create heaven on earth by spreading the gospel of hedonism to all." She
+<<else>>
+	from where she's sitting. Across the darkened room from her, there's an altar, lit from above. A young girl is spreadeagled on it, naked. She looks very much as though she's just turned eighteen. A slave in religious garb is performing oral sex on her, with evident skill; she orgasms, shrieking with religious fervor as she does. Another slave helps her up and dresses her in similar clothing, and a crowd of slaves surrounds their new sister, kissing her, fondling her, and praying. "This is good," your interlocutor says with satisfaction. "But if we pull together, this beautiful sexual purity can spread beyond a few arcologies." She
+<</if>>
+comes to the point. "We need someone to call a council to lay down a strong foundation for the faith. We need a creed that can act as a uniting requisite to be a faithful slaveowner. You're one of the world's most prominent Chattel Religionist arcology owners. There's certainly no one who's ahead of you. I've spoken with our coreligionists, and those who aren't addicted to anarchy deputed me to ask you to convene it and host a council to establish the creed. If you're not willing, we'll find someone else."
+<br><br>
+Hosting a new religion's first synod will be expensive and time-consuming, but would give you considerable power to influence its outcome. However, if you decline, it will be held elsewhere without your input and will probably fracture the developing faith. Vocal opposition would likely rob it of force, leaving Chattel Religionism much as it is now, and prejudice the faithful against another attempt for many years.
+<br><br>
+
+<span id="result">
+<<click "Host the council">>
+	<<replace "#result">>
+	You agree to host the council.
+	<<if _advocate = "male">>
+		"I'll look forward to it," says the evangelistic whoremonger. Then he orders the prostitutes praying before his desk to offer him their holes, and ends the call.
+	<<elseif _advocate = "futa">>
+		"Delightful," says the devoutly dominant dickgirl, and fills her slave with cum before ending the call.
+	<<else>>
+		"Wonderful," says the evangelistic lady slaveowner. She orders that the newly consecrated slave approach her, and ends the call.
+	<</if>>
+	You have a tremendous amount of work to do, and not much time to do it. You immediately set aside a sizeable sum as an initial budget for the event itself. The first major decision you'll need to make about the council is who to invite. As one of Chattel Religionism's most prominent figures, you have a good idea of who you'd have to include to ensure that the council's agreements have as much weight as possible; $assistantName immediately begins collating background information on potential attendees, to assist you further.
+	<<set $nicaeaInvolvement = 2, $nicaeaPower += 1, $nicaeaInfluence = 1, $nicaeaName = "Council of " + $arcologies[0].name, $cash -= 10000>>
+	<</replace>>
+<</click>> //This will cost ¤10000, and influencing the outcome will likely require further investment//
+<br><<click "Oppose the council">>
+	<<replace "#result">>
+	You decline, stating that you believe Chattel Religionism is best in its current diffuse form. "I respect your position," says the
+	<<if _advocate = "male">>s
+		evangelistic whoremonger, "though I think you're being shortsighted." The holy whores look fearful, hearing something in their Master's tone as he ends the call.
+	<<elseif _advocate = "futa">>
+		dickgirl evangelist, "but I do regret it." She begins to pound her dick up into her slave, taking out her frustrations on her poor fucktoy, and ends the call.
+	<<else>>
+		evangelistic lady slaveowner, "though I must stand against it." She orders the newly consecrated slave whipped in penance for this reverse, and ends the call.
+	<</if>>
+	You announce your opposition to the planned council publicly, using your considerable influence within the developing religion to make your opinion known. Your arguments are couched in the languate of the new faith, and emphasize its welcoming and open nature to anyone willing to experience the holy institution of sexual slavery, be it as a slave or a slaveowner. Your force and vigor in the debate @@color:green;enhances your reputation,@@ and helps sway other prominent Chattel Religionists away from attending the council. It's not yet clear whether a weakened council will manage to meet and get anything done, or if you've successfully prevented the idea from coalescing. You'll have to keep working at it and wait at least a week to see what the results of the controversy will be.
+	<<set $nicaeaInvolvement = 1>>
+	<<set $rep += 1000>>
+	<</replace>>
+<</click>>
+<br><<click "Ignore the council">>
+	<<replace "#result">>
+	You give a politely noncomittal answer, instruct $assistantName that further calls on the matter are to be deflected, and give the matter no further thought.
+	<</replace>>
+<</click>>
+</span>
\ No newline at end of file
diff --git a/src/uncategorized/seNicaeaCouncil.tw b/src/uncategorized/seNicaeaCouncil.tw
new file mode 100644
index 0000000000000000000000000000000000000000..9a5cdc50521e840358d161f3cf74183c52ec99f1
--- /dev/null
+++ b/src/uncategorized/seNicaeaCouncil.tw
@@ -0,0 +1,120 @@
+:: SE nicaea council [nobr]
+
+<<set $nextLink to "Scheduled Event", $nextButton to "Continue">>
+<<set $nicaeaHeld = 1, $arcologies[0].FSChattelReligionistCreed = 1>>
+
+<<if $nicaeaInvolvement == 0>>
+
+The $nicaeaName is held in another arcology, without your involvement. Your abstention has weakened it. It authored a creed which the Council claims all good Chattel Religionists should subscribe. Most of it is uncontroversial, giving beliefs about slavery and faith that virtually all Chattel Religionists agree on. However, the new creed does purport to settle three major points of contention.
+<br><br>
+First, it emphasizes 
+<<if $nicaeaFocus == "slaves">>
+	slaves throughout. The creed goes so far as to imply that slaveowners have a duty to slaves, which they fulfill by providing them the opportunity to enjoy the holy and pure state of being a sex slave.
+<<else>>
+	reverence for and obedience to slaveowners. This is not likely to have a great impact on slaves, but it affirms the total superiority of slaveowners and is likely to attract wealthy religious people from the old world.
+<</if>>
+<br><br>
+Second, one of the ways it states that free people can make their devotions is to
+<<if $nicaeaAssignment == "whore">>
+	fuck a slave whore. Not surprisingly, this will increase demand for prostitutes.
+<<elseif $nicaeaAssignment == "serve the public">>
+	fuck a public slut. Not surprisingly, this will increase demand for public servants.
+<<else>>
+	have sex with one's slaves. This will likely increase respect for those that keep their own fucktoys.
+<</if>>.
+<br><br>
+Third, the aspirational part of the creed for slaveowners focuses on
+<<if $nicaeaAchievement == "slaves">>
+	owning many slaves to spread the gift of sexual slavery as widely as possible. This will increase respect for people who own many sex slaves, regardless of how they're used.
+<<elseif $nicaeaAchievement == "devotion">>
+	making slaves worshipful. Naturally, this will increase respect for people with many devoted slaves.
+<<else>>
+	building slaves's trust. Naturally, this will increase respect for people with many trusting slaves.
+<</if>>
+<br><br>
+//Since you did not participate in the Council, $arcologies[0].name does not subscribe to the creed. It is effectively a policy. Its impacts can be reviewed from the policy menu, and conformity to the creed can be decided from the policy menu if you decided to change it.//
+
+<<else>>
+
+The $nicaeaName is held in your arcology. Everyone in attendance is agreed that a Chattel Religionist creed should be created to give the faith a set of shared beliefs to unify and drive it. Many parts of the creed are uncontroversial, but there are three great controversies to be decided: whose role in slavery is most important in Chattel Religionism, which assignment best exemplifies a Chattel Religionist slave's sacred sexual servitude, and what a Chattel Religionist slaveowner should most aspire to achieve. All the slaveowners who are participating have committed to support whatever the Council decides collectively, <<if $nicaeaPower > 1>>and the strong Council should be able to promulgate a strong creed<<else>>but the weak Council may lead to a weak creed<</if>>. The Council
+
+<<if $nicaeaInfluence > 0>>
+
+is ongoing, and you have <<if $nicaeaInfluence > 2>>an immense<<elseif $nicaeaInfluence > 1>>a large<<else>>some<</if>> leverage with the rest of the Council to influence the Council's decisions.
+
+<br><br>
+On the first question, the great debate is between those Chattel Religionists who focus on their slaves and those who think that the focus should be on the slaveowner. The former vaunt the pure, holy state of grace to which a well trained slave can attain, and describe slaveowning as a positive duty, arguing that slaveowners must work to help their slaves attain purity, not exploit or torment them. The latter consider this belief inverted and dangerous, and think that slaves' primary role is to serve and revere their owners, making the whim and caprice of the owner sacred. The group whose role is placed centrally in the creed will likely get more enjoyment from its role in Chattel Religionism.
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+A majority of the Council currently supports deciding this question in favor of ''the <<if $nicaeaFocus == "slaves">>slave<<else>>slaveowner<</if>> centrality.''
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+<<click "Support the slave centrality">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollA += 1>>
+	<<if $nicaeaRollA > 0>><<set $nicaeaFocus = "slaves">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+| <<click "Support the slaveowner centrality">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollA += 1>>
+	<<if $nicaeaRollA > 0>><<set $nicaeaFocus = "owners">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+
+<br><br>
+On the second question, there are advocates for holy prostitution, sacred public sluts, and pure private harems. Whatever is decided, Chattel Religionism will continue to support and advocate for slaves performing all these roles. This decision will be most important in how it affects Chattel Religionist citizens. The question is whether the creed should encourage free people to patronize slave whores, have sex with public sluts, or purchase and keep their own sex slaves and respect those who have large harems of them? The effectiveness of slaves on the emphasized assignment will be improved.
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+A majority of the Council currently supports deciding this question in favor of ''<<if $nicaeaAssignment == "whore">>prostitution<<elseif $nicaeaAssignment == "serve the public">>public service<<else>>fucktoy duty<</if>>.''
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+<<click "Support prostitution">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollB > 0>><<set $nicaeaAssignment = "whore">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+| <<click "Support public service">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollB > 0>><<set $nicaeaAssignment = "serve the public">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+| <<click "Support fucktoy duty">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollB > 0>><<set $nicaeaAssignment = "please you">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+
+<br><br>
+On the third question, some with seats on the Council think owning sex slaves is the crux of being a good Chattel Religionist, because it gives the slaves the proper and pure experience of sexual slavery. Owning many sex slaves would therefore confer respect. Others believe in good works, and think that trust in slaves is the surest indication of a good slaveowner, and the only proper mark worth looking up to. Finally, and inevitably, some think worshipful slaves are a more appropriate measure of how righteous a slaveowner is.
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+A majority of the Council currently supports deciding this question in favor of ''<<if $nicaeaAchievement == "slaves">>owning slaves<<else>>$nicaeaAchievement<</if>>.''
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
+<<click "Support owning many slaves">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollC > 0>><<set $nicaeaAchievement = "whore">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+| <<click "Support trust">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollC > 0>><<set $nicaeaAchievement = "trust">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+| <<click "Support devotion">>
+	<<set $nicaeaInfluence -= 1, $nicaeaRollB += 1>>
+	<<if $nicaeaRollC > 0>><<set $nicaeaAchievement = "devotion">><</if>>
+	<<goto "SE nicaea council">>
+<</click>>
+
+<br><br>
+[[Conclude the Council|SE nicaea council][$rep += $nicaeaInfluence*2000]] //This will let the currently prevailing views stand, and convert your remaining influence with the Council into general reputation//
+
+<<else>>
+
+has concluded.
+<br><br>
+The first question was decided in favor of ''the <<if $nicaeaFocus == "slaves">>slave<<else>>slaveowner<</if>> centrality.''
+<br><br>
+The second question was decided in favor of ''<<if $nicaeaAssignment == "whore">>prostitution<<elseif $nicaeaAssignment == "serve the public">>public service<<else>>fucktoy duty<</if>>.''
+<br><br>
+The third question was decided in favor of ''<<if $nicaeaAchievement == "slaves">>owning slaves<<else>>$nicaeaAchievement<</if>>.''
+<br><br>
+//The creed has now taken effect in $arcologies[0].name. It is effectively a policy. Its impacts can be reviewed from the policy menu, and conformity to the creed can be decided from the policy menu if you decided to change it.//
+
+<</if>>
+
+<</if>>
\ No newline at end of file
diff --git a/src/uncategorized/seNicaeaPreperation.tw b/src/uncategorized/seNicaeaPreperation.tw
new file mode 100644
index 0000000000000000000000000000000000000000..e1f438e305f94705c957aa0d27235c18a79b36bf
--- /dev/null
+++ b/src/uncategorized/seNicaeaPreperation.tw
@@ -0,0 +1,72 @@
+:: SE nicaea preparation [nobr]
+
+<<set $nextLink to "Scheduled Event", $nextButton to "Continue">>
+<<set $nicaeaPreparation = 0>>
+
+<<if $nicaeaInvolvement == 1>>
+
+Your vigorous opposition to a religious council to establish an agreed upon creed for Chattel Religionism has been successful, but not without cost. The furious controversy @@color:red;cost you friends and damaged your reputation@@ among those of your religious peers who wanted to see Chattel Religionists draw closer together, and as happens in controversies as heated as this, the influence and reputation you gain from those who agree with you doesn't match what you lose among those who think you're standing in the way of progress. Furthermore, not all of your citizens agreed with you, either. A few citizens of consequence have actually left $arcologies[0].name over it, @@color:red;damaging its economic prosperity.@@ Also, Chattel Religionists have had a serious disagreement here for the first time. @@color:red;Full acceptance of slaveowning theocracy in your arcology has been set back.@@ A majority of your citizens still approve and participate, but it will take time to rebuild.
+<<set $rep -= 4000, $arcologies[0].prosperity -= 5, $arcologies[0].FSChattelReligionist *= 0.6>>
+<br><br>
+But you did win. Chattel Religionism will remain a free and open faith that accepts any slaveowner willing to declare that they consider holding slaves holy. You'll be remembered by those who opposed you as the arcology owner who kept Chattel Religionism from developing into a great force, and by those who agreed with you as the arcology owner who preserved Chattel Religionism as a welcoming and open as it was always meant to be. You have no doubt that the latter view dominates now and will come to predominate as it becomes settled. After all this, there's no chance that anyone who calls for another Chattel Religionist synod any time soon will get a serious hearing.
+
+<<else>>
+
+You have a busy week preparing for the $nicaeaName ahead of you. Planning the event itself is the easy part. Modern arcologies are designed to host big events, and it's not like you don't have a lot of labor available to assist you. Furthermore, one of $assistantName's standard functions is event planning. <<if $assistant == 0>>It<<else>>She<</if>> helps manage the thousand details of hosting a group of rich, powerful, opinionated people, letting you focus on the most important matters.
+<<if $HeadGirl != 0>>$HeadGirl.slaveName is also a great help. She does her best to supervise your other slaves even more thoroughly than usual, giving you precious time.<</if>>
+<<if $Concubine != 0>>Of course, $Concubine.slaveName is always there to help you relax when you need it.<</if>>
+<br><br>
+The first major choice you have to make concerns the seats on the Council. There are some Chattel Religionists you simply have to invite; they're so prominent that if you don't, the Council's decisions will lack any weight. But that doesn't mean you don't have room to manipulate the list of people invited in order to enhance your influence in the council. It wouldn't be difficult to selectively invite Chattel Religionist slaveowners that have the reputation to support attendance, who you know to be philosophically aligned with your thoughts about the faith. On the other hand, managing the seats on the Council with perfect impartiality would definitely help acceptance of any creed the Council agrees upon.
+<br><br>
+
+<span id="result">
+<<click "Apportion Council seats impartially">>
+	<<replace "#result">>
+	You apportion the seats impartially, doing everything you can to help ensure that all Chattel Religionists will see the Council as authoritative.
+	<</replace>>
+<</click>>
+<br><<click "Invite Chattel Religionists you agree with">>
+	<<replace "#result">>
+	You do your best to invite Chattel Religionists you hope will agree with you, while trying to keep what you're doing from being too obvious.
+	<<set $nicaeaPower -= 1, $nicaeaInfluence += 1>>
+	<</replace>>
+<</click>>
+</span>
+
+<br><br>
+Second, you need to decide whether you intend to engage in a canvassing campaign before the Council begins. There's nothing stopping you from airing your views with invitees before they arrive. However, swaying them is going to require you to really throw your weight around. These are powerful people, and you'll have to expend Free Cities political capital without holding back if you hope to sway even one of them. It's not like you lack for favors you could call in, though.
+<br><br>
+
+<span id="result2">
+<<click "Rely on your prominence">>
+	<<replace "#result2">>
+	You decide that you don't need to spend precious reputational power. You're prominent enough that you expect to achieve your goals without special leverage.
+	<</replace>>
+<</click>>
+<br><<click "Leverage reputation into power">>
+	<<replace "#result2">>
+	This isn't an opportunity that will come again. @@color:red;You call in every favor you have.@@ You'll have to rebuild your reputation later.
+	<<set $rep *= 0.3, $nicaeaInfluence += 1>>
+	<</replace>>
+<</click>> //This will cost a great deal of reputation//
+</span>
+
+<br><br>
+Finally, you could use money to influence the Council. Everyone who's likely to accept a seat is wealthy, so even you don't have the financial resources to buy votes, and many of the attendees are the type of people who would take offense at any attempt to bribe them on a subject as important as the future of Chattel Religionism. You could, however, host the Council as opulently as possible, and turn it into a simultaneous religious festival for all your citizens and any Chattel Religionist people who feel like visiting. A holiday atmosphere you created should buttress your position with the Council.
+<br><br>
+
+<span id="result3">
+<<click "Just host the Council">>
+	<<replace "#result3">>
+	The Council doesn't need the distraction of a lot of less important people enjoying themselves loudly nearby, so you decide not to broaden the event.
+	<</replace>>
+<</click>>
+<br><<click "Leverage reputation into power">>
+	<<replace "#result3">>
+	Good works will spread the joy of a Chattel Religionist revival, and make you even more influential with the Council. You plan a public festival as part of the event.
+	<<set $cash -= 50000, $nicaeaInfluence += 1>>
+	<</replace>>
+<</click>> //This will cost ¤50000//
+</span>
+
+<</if>>
\ No newline at end of file
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index 0009c4e8f15b547cf52267ac88273fde244368c8..2a08168379a61032c170844fe6a7e5c8c547c015 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -1,15 +1,53 @@
 :: Servants' Quarters Report [nobr]
 
-''Servants' Quarters Report''<hr style="margin:0">
 
-<<set $servantsQuartersSlaves to 0>>
-<<set $stewardessFetish to 0>>
-<<set $stewardessBonus to 0>>
-<<set $stewardessImpregnated to 0>>
-<<set $SQMilk = 0>>
-<<set $SQMilkSale = 0>>
+<<set $servantsQuartersSlaves = 0, $stewardessBonus = 0, _SQMilk = 0, _SQMilkSale = 0, _stewardessFetish = 0, _stewardessImpregnated = 0, _SL = $slaves.length, _SWD = -1>>
 
 <<if ($Stewardess != 0)>>
+<<for _SWD = 0; _SWD < _SL; _SWD++>>
+<<if $slaves[_SWD].ID == $Stewardess.ID>>
+	<<break>>
+<</if>>
+<</for>>
+<</if>>
+<<if _SWD != -1>>
+	<<set $i = _SWD>>
+	<<silently>>
+	<<display "SA long term effects">>
+	<<display "SA relationships">>
+	<<display "SA rivalries">>
+	<</silently>>
+	<<if ($slaves[_SWD].health < -80)>>
+	<<set $slaves[_SWD].health += 20>>
+	<<elseif ($slaves[_SWD].health < -40)>>
+	<<set $slaves[_SWD].health += 15>>
+	<<elseif ($slaves[_SWD].health < 0)>>
+	<<set $slaves[_SWD].health += 10>>
+	<<elseif ($slaves[_SWD].health < 90)>>
+	<<set $slaves[_SWD].health += 7>>
+	<</if>>
+	<<if $slaves[_SWD].devotion <= 60>>
+	<<set $slaves[_SWD].devotion += 1>>
+	<</if>>
+	<<if $servantsQuartersDecoration != "standard">>
+	<<set $slaves[_SWD].devotion += 1>>
+	<</if>>
+	<<if $slaves[_SWD].trust < 60>>
+	<<set $slaves[_SWD].trust += 1>>
+	<</if>>
+	<<if $slaves[_SWD].fetishStrength <= 95>>
+	<<if $slaves[_SWD].fetish != "dom">>
+		<<fetishChangeChance $slaves[_SWD]>>
+		<<if $fetishChangeChance > random(0,100)>>
+			<<set _stewardessFetish to 1, $slaves[_SWD].fetishKnown to 1, $slaves[_SWD].fetish to "dom">>
+		<</if>>
+	<<elseif $slaves[_SWD].fetishKnown == 0>>
+		<<set _stewardessFetish to 1, $slaves[_SWD].fetishKnown to 1>>
+	<<else>>
+		<<set _stewardessFetish to 2, $slaves[_SWD].fetishStrength += 4>>
+	<</if>>
+	<</if>>
+	<<set $Stewardess = $slaves[_SWD]>>
 	<<if ($Stewardess.health >= 10) && ($Stewardess.health < 80)>>
 	<<set $stewardessBonus += 50>>
 	<<elseif ($Stewardess.health >= 80)>>
@@ -27,29 +65,20 @@
 <</if>>
 
 <<set $servantMilkersMultiplier = 0.5>>
-<<for $i to 0; $i < $slaves.length; $i++>>
-<<if ($slaves[$i].assignment is "work as a servant")>>
-	<<if $seeImages == 1>><<SlaveArt $slaves[$i] 0 0>><</if>>
-	<<set $servantsQuartersSlaves += 1>>
+<<for _i to 0; _i < _SL; _i++>>
+	<<if ($slaves[_i].assignment != "work as a servant")>><<continue>><</if>>
+	<<if $seeImages == 1>><<SlaveArt $slaves[_i] 0 0>><</if>>
+	<<set $servantsQuartersSlaves++, $i = _i>>
 	<<silently>>
-	<<display [[SA servant]]>>
-	<<if $servantMilkers == 1>>
-	<<if $slaves[$i].lactation > 0>>
+	<<display "SA servant">>
+	<<if ($servantMilkers == 1) && ($slaves[_i].lactation > 0)>>
 		<<display "SA get milked">>
-		<<set $SQMilk += $milk>>
-		<<set $SQMilkSale += $milkSale>>
-	<</if>>
-	<</if>>
-	<<if $stewardessImpregnates == 1>>
-	<<if $Stewardess != 0>>
-	<<if $Stewardess.balls > 0>>
-	<<if $Stewardess.pubertyXY == 1>>
-	<<if canGetPregnant($slaves[$i])>>
-	<<if canBreed($slaves[$i], $Stewardess)>>
-		<<set $slaves[$i].preg to 1, $slaves[$i].pregSource to $Stewardess.ID, $stewardessImpregnated += 1, $slaves[$i].vaginalCount += 10, $vaginalTotal += 10>>
-	<</if>>
-	<</if>>
+		<<set _SQMilk += $milk, _SQMilkSale += $milkSale>>
 	<</if>>
+	<<if ($stewardessImpregnates == 1) && ($Stewardess != 0)>>
+	<<if $Stewardess.balls > 0 && $Stewardess.pubertyXY == 1>>
+	<<if (canGetPregnant($slaves[_i])) && (canPenetrate($Stewardess)) && canBreed($slaves[_i], $Stewardess)>>
+		<<set $slaves[_i].preg to 1, $slaves[_i].pregSource to $Stewardess.ID, _stewardessImpregnated += 1, $slaves[_i].vaginalCount += 10, $vaginalTotal += 10>>
 	<</if>>
 	<</if>>
 	<</if>>
@@ -57,83 +86,36 @@
 	<<display "SA relationships">>
 	<<display "SA rivalries">>
 	<</silently>>
-	<<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
-	<<set $slaves[$i].devotion -= 5>>
-	<<set $slaves[$i].trust -= 5>>
-	<<elseif ($slaves[$i].devotion < 2)>>
-	<<set $slaves[$i].devotion += 2>>
-	<<elseif ($slaves[$i].devotion > 3)>>
-	<<set $slaves[$i].devotion -= 2>>
+	<<if ($slaves[_i].devotion <= 20) && ($slaves[_i].trust > -20)>>
+	<<set $slaves[_i].devotion -= 5, $slaves[_i].trust -= 5>>
+	<<elseif ($slaves[_i].devotion < 2)>>
+	<<set $slaves[_i].devotion += 2>>
+	<<elseif ($slaves[_i].devotion > 3)>>
+	<<set $slaves[_i].devotion -= 2>>
 	<</if>>
 	<<if $servantsQuartersDecoration != "standard">>
-	<<set $slaves[$i].devotion += 1>>
-	<</if>>
-	<<if ($slaves[$i].trust < -50)>>
-	<<set $slaves[$i].trust += 2>>
-	<<elseif ($slaves[$i].trust < -6)>>
-	<<set $slaves[$i].trust += 1>>
-	<</if>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif ($slaves[$i].health < -40)>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif ($slaves[$i].health < 0)>>
-	<<set $slaves[$i].health += 7>>
-	<<elseif ($slaves[$i].health < 90)>>
-	<<set $slaves[$i].health += 3>>
+	<<set $slaves[_i].devotion += 1>>
+	<</if>>
+	<<if ($slaves[_i].trust < -50)>>
+	<<set $slaves[_i].trust += 2>>
+	<<elseif ($slaves[_i].trust < -6)>>
+	<<set $slaves[_i].trust += 1>>
+	<</if>>
+	<<if ($slaves[_i].health < -80)>>
+	<<set $slaves[_i].health += 20>>
+	<<elseif ($slaves[_i].health < -40)>>
+	<<set $slaves[_i].health += 10>>
+	<<elseif ($slaves[_i].health < 0)>>
+	<<set $slaves[_i].health += 7>>
+	<<elseif ($slaves[_i].health < 90)>>
+	<<set $slaves[_i].health += 3>>
 	<</if>>
 	<<if ($Stewardess != 0)>>
 		<<set $cash += $stewardessBonus>>
 		<<if ($Stewardess.energy > 95) || (($Stewardess.fetishKnown == 1) && ($Stewardess.fetish is "dom"))>>
-			<<if ($slaves[$i].devotion < 45)>><<set $slaves[$i].devotion += 5>><</if>>
-		<</if>>
-	<</if>>
-
-<<elseif $Stewardess != 0>>
-<<if $slaves[$i].ID is $Stewardess.ID>>
-	<<silently>>
-	<<display "SA long term effects">>
-	<<display "SA relationships">>
-	<<display "SA rivalries">>
-	<</silently>>
-	<<if ($slaves[$i].health < -80)>>
-	<<set $slaves[$i].health += 20>>
-	<<elseif ($slaves[$i].health < -40)>>
-	<<set $slaves[$i].health += 15>>
-	<<elseif ($slaves[$i].health < 0)>>
-	<<set $slaves[$i].health += 10>>
-	<<elseif ($slaves[$i].health < 90)>>
-	<<set $slaves[$i].health += 7>>
-	<</if>>
-	<<if $slaves[$i].devotion <= 60>>
-	<<set $slaves[$i].devotion += 1>>
-	<</if>>
-	<<if $servantsQuartersDecoration != "standard">>
-	<<set $slaves[$i].devotion += 1>>
-	<</if>>
-	<<if $slaves[$i].trust < 60>>
-	<<set $slaves[$i].trust += 1>>
-	<</if>>
-	<<if $slaves[$i].fetishStrength <= 95>>
-	<<if $slaves[$i].fetish != "dom">>
-		<<fetishChangeChance $slaves[$i]>>
-		<<if $fetishChangeChance > random(0,100)>>
-			<<set $stewardessFetish to 1>>
-			<<set $slaves[$i].fetishKnown to 1>>
-			<<set $slaves[$i].fetish to "dom">>
+			<<if ($slaves[_i].devotion < 45)>><<set $slaves[_i].devotion += 5>><</if>>
 		<</if>>
-	<<elseif $slaves[$i].fetishKnown == 0>>
-		<<set $stewardessFetish to 1>>
-		<<set $slaves[$i].fetishKnown to 1>>
-	<<else>>
-		<<set $stewardessFetish to 2>>
-		<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
-	<</if>>
-	<<set $slaves[$i].penetrativeCount += $stewardessImpregnated>>
-	<<set $penetrativeTotal += $stewardessImpregnated>>
-<</if>>
-<</if>>
 <</for>>
 <<set $servantMilkersMultiplier = 1>>
 
@@ -144,23 +126,24 @@
 	<<else>>
 		''There are $servantsQuartersSlaves slaves working out of the servants' quarters.'' They work to @@color:yellowgreen;reduce@@ your household expenses; having a well-staffed house slightly @@color:green;increases@@ your reputation.
 	<</if>>
-	<<if $SQMilk > 0>>
-		Since your lactating servants spend most of their time working in the penthouse, they use the milkers there, giving $SQMilk liters of milk over the week, which is sold for @@color:yellowgreen;¤$SQMilkSale.@@
+	<<if _SQMilk > 0>>
+		Since your lactating servants spend most of their time working in the penthouse, they use the milkers there, giving _SQMilk liters of milk over the week, which is sold for @@color:yellowgreen;¤_SQMilkSale.@@
 	<</if>>
 
 	<<if ($Stewardess != 0)>>
-	$Stewardess.slaveName is serving as your stewardess.<<if $Stewardess.relationship is -3>>  She does her best to be your perfect housewife.<</if>>
-	<<if $stewardessImpregnated > 0>>
+	$Stewardess.slaveName is serving as your stewardess.<<if $Stewardess.relationship is -3>> She does her best to be your perfect housewife.<</if>>
+	<<if _stewardessImpregnated > 0>>
 		It's her responsibility to keep her charges pregnant, and
-		<<if $stewardessImpregnated == 1>>
+		<<if _stewardessImpregnated == 1>>
 			she cums in the fertile one's pussy all week.
 		<<else>>
-			she ensures the $stewardessImpregnated fertile servants are full of her cum at all times.
+			she ensures the _stewardessImpregnated fertile servants are full of her cum at all times.
 		<</if>>
+		<<set Tmult = (_stewardessImpregnated * 10), $slaves[_SWD].penetrativeCount += Tmult, $Stewardess.penetrativeCount += Tmult, $penetrativeTotal += Tmult>>
 	<</if>>
-	<<if $stewardessFetish == 1>>
+	<<if _stewardessFetish == 1>>
 		She's allowed and even expected to use her charges for her own gratification, and sometimes they'll even instigate submissive sex with her just to ingratiate themselves. She becomes comfortable with the role of a @@color:lightcoral;sexual dominant.@@
-	<<elseif $stewardessFetish == 2>>
+	<<elseif _stewardessFetish == 2>>
 		Having a legion of girls jumping to obey her daily commands @@color:lightsalmon;makes her more dominant.@@
 	<</if>>
 	<<if ($Stewardess.health < 10)>>
@@ -179,81 +162,74 @@
 	<<if ($Stewardess.intelligence > 0)>>
 		She's smart enough that she misses very little.
 	<</if>>
-	<<for $i to 0; $i < $slaves.length; $i++>>
-		<<if $slaves[$i].assignment is "work as a servant">>
+	<<for _i to 0; _i < _SL; _i++>>
+		<<if $slaves[_i].assignment != "work as a servant">><<continue>><</if>>
 		<<if $familyTesting == 1>>
-			<<if $slaves[$i].mother == $Stewardess.ID>>
-				She pays special attention to her daughter, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
+			<<if $slaves[_i].mother == $Stewardess.ID>>
+				She pays special attention to her daughter, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
 			<</if>>
-			<<if $slaves[$i].father == $Stewardess.ID>>
-				She pays special attention to her daughter, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
+			<<if $slaves[_i].father == $Stewardess.ID>>
+				She pays special attention to her daughter, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
 			<</if>>
-			<<if $slaves[$i].ID == $Stewardess.father>>
-				She pays special attention to her father, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
+			<<if $slaves[_i].ID == $Stewardess.father>>
+				She pays special attention to her father, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
 			<</if>>
-			<<if $slaves[$i].ID == $Stewardess.mother>>
-				She pays special attention to her mother, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
+			<<if $slaves[_i].ID == $Stewardess.mother>>
+				She pays special attention to her mother, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
 			<</if>>
-			<<if areSisters($slaves[$i], $Stewardess) == 1>>
-				She pays special attention to her twin, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
-			<<elseif areSisters($slaves[$i], $Stewardess) == 2>>
-				She pays special attention to her sister, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
-			<<elseif areSisters($slaves[$i], $Stewardess) == 3>>
-				She pays special attention to her half-sister, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
+			<<if areSisters($slaves[_i], $Stewardess) == 1>>
+				She pays special attention to her twin, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
+			<<elseif areSisters($slaves[_i], $Stewardess) == 2>>
+				She pays special attention to her sister, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
+			<<elseif areSisters($slaves[_i], $Stewardess) == 3>>
+				She pays special attention to her half-sister, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+				<<set $slaves[_i].trust += 1>>
 			<</if>>
 		<<else>>
-			<<if $Stewardess.relationTarget is $slaves[$i].ID>>
-				She pays special attention to her $slaves[$i].relation, $slaves[$i].slaveName, making sure she doesn't slack off just because they are related.
-				<<set $slaves[$i].trust += 1>>
-			<</if>>
+		<<if $Stewardess.relationTarget is $slaves[_i].ID>>
+			She pays special attention to her $slaves[_i].relation, $slaves[_i].slaveName, making sure she doesn't slack off just because they are related.
+			<<set $slaves[_i].trust += 1>>
 		<</if>>
-		<<if $Stewardess.relationshipTarget is $slaves[$i].ID>>
-			She dotes over her <<if $Stewardess.relationship == 1>>friend<<elseif $Stewardess.relationship is 2>>best friend<<elseif $Stewardess.relationship is 3>>friend with benefits<<elseif $Stewardess.relationship is 4>>lover<<elseif $Stewardess.relationship is 5>>slave wife<</if>>, $slaves[$i].slaveName, making sure she is knows how to do a good job and keeps her well stocked with everything she needs.
-			<<set $slaves[$i].devotion += 1>>
+		<</if>> /* closes family mode */
+		<<if $Stewardess.relationshipTarget is $slaves[_i].ID>>
+			She dotes over her <<if $Stewardess.relationship == 1>>friend<<elseif $Stewardess.relationship is 2>>best friend<<elseif $Stewardess.relationship is 3>>friend with benefits<<elseif $Stewardess.relationship is 4>>lover<<elseif $Stewardess.relationship is 5>>slave wife<</if>>, $slaves[_i].slaveName, making sure she is knows how to do a good job and keeps her well stocked with everything she needs.
+			<<set $slaves[_i].devotion += 1>>
 		<</if>>
-		<<if $Stewardess.rivalryTarget is $slaves[$i].ID>>
-			She bears down on her <<if $Stewardess.rivalry == 1>>growing rival<<elseif $Stewardess.rivalry is 2>>rival<<elseif $Stewardess.rivalry is 3>>bitter rival<</if>>, $slaves[$i].slaveName, forcing her to work extra hard or suffer punishment.
-			<<set $slaves[$i].devotion -= 1>>
-			<<set $slaves[$i].trust -= 1>>
+		<<if $Stewardess.rivalryTarget is $slaves[_i].ID>>
+			She bears down on her <<if $Stewardess.rivalry == 1>>growing rival<<elseif $Stewardess.rivalry is 2>>rival<<elseif $Stewardess.rivalry is 3>>bitter rival<</if>>, $slaves[_i].slaveName, forcing her to work extra hard or suffer punishment.
+			<<set $slaves[_i].devotion -= 1, $slaves[_i].trust -= 1>>
 			<<if random(1,100) > 65>>
-				<<set $Stewardess.rivalry += 1>>
-			<<set $slaves[$i].rivalry += 1>>
+				<<set $Stewardess.rivalry += 1, $slaves[_SWD].rivalry += 1, $slaves[_i].rivalry += 1>>
 			<</if>>
 		<</if>>
-		<<if $slaves[$i].prestigeDesc is "She is a famed Free Cities whore, and commands top prices.">>
-			She does her best to motivate the famous whore, $slaves[$i].slaveName, though she is uncertain why she is here.
+		<<if $slaves[_i].prestigeDesc is "She is a famed Free Cities whore, and commands top prices.">>
+			She does her best to motivate the famous whore, $slaves[_i].slaveName, though she is uncertain why she is here.
 		<</if>>
-		<<if $slaves[$i].prestigeDesc is "She is a famed Free Cities slut, and can please anyone.">>
-			She ignores her duties in order the fawn over the famous entertainer, $slaves[$i].slaveName.
+		<<if $slaves[_i].prestigeDesc is "She is a famed Free Cities slut, and can please anyone.">>
+			She ignores her duties in order the fawn over the famous entertainer, $slaves[_i].slaveName.
 		<</if>>
-		<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a cockmilker.">>
-			$slaves[$i].slaveName leaves a trail of cum wherever she goes and frequently stops to masturbate, greatly annoying $Stewardess.slaveName.
-			<<if random(1,100) > 90 and $Stewardess.rivalry == 0 and $slaves[$i].rivalry == 0>>
-			<<set $Stewardess.rivalryTarget to $slaves[$i].ID>>
-				<<set $Stewardess.rivalry += 1>>
-			<<set $slaves[$i].rivalryTarget to $Stewardess.ID>>
-			<<set $slaves[$i].rivalry += 1>>
+		<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a cockmilker.">>
+			$slaves[_i].slaveName leaves a trail of cum wherever she goes and frequently stops to masturbate, greatly annoying $Stewardess.slaveName.
+			<<if random(1,100) > 90 && $Stewardess.rivalry == 0 && $slaves[_i].rivalry == 0>>
+			<<set $Stewardess.rivalryTarget to $slaves[_i].ID, $Stewardess.rivalry += 1, $slaves[_SWD].rivalryTarget to $slaves[_i].ID, $slaves[_SWD].rivalry += 1>>
+			<<set $slaves[_i].rivalryTarget to $Stewardess.ID, $slaves[_i].rivalry += 1>>
 			<</if>>
 		<</if>>
-		<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a dairy cow.">>
-			$slaves[$i].slaveName's huge breasts frequently get in the way of her work and she leaks milk everywhere, greatly annoying $Stewardess.slaveName.
-			<<if random(1,100) > 90 and $Stewardess.rivalry == 0 and $slaves[$i].rivalry == 0>>
-			<<set $Stewardess.rivalryTarget to $slaves[$i].ID>>
-				<<set $Stewardess.rivalry += 1>>
-			<<set $slaves[$i].rivalryTarget to $Stewardess.ID>>
-			<<set $slaves[$i].rivalry += 1>>
+		<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a dairy cow.">>
+			$slaves[_i].slaveName's huge breasts frequently get in the way of her work and she leaks milk everywhere, greatly annoying $Stewardess.slaveName.
+			<<if random(1,100) > 90 and $Stewardess.rivalry == 0 and $slaves[_i].rivalry == 0>>
+			<<set $Stewardess.rivalryTarget to $slaves[_i].ID, $Stewardess.rivalry += 1, $slaves[_SWD].rivalryTarget to $slaves[_i].ID, $slaves[_SWD].rivalry += 1>>
+			<<set $slaves[_i].rivalryTarget to $Stewardess.ID, $slaves[_i].rivalry += 1>>
 			<</if>>
 		<</if>>
-		<<if $slaves[$i].prestigeDesc is "She is remembered for winning best in show as a breeder." and $slaves[$i].preg > 20>>
-			$slaves[$i].slaveName's big pregnant belly frequently gets in the way of her work. However, $Stewardess.slaveName is willing to overlook it, as well as allow her easy jobs, due to how valuable her womb is.
-		<</if>>
+		<<if $slaves[_i].prestigeDesc is "She is remembered for winning best in show as a breeder." and $slaves[_i].preg > 20>>
+			$slaves[_i].slaveName's big pregnant belly frequently gets in the way of her work. However, $Stewardess.slaveName is willing to overlook it, as well as allow her easy jobs, due to how valuable her womb is.
 		<</if>>
 	<</for>>
 	<<if ($Stewardess.fetishKnown == 1)>>
@@ -263,7 +239,7 @@
 	<<elseif ($Stewardess.energy > 95)>>
 		She walks among the cowering servants looking for an excuse to extract sex from shirkers as @@color:hotpink;punishment.@@
 	<</if>>
-	<<if $stewardessImpregnated == 1>>
+	<<if _stewardessImpregnated == 1>>
 		The Societal Elite know you've ordered $Stewardess.slaveName to impregnate your maids. @@color:red;They are not amused by your disenterest in eugenics.@@
 		<<set $failedElite += 10>>
 	<</if>>
diff --git a/src/uncategorized/slaveAssignmentsReport.tw b/src/uncategorized/slaveAssignmentsReport.tw
index 026495197c5998f95cd6e2d98d70f1425e769e0a..9568688d9d0553480abe50960965985496d3fcea 100644
--- a/src/uncategorized/slaveAssignmentsReport.tw
+++ b/src/uncategorized/slaveAssignmentsReport.tw
@@ -1,5 +1,5 @@
 :: Slave Assignments Report [nobr]
- 
+
 <<set $nextLink to "Economics", $nextButton to "Continue">>
 
 <<for _i to 0; _i < $slaves.length; _i++>>
@@ -328,39 +328,118 @@
 <</if>>
 <</if>>
 
-<<if ($brothel > 0)>>
-	<<display "Brothel Report">>
+
+/* Accordion 000-250-006 */
+ <<if ($brothel > 0)>>
+    <<if def $useAccordion >>
+        <button class="passage-brothel-report accordion">''$brothelNameCaps Report''</button>
+    <<else>>
+        ''$brothelNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Brothel Report" "div">>
 <</if>>
+
 <<if ($club > 0)>>
-	<<display "Club Report">>
+    <<if def $useAccordion>>
+        <button class="passage-club-report accordion">''$clubNameCaps Report''</button>
+    <<else>>
+        ''$clubNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Club Report" "div">>
 <</if>>
+
 <<if ($arcade > 0)>>
-	<<display "Arcade Report">>
+    <<if def $useAccordion>>
+        <button class="passage-arcade-report accordion">''$arcadeNameCaps Report''</button>
+    <<else>>
+        ''$arcadeNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+	<<display "Arcade Report" "div">>
 <</if>>
+
 <<if ($dairy > 0)>>
-	<<display "Dairy Report">>
+    <<if def $useAccordion>>
+        <button class="passage-dairy-report accordion">''$dairyNameCaps Report''</button>
+    <<else>>
+        ''$dairyNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Dairy Report" "div">>
 <</if>>
+
 <<if ($servantsQuarters > 0)>>
-	<<display "Servants' Quarters Report">>
+    <<if def $useAccordion>>
+        <button class="passage-servants-quarters-report accordion">''$servantsQuartersNameCaps Quarters Report''</button>
+    <<else>>
+        ''$servantsQuartersNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Servants' Quarters Report" "div">>
 <</if>>
+
 <<if ($schoolroom > 0)>>
-	<<display "Schoolroom Report">>
+    <<if def $useAccordion>>
+        <button class="passage-schoolroom-report accordion">''$schoolroomNameCaps Report''</button>
+    <<else>>
+        ''$schoolroomNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+	<<display "Schoolroom Report" "div">>
 <</if>>
+
 <<if ($spa > 0)>>
-	<<display "Spa Report">>
+    <<if def $useAccordion>>
+        <button class="passage-spa-report accordion">''$spaNameCaps Report''</button>
+    <<else>>
+        ''$spaNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+	<<display "Spa Report" "div">>
 <</if>>
+
 <<if ($clinic > 0)>>
-	<<display "Clinic Report">>
+    <<if def $useAccordion>>
+        <button class="passage-clinic-report accordion">''$clinicNameCaps Report''</button>
+    <<else>>
+        ''$clinicNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Clinic Report" "div">>
 <</if>>
+
 <<if ($cellblock > 0)>>
-	<<display "Cellblock Report">>
+    <<if def $useAccordion>>
+        <button class="passage-cellblock-report accordion">''$cellblockNameCaps Report''</button>
+    <<else>>
+        ''$cellblockNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+    <<display "Cellblock Report" "div">>
 <</if>>
 <<if ($incubator > 0)>>
-	<<display "Incubator Report">>
+	<<if def $useAccordion>>
+		<button class="passage-incubator-report accordion">''$incubatorNameCaps Report''</button>
+	<<else>>
+		''$incubatorNameCaps Report''
+		<hr style="margin:0">
+	<</if>>
+	<<display "Incubator Report" "div">>
 <</if>>
 <<if ($masterSuite > 0)>>
-	<<display "Master Suite Report">>
+    <<if def $useAccordion>>
+        <button class="passage-master-suite-report accordion">''$masterSuiteNameCaps Report''</button>
+    <<else>>
+        ''$masterSuiteNameCaps Report''
+        <hr style="margin:0">
+    <</if>>
+	<<display "Master Suite Report" "div">>
 <</if>>
+<br />
+<br />
+/* Accordion 000-250-006 */
 
 <<if $slavesVisible > 0>>
 __''Penthouse Report''__<br>
diff --git a/src/uncategorized/slaveSold.tw b/src/uncategorized/slaveSold.tw
index 25057f5e35068a579cfc5c2d3bb83448a96d4653..7b201f18cba012fae899cec4d9a4afe08fbdff7b 100644
--- a/src/uncategorized/slaveSold.tw
+++ b/src/uncategorized/slaveSold.tw
@@ -798,7 +798,7 @@
 	<</for>>
 	
 <<case "D butt bury">>
-	$activeSlave.slaveName's buyer arrives promptly; he seems pleased with his new slave's bountiful bottom, so far off the ground. Your buttsluts giggle over what hes's got in store for her, and @@color:mediumaquamarine;envy@@ her new owner a little.
+	$activeSlave.slaveName's buyer arrives promptly; he seems pleased with his new slave's bountiful bottom, so far off the ground. Your buttsluts giggle over what he's got in store for her, and @@color:mediumaquamarine;envy@@ her new owner a little.
 	<<for $j to 0; $j < $slaves.length; $j++>>
 	<<if ($slaves[$j].fetish is "buttslut")>>
 	<<if ($slaves[$j].fetishKnown == 1)>>
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index 8b847b5dc5ab721e6b9f8d0519510ce1392036b9..544db869dff5293ecf5982e5cd50e0dc12743518 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -1,6 +1,5 @@
 :: Spa Report [nobr]
 
-''Spa Report''<hr style="margin:0">
 
 <<set $attendantUsedCure to 0>>
 <<set $restedSlaves to 0>>
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 4d49cfa76b6bdc0aef84c56f15da6960f25e9aff..0b83efee4ecf570d4ceb323d991365847eda7c56 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -671,6 +671,12 @@
 <</if>>
 <</if>>
 
+<<if $arcologies[0].FSChattelReligionistCreed == 1>>
+<<if $nicaeaAssignment == $args[0].assignment>>
+	<<set $beauty += $nicaeaPower*2>>
+<</if>>
+<</if>>
+
 <<if $args[0].prestige > 0>>
 	<<set $beauty to $beauty+($beauty*$args[0].prestige*0.1)>>
 <</if>>
diff --git a/vector source.svg b/vector source.svg
new file mode 100644
index 0000000000000000000000000000000000000000..683900b87deaab0c391dbdf15f513d89213251f9
--- /dev/null
+++ b/vector source.svg	
@@ -0,0 +1,3103 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 1000 1000"
+   style="enable-background:new 0 0 1000 1000;"
+   xml:space="preserve"
+   id="svg4356"
+   sodipodi:docname="fc vector edit.svg"
+   inkscape:version="0.92.0 r15299"><metadata
+     id="metadata4362"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs4360" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1017"
+     id="namedview4358"
+     showgrid="false"
+     inkscape:zoom="0.85"
+     inkscape:cx="479.40904"
+     inkscape:cy="583.29324"
+     inkscape:window-x="-8"
+     inkscape:window-y="-8"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg4356" /><style
+     type="text/css"
+     id="style3680">
+	.st0{fill:#FFFFFF;}
+	.st1{fill:#76C043;}
+	.st2{fill:#2680BC;}
+	.st3{fill:#F6E0E8;}
+	.st4{fill:#515351;}
+	.st5{fill:#F4F1A3;}
+	.st6{fill:#8E4F21;}
+	.st7{fill:#BC2027;}
+	.st8{fill:#60BB46;}
+	.st9{fill:#4686C6;}
+	.st10{fill:#D28DBD;}
+	.st11{fill:#3F403F;}
+	.st12{fill:#010101;}
+	.st13{fill:#8F8F8E;}
+	.st14{fill:#515251;}
+	.st15{fill:#4F6AB2;}
+	.st16{fill:#3E65B0;}
+	.st17{fill:#15406D;}
+	.st18{fill:#65AD45;}
+	.st19{fill:#787878;}
+	.st20{fill:#D76B93;}
+	.st21{fill:#4DB748;}
+	.st22{opacity:0.24;fill:#BF2126;enable-background:new    ;}
+	.st23{fill:#070505;}
+	.st24{fill:#BF2126;}
+</style><g
+     id="Arm"><g
+       id="Arm_High"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 579.7,208 c 33,6 81.8,-36.8 94.5,-39.6 -28.1,-11.8 -37.6,-29.6 -84.3,-61.1 0,0 -42,18 -43.4,2.2 -3.5,-39.9 31.1,-22.5 48.4,-9.9 14.8,1.2 111.4,57.8 107.4,71.3 -6.1,20.6 -84.8,65.8 -114.7,81.4 -49.9,-6.5 -28.8,-47.8 -7.9,-44.3"
+         class="st3"
+         id="L_2_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 501.8,204.7 c -21.8,3.4 -60,-36.9 -82.3,-50.2 28.1,-11.8 29.5,-16.2 76.2,-47.7 0,0 42,18 43.4,2.2 3.5,-39.9 -31.1,-22.5 -48.4,-9.9 -14.8,1.2 -92.9,44.3 -88.9,57.8 6.1,20.6 48.4,58 75.4,76 8.9,4.4 28.5,-13.6 24.6,-28.2"
+         class="st3"
+         id="R_2_" /></g><g
+       id="Arm_Low"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 573.4,255 c 33,-6 29.6,56.1 37.5,74.3 -5,16.2 -6.6,41.9 -36.3,87.2 0,0 -42,-18 -43.4,-2.2 -3.5,39.9 28.5,17.8 48.4,9.9 12.4,-4.9 45.3,-83.4 49.9,-100.1 3.1,-11.3 -13.8,-86.7 -31.5,-104.1 -8.1,-7.9 -9.6,-4.9 -16.6,-9.2 -50.1,6.3 -29,47.7 -8,44.2"
+         class="st3"
+         id="L" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 486.2,253.7 c -28.3,-5.9 -25.4,54.5 -32.3,72.2 4.3,15.6 5.7,40.7 31.3,84.7 0,0 36.2,-17.5 37.3,-2.1 3,38.7 -24.5,17.2 -41.7,9.6 -10.7,-4.8 -39,-81 -42.9,-97.1 -2.7,-10.9 11.8,-84.2 27.1,-101.1 6.9,-7.7 8.3,-4.7 14.3,-8.9 43,6 24.9,46 6.9,42.7"
+         class="st3"
+         id="R" /></g><g
+       id="Arm_Mid"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 487.4,253.7 c -28.3,-5.9 -22.8,53.7 -29.6,71.4 18.2,0.4 51.1,-12.2 103.6,-15.7 0,0 36.2,-17.5 37.3,-2.1 3,38.7 -20.2,22.3 -37.3,14.6 -14.3,-2 -119,32.5 -122.9,16.4 -2.7,-10.9 12.4,-101.7 27.7,-118.5 6.9,-7.7 8.3,-4.7 14.3,-8.9 43.1,6.1 25,46.1 6.9,42.8"
+         class="st3"
+         id="R_1_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 578.1,257 c 28.8,-6 21.8,49.7 28.7,67.6 -18.6,0.4 -50.5,-7.6 -103.8,-11.1 0,0 -36.7,-17.8 -37.9,-2.2 -3,39.3 20.4,22.7 37.9,14.8 14.6,-2 120.8,33 124.8,16.6 2.8,-11.1 -12.7,-103.2 -28.2,-120.3 -7.1,-7.8 -8.4,-4.8 -14.5,-9.1 -43.7,6.4 -25.3,47.1 -7,43.7"
+         class="st3"
+         id="L_1_" /></g><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 574.7,252.8 c 25.1,-5.4 9.1,67.7 17,85.9 13.9,6.4 20.4,-4.7 50.5,-19.5 0,0 16.4,-37 9.2,-40 -1.7,-0.7 -6.6,-1.2 -6.6,-1.2 0,-7.6 0.8,-25.2 -2.1,-24.8 -2.4,0.4 -1.4,17.3 -2.9,24.7 -14,1.9 -7.6,20.6 -6.9,30.8 -9.3,8 -15.3,10.8 -24.4,12.1 3.1,-11.3 8.6,-85.7 -9.2,-103 -8.1,-7.9 -9.6,-4.9 -16.6,-9.2 -50,6.3 -29,47.6 -8,44.2"
+       class="st3"
+       id="Arm_Left_Rebel" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 581.3,240.3 c 9.9,3.7 6.2,3.3 36.3,17.8 8.3,4 20.5,9.8 35.5,16.5 11.8,9.2 22.4,13.4 30,15.5 18.5,5.1 33.2,1.6 40.4,11.9 3.9,5.5 4.9,11.6 4.9,11.6 1.8,3.2 3.7,7.7 4.7,13.4 0.9,5.3 0.4,8.9 1.3,9.1 1.1,0.2 3.7,-4.2 3.9,-9.1 0.2,-5.5 -2.7,-8.8 -1.3,-10.3 1.3,-1.3 3.7,1 6.5,0.1 5.7,-1.8 6.1,-14.6 6.2,-16.1 0.1,-4.7 0.3,-10.6 -3.3,-14 -4.4,-4.1 -10.6,-1 -20,-0.7 -9.4,0.4 -20.9,-4.8 -43.8,-15 -10.4,-4.6 -15.5,-6.9 -22.5,-11 -13.4,-7.8 -23.2,-16.1 -29.5,-22 -26.2,-19 -35.6,-24.7 -38.3,-25.4 -0.4,-0.1 -3.1,-0.8 -6.5,-2.3 -0.9,-0.4 -2,-0.9 -3.2,-1.6 -11.7,3 -19,6.2 -23.5,9.2 -3.9,2.7 -6.8,5.7 -6.5,8.7 0.5,5.6 11.9,7.3 28.7,13.7 z"
+       class="st3"
+       id="Arm_Left_Thumb_Down" /></g><g
+     id="Arm_Outfit"><g
+       id="Arm_High_1_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 579.7,208 c 33,6 81.8,-36.8 94.5,-39.6 -28.1,-11.8 -37.6,-29.6 -84.3,-61.1 0,0 -42,18 -43.4,2.2 -3.5,-39.9 31.1,-22.5 48.4,-9.9 14.8,1.2 111.4,57.8 107.4,71.3 -6.1,20.6 -84.8,65.8 -114.7,81.4 -49.9,-6.5 -28.8,-47.8 -7.9,-44.3"
+         class="st4"
+         id="L_5_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 501.8,204.7 c -21.8,3.4 -60,-36.9 -82.3,-50.2 28.1,-11.8 29.5,-16.2 76.2,-47.7 0,0 42,18 43.4,2.2 3.5,-39.9 -31.1,-22.5 -48.4,-9.9 -14.8,1.2 -92.9,44.3 -88.9,57.8 6.1,20.6 48.4,58 75.4,76 8.9,4.4 28.5,-13.6 24.6,-28.2"
+         class="st4"
+         id="R_5_" /></g><g
+       id="Arm_Low_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 573.4,255 c 33,-6 29.6,56.1 37.5,74.3 -5,16.2 -6.6,41.9 -36.3,87.2 0,0 -42,-18 -43.4,-2.2 -3.5,39.9 28.5,17.8 48.4,9.9 12.4,-4.9 45.3,-83.4 49.9,-100.1 3.1,-11.3 -13.8,-86.7 -31.5,-104.1 -8.1,-7.9 -9.6,-4.9 -16.6,-9.2 -50.1,6.3 -29,47.7 -8,44.2"
+         class="st4"
+         id="L_4_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 486.2,253.7 c -28.3,-5.9 -25.4,54.5 -32.3,72.2 4.3,15.6 5.7,40.7 31.3,84.7 0,0 36.2,-17.5 37.3,-2.1 3,38.7 -24.5,17.2 -41.7,9.6 -10.7,-4.8 -39,-81 -42.9,-97.1 -2.7,-10.9 11.8,-84.2 27.1,-101.1 6.9,-7.7 8.3,-4.7 14.3,-8.9 43,6 24.9,46 6.9,42.7"
+         class="st4"
+         id="R_4_" /></g><g
+       id="Arm_Mid_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 487.4,253.7 c -28.3,-5.9 -22.8,53.7 -29.6,71.4 18.2,0.4 51.1,-12.2 103.6,-15.7 0,0 36.2,-17.5 37.3,-2.1 3,38.7 -20.2,22.3 -37.3,14.6 -14.3,-2 -119,32.5 -122.9,16.4 -2.7,-10.9 12.4,-101.7 27.7,-118.5 6.9,-7.7 8.3,-4.7 14.3,-8.9 43.1,6.1 25,46.1 6.9,42.8"
+         class="st4"
+         id="R_3_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 578.1,257 c 28.8,-6 21.8,49.7 28.7,67.6 -18.6,0.4 -50.5,-7.6 -103.8,-11.1 0,0 -36.7,-17.8 -37.9,-2.2 -3,39.3 20.4,22.7 37.9,14.8 14.6,-2 120.8,33 124.8,16.6 2.8,-11.1 -12.7,-103.2 -28.2,-120.3 -7.1,-7.8 -8.4,-4.8 -14.5,-9.1 -43.7,6.4 -25.3,47.1 -7,43.7"
+         class="st4"
+         id="L_3_" /></g><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 574.7,252.8 c 25.1,-5.4 9.1,67.7 17,85.9 13.9,6.4 20.4,-4.7 50.5,-19.5 0,0 16.4,-37 9.2,-40 -1.7,-0.7 -6.6,-1.2 -6.6,-1.2 0,-7.6 0.8,-25.2 -2.1,-24.8 -2.4,0.4 -1.4,17.3 -2.9,24.7 -14,1.9 -7.6,20.6 -6.9,30.8 -9.3,8 -15.3,10.8 -24.4,12.1 3.1,-11.3 8.6,-85.7 -9.2,-103 -8.1,-7.9 -9.6,-4.9 -16.6,-9.2 -50,6.3 -29,47.6 -8,44.2"
+       class="st4"
+       id="Arm_Left_Rebel_Latex" /><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 581.3,240.3 c 9.9,3.7 6.2,3.3 36.3,17.8 8.3,4 20.5,9.8 35.5,16.5 11.8,9.2 22.4,13.4 30,15.5 18.5,5.1 33.2,1.6 40.4,11.9 3.9,5.5 4.9,11.6 4.9,11.6 1.8,3.2 3.7,7.7 4.7,13.4 0.9,5.3 0.4,8.9 1.3,9.1 1.1,0.2 3.7,-4.2 3.9,-9.1 0.2,-5.5 -2.7,-8.8 -1.3,-10.3 1.3,-1.3 3.7,1 6.5,0.1 5.7,-1.8 6.1,-14.6 6.2,-16.1 0.1,-4.7 0.3,-10.6 -3.3,-14 -4.4,-4.1 -10.6,-1 -20,-0.7 -9.4,0.4 -20.9,-4.8 -43.8,-15 -10.4,-4.6 -15.5,-6.9 -22.5,-11 -13.4,-7.8 -23.2,-16.1 -29.5,-22 -26.2,-19 -35.6,-24.7 -38.3,-25.4 -0.4,-0.1 -3.1,-0.8 -6.5,-2.3 -0.9,-0.4 -2,-0.9 -3.2,-1.6 -11.7,3 -19,6.2 -23.5,9.2 -3.9,2.7 -6.8,5.7 -6.5,8.7 0.5,5.6 11.9,7.3 28.7,13.7 z"
+       class="st4"
+       id="Arm_Left_Thumb_Down_1_" /></g><g
+     id="Hair_Aft_2_"><path
+       style="fill:#f4f1a3"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st5"
+       id="Hair_Aft" /><path
+       style="fill:#8e4f21"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st6"
+       id="Hair_Aft_1_" /><path
+       style="fill:#bc2027"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st7"
+       id="Hair_Aft_3_" /><path
+       style="fill:#60bb46"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st8"
+       id="Hair_Aft_4_" /><path
+       style="fill:#4686c6"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st9"
+       id="Hair_Aft_5_" /><path
+       style="fill:#d28dbd"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st10"
+       id="Hair_Aft_6_" /><path
+       style="fill:#3f403f"
+       inkscape:connector-curvature="0"
+       d="m 564.6,100.2 c 13.5,72.4 34.5,66.5 14,103.3 -43.3,47.7 -90.1,7 -98.1,-9.8 -41.1,-23.4 -0.3,-140.8 48.3,-130.3 33.3,7.2 33.3,19.5 35.8,36.8"
+       class="st11"
+       id="Hair_Aft_7_" /></g><g
+     id="Ass"><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 555.8,402.6 c 10.1,-2.9 25.4,17.5 31.8,30.1 10.4,20.9 7,41.9 5.3,52.2 -2.1,13.3 -5.7,22.8 -9.5,32.6 -7.8,19.7 -15.6,39.6 -21.9,39.1 -16.7,-1.3 -30.4,-146.9 -5.7,-154 z"
+       class="st3"
+       id="Butt_0" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 547.3,389.8 c 1.7,-0.5 6.3,2.7 15.5,9 4.2,2.9 9.2,7.9 21.1,16.9 8.7,6.6 15.4,11.6 20.6,19.1 0,0 13.7,19.8 6.6,48.5 -0.6,2.7 -1.5,5.2 -1.5,5.2 -1.2,3.6 -2.9,6.4 -5.9,12.7 -4.4,9.3 -4.7,11.3 -6.4,14.7 -4.4,8.9 -8.5,11.2 -15.6,19.8 -4.1,5 -6.9,9.3 -9,12.9 -5.5,9.6 -6,11.3 -7,11.4 -9.9,0.8 -36.6,-165.3 -18.4,-170.2 z"
+       class="st3"
+       id="Butt_1" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 548,389.8 c 1.9,-0.5 7,2.9 17.2,9.8 4.7,3.1 10.2,8.6 23.4,18.3 9.7,7.1 17,12.5 22.9,20.7 0,0 15.2,21.5 7.3,52.6 -0.7,2.9 -1.7,5.7 -1.7,5.7 -1.4,3.9 -3.3,6.9 -6.5,13.8 -4.8,10.1 -5.2,12.2 -7.1,15.9 -4.9,9.6 -9.5,12.1 -17.3,21.5 -4.6,5.4 -7.7,10.1 -9.9,14 -6.1,10.4 -6.6,12.3 -7.8,12.4 -11.1,0.8 -40.7,-179.4 -20.5,-184.7 z"
+       class="st3"
+       id="Butt_2" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 548.6,389.8 c 2.1,-0.5 7.6,3.1 18.7,10.3 5,3.3 11.1,9 25.3,19.2 10.5,7.5 18.5,13.2 24.8,21.8 0,0 16.4,22.6 7.9,55.2 -0.7,3 -1.8,6 -1.8,6 -1.5,4 -3.5,7.3 -7,14.5 -5.2,10.6 -5.7,12.9 -7.7,16.7 -5.3,10.1 -10.2,12.7 -18.8,22.6 -5,5.7 -8.3,10.6 -10.8,14.7 -6.6,11 -7.2,12.9 -8.4,13 -12,0.7 -44.1,-188.5 -22.2,-194 z"
+       class="st3"
+       id="Butt_3" /></g><g
+     id="Ass_Outfit"><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 555.8,402.6 c 10.1,-2.9 25.4,17.5 31.8,30.1 10.4,20.9 7,41.9 5.3,52.2 -2.1,13.3 -5.7,22.8 -9.5,32.6 -7.8,19.7 -15.6,39.6 -21.9,39.1 -16.7,-1.3 -30.4,-146.9 -5.7,-154 z"
+       class="st4"
+       id="Butt_0_1_" /><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 547.3,389.8 c 1.7,-0.5 6.3,2.7 15.5,9 4.2,2.9 9.2,7.9 21.1,16.9 8.7,6.6 15.4,11.6 20.6,19.1 0,0 13.7,19.8 6.6,48.5 -0.6,2.7 -1.5,5.2 -1.5,5.2 -1.2,3.6 -2.9,6.4 -5.9,12.7 -4.4,9.3 -4.7,11.3 -6.4,14.7 -4.4,8.9 -8.5,11.2 -15.6,19.8 -4.1,5 -6.9,9.3 -9,12.9 -5.5,9.6 -6,11.3 -7,11.4 -9.9,0.8 -36.6,-165.3 -18.4,-170.2 z"
+       class="st4"
+       id="Butt_1_2_" /><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 548,389.8 c 1.9,-0.5 7,2.9 17.2,9.8 4.7,3.1 10.2,8.6 23.4,18.3 9.7,7.1 17,12.5 22.9,20.7 0,0 15.2,21.5 7.3,52.6 -0.7,2.9 -1.7,5.7 -1.7,5.7 -1.4,3.9 -3.3,6.9 -6.5,13.8 -4.8,10.1 -5.2,12.2 -7.1,15.9 -4.9,9.6 -9.5,12.1 -17.3,21.5 -4.6,5.4 -7.7,10.1 -9.9,14 -6.1,10.4 -6.6,12.3 -7.8,12.4 -11.1,0.8 -40.7,-179.4 -20.5,-184.7 z"
+       class="st4"
+       id="Butt_2_1_" /><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="m 548.6,389.8 c 2.1,-0.5 7.6,3.1 18.7,10.3 5,3.3 11.1,9 25.3,19.2 10.5,7.5 18.5,13.2 24.8,21.8 0,0 16.4,22.6 7.9,55.2 -0.7,3 -1.8,6 -1.8,6 -1.5,4 -3.5,7.3 -7,14.5 -5.2,10.6 -5.7,12.9 -7.7,16.7 -5.3,10.1 -10.2,12.7 -18.8,22.6 -5,5.7 -8.3,10.6 -10.8,14.7 -6.6,11 -7.2,12.9 -8.4,13 -12,0.7 -44.1,-188.5 -22.2,-194 z"
+       class="st4"
+       id="Butt_3_1_" /></g><g
+     id="Leg"><g
+       id="Leg_Narrow"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 445.9,413.1 c 0,0 -10.3,43.4 -10.6,67.8 -0.5,43.2 14.3,129.1 30.4,183.7 7.5,61.7 6.2,123.3 8.8,185.4 l 11.5,-0.3 c 2.2,-51.3 34,-103.9 16.3,-161.5 2.3,-46.1 10,-72.4 5,-160.3 -5.4,94.3 16.6,109.2 26.4,153.6 -15.6,58 5.7,110.8 6.5,168.9 h 16.3 c 0.2,-58.5 15.6,-94.6 7.7,-168.9 12.4,-64.5 12.4,-139.3 11.6,-205.6 -0.3,-26 -5.4,-64.7 -5.4,-64.7 l -124.5,1.9"
+         class="st3"
+         id="XMLID_464_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 508,588.6 c -9.8,-40.3 -16.6,-61.7 -12.6,-107.8 -0.7,44.5 3.5,67.1 12.6,107.8 z"
+         class="st12"
+         id="XMLID_465_" /></g><g
+       id="Leg_Normal"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 446,413.2 c 0,0 -17.1,47.4 -18.7,71.7 -3.8,60.3 16.3,123.8 38.4,179.8 7.5,61.7 6.2,123.3 8.8,185.4 l 11.5,-0.3 c 2.2,-51.3 34,-103.9 16.3,-161.5 12.8,-54.2 10,-72.4 5,-160.3 -5.4,94.3 16.6,109.1 26.4,153.5 -15.6,58 5.6,110.9 6.4,169 h 16.3 c 0.2,-58.5 15.6,-94.7 7.8,-169 23.8,-69.9 25.5,-131.2 20.7,-194.7 -2,-26 -14.5,-75.6 -14.5,-75.6 l -124.4,2"
+         class="st3"
+         id="XMLID_466_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 513.9,619.8 c -9.8,-40.3 -22.5,-96.7 -18.5,-142.8 -0.8,44.7 9.4,102.1 18.5,142.8 z"
+         class="st12"
+         id="XMLID_467_" /></g><g
+       id="Leg_Wide"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 445.8,413.1 c 0,0 -26.1,35.9 -27.6,60.3 -3.8,60.3 16.8,135.5 38.9,191.5 7.5,61.7 14.8,123 17.3,185.1 l 11.5,-0.3 c 2.3,-52.9 39.2,-99.2 20.2,-160.8 13.6,-57.7 6.2,-71.9 1,-161 -5.4,94.3 4.4,110.4 14.2,154.8 -15.6,58 17.8,109.6 18.6,167.8 h 16.3 c 0.2,-58.5 16.4,-95.2 8.5,-169.5 23.8,-69.9 46.5,-155.6 41.7,-219 -2,-25.9 -36,-50.6 -36,-50.6 l -124.6,1.7"
+         class="st3"
+         id="XMLID_468_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="M 509.6,630.9 C 499.8,590.6 488.8,530 492.8,483.8 c -0.8,44.7 7.6,106.4 16.8,147.1 z"
+         class="st12"
+         id="XMLID_469_" /></g><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 446.3,412.5 c 31.3,-22.1 86.4,-32 124.3,-2.1 25.6,20.2 45.7,60.3 31.5,80.6 -10.7,15.2 -39.7,17.8 -60,10 -25.7,-9.9 -26.6,-32.4 -47.3,-34.5 -20,-2 -27.3,18.1 -48.4,14.8 -13.3,-2.1 -26.9,-12.7 -29.3,-25.3 -3.9,-20.2 22.1,-38.5 29.2,-43.5 z"
+       class="st3"
+       id="Stump_Wide" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 446.3,412.5 c 27.9,-30 93.7,-36.4 123.8,-1.4 18.2,21.2 25.4,60.2 7,78.9 -8.2,8.3 -22.1,13.3 -35,11 -24.2,-4.4 -25.9,-31.9 -47.3,-34.5 -18.1,-2.2 -26.3,16.5 -43.8,11.5 -10.1,-2.9 -17.2,-12 -20,-20 -7.3,-21.2 12.7,-42.8 15.3,-45.5 z"
+       class="st3"
+       id="Stump_Normal" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 446.3,412.5 c 20,-34.8 104.4,-37.1 124,-1.5 11.9,21.7 1.4,60.5 -22.3,72 -0.8,0.4 -20.2,9.5 -34,1 -9.5,-5.8 -10.3,-16.2 -19.3,-17.5 -6.4,-1 -8.4,3.9 -17.8,5.5 -9.2,1.5 -18.7,-1.3 -24,-5 -14.1,-9.8 -16,-38.2 -6.6,-54.5 z"
+       class="st3"
+       id="Stump_Narrow" /></g><g
+     id="Leg_Outfit"><g
+       id="Leg_Narrow_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 445.9,413.1 c 0,0 -10.3,43.4 -10.6,67.8 -0.5,43.2 14.3,129.1 30.4,183.7 7.5,61.7 6.2,123.3 8.8,185.4 l 11.5,-0.3 c 2.2,-51.3 34,-103.9 16.3,-161.5 2.3,-46.1 10,-72.4 5,-160.3 -5.4,94.3 16.6,109.2 26.4,153.6 -15.6,58 5.7,110.8 6.5,168.9 h 16.3 c 0.2,-58.5 15.6,-94.6 7.7,-168.9 12.4,-64.5 12.4,-139.3 11.6,-205.6 -0.3,-26 -5.4,-64.7 -5.4,-64.7 l -124.5,1.9"
+         class="st4"
+         id="XMLID_470_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 508,588.6 c -9.8,-40.3 -16.6,-61.7 -12.6,-107.8 -0.7,44.5 3.5,67.1 12.6,107.8 z"
+         class="st12"
+         id="XMLID_471_" /></g><g
+       id="Leg_Normal_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 446,413.2 c 0,0 -17.1,47.4 -18.7,71.7 -3.8,60.3 16.3,123.8 38.4,179.8 7.5,61.7 6.2,123.3 8.8,185.4 l 11.5,-0.3 c 2.2,-51.3 34,-103.9 16.3,-161.5 12.8,-54.2 10,-72.4 5,-160.3 -5.4,94.3 16.6,109.1 26.4,153.5 -15.6,58 5.6,110.9 6.4,169 h 16.3 c 0.2,-58.5 15.6,-94.7 7.8,-169 23.8,-69.9 25.5,-131.2 20.7,-194.7 -2,-26 -14.5,-75.6 -14.5,-75.6 l -124.4,2"
+         class="st4"
+         id="XMLID_472_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 513.9,619.8 c -9.8,-40.3 -22.5,-96.7 -18.5,-142.8 -0.8,44.7 9.4,102.1 18.5,142.8 z"
+         class="st12"
+         id="XMLID_473_" /></g><g
+       id="Leg_Wide_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 445.8,413.1 c 0,0 -26.1,35.9 -27.6,60.3 -3.8,60.3 16.8,135.5 38.9,191.5 7.5,61.7 14.8,123 17.3,185.1 l 11.5,-0.3 c 2.3,-52.9 39.2,-99.2 20.2,-160.8 13.6,-57.7 6.2,-71.9 1,-161 -5.4,94.3 4.4,110.4 14.2,154.8 -15.6,58 17.8,109.6 18.6,167.8 h 16.3 c 0.2,-58.5 16.4,-95.2 8.5,-169.5 23.8,-69.9 46.5,-155.6 41.7,-219 -2,-25.9 -36,-50.6 -36,-50.6 l -124.6,1.7"
+         class="st4"
+         id="XMLID_474_" /><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="M 509.6,630.9 C 499.8,590.6 488.8,530 492.8,483.8 c -0.8,44.7 7.6,106.4 16.8,147.1 z"
+         class="st12"
+         id="XMLID_475_" /></g></g><g
+     id="Shoes"><g
+       id="Boot_1_"><path
+         style="fill:#8f8f8e"
+         inkscape:connector-curvature="0"
+         d="m 535.9,889.4 c -1.9,7 1.7,8.6 3.5,23.1 1.2,9.2 2.2,17.5 1.3,22.5 -0.1,0.4 0,2.8 0.3,6 0.4,5.2 0.7,7.8 2,10 2.3,3.6 6.4,4.8 9.6,5.5 4.8,1.1 9.9,2.2 13.2,-0.9 2.9,-2.7 3,-7.2 3.1,-12.3 0.1,-8.9 -2.1,-12.2 -4.2,-23.3 -1.1,-6 -1.3,-10.4 -1.9,-18.7 -0.5,-8.4 -0.5,-15.3 -0.4,-19.2 0,-1.6 0.1,-2.8 0.1,-3.1 0.8,-25.5 -5.1,-66.8 1,-107.3 0,0 4.6,-31 4.6,-66.5 0,-2.1 -0.7,-7.6 -1.6,-10.3 -8.5,0 -18.3,6.9 -36.7,6.9 -1.2,3.7 -2.3,10.8 -2.3,13.7 0.8,53.8 3.1,67.5 3.1,67.5 4.1,23.8 5.9,48 10.3,71.7 0,0 2.3,12.7 -0.6,24.1 -0.5,2 -1,3.1 -1,3.1 -1.1,2.7 -2.5,3.8 -3.4,7.5 z"
+         class="st13"
+         id="XMLID_476_" /><path
+         style="fill:#8f8f8e"
+         inkscape:connector-curvature="0"
+         d="m 469.2,698.7 c 7.9,-1.2 22.7,5.2 38.3,4.4 5.2,41.8 -7.7,77.2 -8.9,88 -1.2,10.8 -3.7,28.4 -9.4,65 0,0 -0.5,5.5 1.4,10 0.8,2 1.4,2.1 2.5,3.8 2.8,4.5 3.8,11.4 3.3,16.5 -0.4,4.2 -1.6,4.2 -3.1,9.3 -1.6,5.6 -1.9,13.8 -2.4,30.1 0,1.5 -0.4,5 -0.4,6.5 -0.4,0.3 -2,0.3 -2.6,0 0.1,-1.2 0.1,-3.5 0.1,-4.9 -0.2,-8.4 1.2,-25.3 -0.3,-26.2 -1,-0.6 -3.7,5.1 -5.8,10.9 -4.2,12.2 -2.3,16.9 -5.6,21.3 -2.8,3.8 -7.2,3.4 -15.9,2.7 -9.2,-0.8 -10.9,-3.8 -11.5,-4.8 -2.1,-4 -2.4,-10.8 -0.5,-13.1 0.7,-0.9 1.2,-0.5 3,-1.1 3.3,-1 5.7,-3.4 6.5,-4.3 2.8,-3.2 3.4,-8.4 3.7,-11.5 1.7,-13.2 3,-15.7 4,-20.9 0,0 0.7,-3.9 1,-8.3 0.4,-4.9 5,-101.2 3.6,-160.4 0,-2 -0.7,-7.1 -1,-13 z"
+         class="st13"
+         id="XMLID_477_" /></g><g
+       id="Boot_Latex"><path
+         style="fill:#515251"
+         inkscape:connector-curvature="0"
+         d="m 535.9,889.4 c -1.9,7 1.7,8.6 3.5,23.1 1.2,9.2 2.2,17.5 1.3,22.5 -0.1,0.4 0,2.8 0.3,6 0.4,5.2 0.7,7.8 2,10 2.3,3.6 6.4,4.8 9.6,5.5 4.8,1.1 9.9,2.2 13.2,-0.9 2.9,-2.7 3,-7.2 3.1,-12.3 0.1,-8.9 -2.1,-12.2 -4.2,-23.3 -1.1,-6 -1.3,-10.4 -1.9,-18.7 -0.5,-8.4 -0.5,-15.3 -0.4,-19.2 0,-1.6 0.1,-2.8 0.1,-3.1 0.8,-25.5 -5.1,-66.8 1,-107.3 0,0 4.6,-31 4.6,-66.5 0,-2.1 -0.7,-7.6 -1.6,-10.3 -8.5,0 -18.3,6.9 -36.7,6.9 -1.2,3.7 -2.3,10.8 -2.3,13.7 0.8,53.8 3.1,67.5 3.1,67.5 4.1,23.8 5.9,48 10.3,71.7 0,0 2.3,12.7 -0.6,24.1 -0.5,2 -1,3.1 -1,3.1 -1.1,2.7 -2.5,3.8 -3.4,7.5 z"
+         class="st14"
+         id="XMLID_478_" /><path
+         style="fill:#515251"
+         inkscape:connector-curvature="0"
+         d="m 469.2,698.7 c 7.9,-1.2 22.7,5.2 38.3,4.4 5.2,41.8 -7.7,77.2 -8.9,88 -1.2,10.8 -3.7,28.4 -9.4,65 0,0 -0.5,5.5 1.4,10 0.8,2 1.4,2.1 2.5,3.8 2.8,4.5 3.8,11.4 3.3,16.5 -0.4,4.2 -1.6,4.2 -3.1,9.3 -1.6,5.6 -1.9,13.8 -2.4,30.1 0,1.5 -0.4,5 -0.4,6.5 -0.4,0.3 -2,0.3 -2.6,0 0.1,-1.2 0.1,-3.5 0.1,-4.9 -0.2,-8.4 1.2,-25.3 -0.3,-26.2 -1,-0.6 -3.7,5.1 -5.8,10.9 -4.2,12.2 -2.3,16.9 -5.6,21.3 -2.8,3.8 -7.2,3.4 -15.9,2.7 -9.2,-0.8 -10.9,-3.8 -11.5,-4.8 -2.1,-4 -2.4,-10.8 -0.5,-13.1 0.7,-0.9 1.2,-0.5 3,-1.1 3.3,-1 5.7,-3.4 6.5,-4.3 2.8,-3.2 3.4,-8.4 3.7,-11.5 1.7,-13.2 3,-15.7 4,-20.9 0,0 0.7,-3.9 1,-8.3 0.4,-4.9 5,-101.2 3.6,-160.4 0,-2 -0.7,-7.1 -1,-13 z"
+         class="st14"
+         id="XMLID_479_" /></g><g
+       id="Boot_Wide"><path
+         style="fill:#8f8f8e"
+         inkscape:connector-curvature="0"
+         d="m 526.2,889.4 c -2.5,7 2.2,8.6 4.5,23.1 1.5,9.2 2.8,17.5 1.8,22.5 -0.1,0.4 0,2.8 0.4,6 0.6,5.2 0.9,7.8 2.6,10 2.9,3.6 8.3,4.8 12.4,5.5 6.2,1.1 12.7,2.2 17.1,-0.9 3.7,-2.7 3.9,-7.2 4,-12.3 0.2,-8.9 -2.8,-12.2 -5.4,-23.3 -1.4,-6 -1.8,-10.4 -2.4,-18.7 -0.7,-8.4 -0.6,-15.3 -0.5,-19.2 0,-1.6 0.1,-2.8 0.1,-3.1 1.1,-25.5 -1.1,-66.3 3.8,-107.1 1.4,-11.6 3.4,-31.1 3.4,-66.6 0,-2.1 -0.9,-7.6 -2,-10.3 -11,0 -23.6,6.9 -47.5,6.9 -1.5,3.7 -3,10.8 -2.9,13.7 1,53.8 4,67.5 4,67.5 5.2,23.8 7.6,48 13.2,71.7 0,0 3,12.7 -0.8,24.1 -0.6,2 -1.2,3.1 -1.2,3.1 -1.6,2.6 -3.4,3.7 -4.6,7.4 z"
+         class="st13"
+         id="XMLID_480_" /><path
+         style="fill:#8f8f8e"
+         inkscape:connector-curvature="0"
+         d="m 460.7,698.7 c 10.3,-1.2 29.8,5.2 50,4.4 6.8,41.8 -10,77.2 -11.6,88 -1.5,10.8 -4.9,28.4 -12.3,65 0,0 -0.6,5.5 1.9,10 1.1,2 1.9,2.1 3.3,3.8 3.7,4.5 5.1,11.4 4.4,16.5 -0.6,4.2 -2.1,4.2 -4.1,9.3 -2.1,5.6 -2.5,13.8 -3.1,30.1 -0.1,1.5 -0.4,5 -0.6,6.5 -0.6,0.3 -2.7,0.3 -3.4,0 0.1,-1.2 0.1,-3.5 0.1,-4.9 -0.3,-8.4 1.6,-25.3 -0.4,-26.2 -1.2,-0.6 -4.9,5.1 -7.5,10.9 -5.4,12.2 -2.9,16.9 -7.3,21.3 -3.6,3.8 -9.4,3.4 -20.9,2.7 -12,-0.8 -14.4,-3.8 -15,-4.8 -2.8,-4 -3.1,-10.8 -0.7,-13.1 0.9,-0.9 1.6,-0.5 4,-1.1 4.4,-1 7.5,-3.4 8.4,-4.3 3.6,-3.2 4.4,-8.4 4.9,-11.5 2.2,-13.2 3.9,-15.7 5.2,-20.9 0,0 0.9,-3.9 1.3,-8.3 0.4,-4.9 6.5,-101.2 4.7,-160.4 0,-2 -0.9,-7.1 -1.3,-13 z"
+         class="st13"
+         id="XMLID_481_" /></g><g
+       id="Pump"><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="M 473.7,861.4 H 487 c 3.7,3.2 5.2,18.7 2.6,33.1 -0.4,1.8 -0.4,24.1 -0.4,36.9 l -3.1,0.1 c -0.6,-11.2 1.2,-24.3 -0.9,-36.9 -8.2,7.5 -6.7,40.4 -12.8,39.5 -6,0.1 -8.6,0.2 -12,-0.4 -10.4,-1.9 -13.6,-14 -15,-22.7 3.1,-5.4 4.4,-4.6 10.2,-10 7.1,-12.3 9.6,-22.4 18.1,-39.6 z"
+         class="st15"
+         id="XMLID_482_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 473.7,861.4 c 7.9,-4 9.2,-0.3 13.3,0 -4.6,22.1 -4.7,36.3 -19.2,40.2 -4.5,1.2 -11.3,2.3 -12.2,-0.6 3.6,-9.7 14,-34.8 18.1,-39.6 z"
+         class="st3"
+         id="XMLID_483_" /><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="m 525.5,860.8 15.6,0.1 c 4.7,13.7 8.6,42.3 9.2,52.3 4.6,4.1 4.9,8.5 -2.1,32 -2.4,3 -11.1,6 -20.4,0 -7.1,-18.7 -7.6,-24.5 -4.1,-31.5 -0.2,-7.4 -0.1,-10 -1.5,-19.5 -3.4,-15.5 1.9,-24.7 3.3,-33.4 z"
+         class="st15"
+         id="XMLID_484_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 525.5,860.8 c 5.9,-4.5 10.8,-2.2 15.6,0.1 4.4,9 8.3,30.6 9.2,52.3 -8.7,-2.2 -19.1,-0.4 -22.8,-0.2 -2.8,-3.6 -2.7,-25.8 -2,-52.2 z"
+         class="st3"
+         id="XMLID_485_" /></g><g
+       id="Exterme_Heel_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 468.2,917.5 c -1.2,-9.6 -9.4,-40 1.5,-55.6 5.2,-5.3 2,-109.2 2,-109.2 l 33.1,2.2 c 0,0 -18.6,97.5 -17.9,105.9 2.8,0.4 10.7,8.4 11.9,15.9 -2.8,15.5 -3.1,61.9 -3.9,72 h -0.8 c -0.6,-11.2 1.1,-43.9 -1.2,-56.5 -3.4,16.4 -2.8,51.3 -8.4,57.1 -2.5,0.4 -3.2,1.6 -5.4,0.5 -7.8,-16 -10.9,-32.3 -10.9,-32.3 z"
+         class="st4"
+         id="XMLID_486_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 540.6,865.6 c 0.5,-6.7 -11.3,-107.5 -10.7,-108.1 l 35,-1.6 -7.9,104.2 c 4.7,13.7 8.6,42.3 9.2,52.3 2.2,6.8 -2.8,24.1 -9.2,47 -2.4,3 -6.9,2.3 -10.1,0.4 -6.8,-19 -10.7,-40.8 -8.1,-47.6 -0.8,-14.1 0.1,-26.3 1.8,-46.6 z"
+         class="st4"
+         id="XMLID_487_" /></g><g
+       id="Exterme_Heel_1_"><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="m 468.2,917.5 c -1.2,-9.6 -9.4,-40 1.5,-55.6 5.2,-5.3 2,-109.2 2,-109.2 l 33.1,2.2 c 0,0 -18.6,97.5 -17.9,105.9 2.8,0.4 10.7,8.4 11.9,15.9 -2.8,15.5 -3.1,61.9 -3.9,72 h -0.8 c -0.6,-11.2 1.1,-43.9 -1.2,-56.5 -3.4,16.4 -2.8,51.3 -8.4,57.1 -2.5,0.4 -3.2,1.6 -5.4,0.5 -7.8,-16 -10.9,-32.3 -10.9,-32.3 z"
+         class="st15"
+         id="XMLID_488_" /><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="m 540.6,865.6 c 0.5,-6.7 -11.3,-107.5 -10.7,-108.1 l 35,-1.6 -7.9,104.2 c 4.7,13.7 8.6,42.3 9.2,52.3 2.2,6.8 -2.8,24.1 -9.2,47 -2.4,3 -6.9,2.3 -10.1,0.4 -6.8,-19 -10.7,-40.8 -8.1,-47.6 -0.8,-14.1 0.1,-26.3 1.8,-46.6 z"
+         class="st15"
+         id="XMLID_489_" /></g><g
+       id="Exterme_Heel_Wide"><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="m 468.2,917.5 c -1.2,-9.6 -9.4,-40 1.5,-55.6 5.2,-5.3 -2.7,-109.7 -2.7,-109.7 l 41.3,2 c 0,0 -18.7,98.1 -17.9,106.5 2.8,0.4 10.7,8.4 11.9,15.9 -2.8,15.5 -3.1,61.9 -3.9,72 h -0.8 c -0.6,-11.2 1.1,-43.9 -1.2,-56.5 -3.4,16.4 -2.8,51.3 -8.4,57.1 -2.5,0.4 -3.2,1.6 -5.4,0.5 -8,-15.9 -14.4,-32.2 -14.4,-32.2 z"
+         class="st15"
+         id="XMLID_490_" /><path
+         style="fill:#4f6ab2"
+         inkscape:connector-curvature="0"
+         d="M 535.5,865.2 C 536,858.5 521.3,756.1 521.9,755.5 l 43.1,0.5 -8,104.1 c 4.7,13.7 8.6,42.3 9.2,52.3 2.2,6.8 -2.8,24.1 -9.2,47 -2.4,3 -12,1.9 -15.2,-0.1 -6.8,-19 -10.7,-40.8 -8.1,-47.6 -0.8,-14.1 0.1,-26.2 1.8,-46.5 z"
+         class="st15"
+         id="XMLID_491_" /></g><g
+       id="Heel_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 544.8,866 c -5.3,-0.9 -12.7,7.6 -13,14.8 -0.2,3.8 1.7,5.5 4,10.2 6.9,14.2 6,31.8 5.8,38.1 -0.3,4.5 -0.8,9.3 2,14.1 2.1,3.6 5.2,5.5 6.9,6.7 6.6,4.2 13,3.8 19,3.5 5,-0.3 6.7,-1.2 7.8,-2.3 2.2,-2.2 2.3,-5.3 2.3,-6.7 0.1,-4.4 -1.9,-7.7 -3.2,-9.8 -5.3,-8.7 -8.1,-13.1 -10.1,-15.3 -14.8,-16.6 -11.2,-51.6 -21.5,-53.3 z"
+         class="st4"
+         id="XMLID_492_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 564.2,933.9 c 1,-0.5 3.7,-1.9 4.8,-4.8 0.8,-2.3 0,-4 -1.3,-8.6 0,0 -1.6,-5.7 -2.7,-11.8 -0.8,-4.7 -0.4,-6.1 -0.8,-11.3 -1.3,-17.9 -7.3,-18.2 -6.9,-33.1 0,-0.7 -0.9,-11 -0.7,-16.4 -3,-0.8 -16.3,-0.3 -16.4,0.3 -1.6,6.9 1.5,17.4 1,18.4 -2.5,4.8 -1.3,10 -0.5,13.4 3.4,14.3 5.1,19.2 6.2,24.3 3.9,17.5 -0.7,25.9 5.2,29.4 3.2,2.2 8.4,2.1 12.1,0.2 z"
+         class="st4"
+         id="XMLID_493_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 485.9,927.8 c -0.1,0.4 -1.2,0.9 -1.2,-0.3 -0.2,-2.4 -0.1,-3.6 -0.1,-4.4 0,-1.8 1.2,-11.3 1.1,-17.5 -0.2,-13.1 -0.7,-15.2 0.5,-18 1.7,-4 5.1,-7.6 6.3,-7.1 0.5,0.3 2.4,0.2 0.3,8.1 -2.4,8.8 -2.8,10.8 -3.7,16.8 -1.6,10.1 -1.8,15.2 -2.1,18.1 -0.4,1.3 -0.5,2.2 -1.1,4.3 z"
+         class="st4"
+         id="XMLID_494_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 472.7,884.3 c -8.4,16.1 -6.2,25.8 -14.7,30.5 -1.9,1.1 -4.4,3 -6.3,3.9 -6.1,2.8 -9.3,4 -9.9,6.8 -0.4,1.8 0.5,3.5 0.8,4 1.2,2 4.3,4.3 8.5,5.4 6.1,1.6 7.7,2.5 14.8,0.6 2.9,-0.8 6.2,-1.7 9.1,-4.4 6.6,-6.1 2,-13.6 6,-25.3 4.7,-14 15.2,-15.4 14.7,-25.3 -0.4,-5.7 -4.2,-11.8 -8.4,-12.3 -5.8,-0.7 -11.4,10 -14.6,16.1 z"
+         class="st4"
+         id="XMLID_495_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 457.3,918.1 c 0.2,2 3.9,4.4 6.5,3.8 4.1,-0.9 3.5,-8.4 8.2,-22.9 3.5,-10.8 5.7,-16.6 10.8,-22.9 1.7,-2.1 4,-7.1 4,-7.1 0,0 1.4,-14.4 -1.4,-20 -0.1,-0.2 -9.5,-3.1 -9.7,-3.1 -0.9,-0.3 -2.8,18.7 -3.6,20.2 -9.6,17.6 -9.6,20.8 -9.6,20.8 -2.1,5.8 -2.5,7.3 -2.7,8.4 -0.5,2.8 -1.6,8.4 -0.7,14.3 0.2,1.5 0.6,3.5 -0.3,5.7 -0.7,1.3 -1.6,1.7 -1.5,2.8 z"
+         class="st4"
+         id="XMLID_496_" /></g><g
+       id="Heel_1_"><path
+         style="fill:#3e65b0"
+         inkscape:connector-curvature="0"
+         d="m 544.8,866 c -5.3,-0.9 -12.7,7.6 -13,14.8 -0.2,3.8 1.7,5.5 4,10.2 6.9,14.2 6,31.8 5.8,38.1 -0.3,4.5 -0.8,9.3 2,14.1 2.1,3.6 5.2,5.5 6.9,6.7 6.6,4.2 13,3.8 19,3.5 5,-0.3 6.7,-1.2 7.8,-2.3 2.2,-2.2 2.3,-5.3 2.3,-6.7 0.1,-4.4 -1.9,-7.7 -3.2,-9.8 -5.3,-8.7 -8.1,-13.1 -10.1,-15.3 -14.8,-16.6 -11.2,-51.6 -21.5,-53.3 z"
+         class="st16"
+         id="XMLID_497_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 564.2,933.9 c 1,-0.5 3.7,-1.9 4.8,-4.8 0.8,-2.3 0,-4 -1.3,-8.6 0,0 -1.6,-5.7 -2.7,-11.8 -0.8,-4.7 -0.4,-6.1 -0.8,-11.3 -1.3,-17.9 -7.3,-18.2 -6.9,-33.1 0,-0.7 -0.9,-11 -0.7,-16.4 -3,-0.8 -16.3,-0.3 -16.4,0.3 -1.6,6.9 1.5,17.4 1,18.4 -2.5,4.8 -1.3,10 -0.5,13.4 3.4,14.3 5.1,19.2 6.2,24.3 3.9,17.5 -0.7,25.9 5.2,29.4 3.2,2.2 8.4,2.1 12.1,0.2 z"
+         class="st3"
+         id="XMLID_498_" /><path
+         style="fill:#15406d"
+         inkscape:connector-curvature="0"
+         d="m 485.9,927.8 c -0.1,0.4 -1.2,0.9 -1.2,-0.3 -0.2,-2.4 -0.1,-3.6 -0.1,-4.4 0,-1.8 1.2,-11.3 1.1,-17.5 -0.2,-13.1 -0.7,-15.2 0.5,-18 1.7,-4 5.1,-7.6 6.3,-7.1 0.5,0.3 2.4,0.2 0.3,8.1 -2.4,8.8 -2.8,10.8 -3.7,16.8 -1.6,10.1 -1.8,15.2 -2.1,18.1 -0.4,1.3 -0.5,2.2 -1.1,4.3 z"
+         class="st17"
+         id="XMLID_499_" /><path
+         style="fill:#3e65b0"
+         inkscape:connector-curvature="0"
+         d="m 472.7,884.3 c -8.4,16.1 -6.2,25.8 -14.7,30.5 -1.9,1.1 -4.4,3 -6.3,3.9 -6.1,2.8 -9.3,4 -9.9,6.8 -0.4,1.8 0.5,3.5 0.8,4 1.2,2 4.3,4.3 8.5,5.4 6.1,1.6 7.7,2.5 14.8,0.6 2.9,-0.8 6.2,-1.7 9.1,-4.4 6.6,-6.1 2,-13.6 6,-25.3 4.7,-14 15.2,-15.4 14.7,-25.3 -0.4,-5.7 -4.2,-11.8 -8.4,-12.3 -5.8,-0.7 -11.4,10 -14.6,16.1 z"
+         class="st16"
+         id="XMLID_500_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 457.3,918.1 c 0.2,2 3.9,4.4 6.5,3.8 4.1,-0.9 3.5,-8.4 8.2,-22.9 3.5,-10.8 5.7,-16.6 10.8,-22.9 1.7,-2.1 4,-7.1 4,-7.1 0,0 1.4,-14.4 -1.4,-20 -0.1,-0.2 -9.5,-3.1 -9.7,-3.1 -0.9,-0.3 -2.8,18.7 -3.6,20.2 -9.6,17.6 -9.6,20.8 -9.6,20.8 -2.1,5.8 -2.5,7.3 -2.7,8.4 -0.5,2.8 -1.6,8.4 -0.7,14.3 0.2,1.5 0.6,3.5 -0.3,5.7 -0.7,1.3 -1.6,1.7 -1.5,2.8 z"
+         class="st3"
+         id="XMLID_501_" /></g><g
+       id="Flat_Latex"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 486.5,836 c 3.5,2.8 -2.3,9.7 0.8,19.5 2.4,7.6 5.2,6.8 6.1,10.7 2.8,10.5 -8,25 -20.6,31.3 -10.4,5.2 -23.4,5.6 -24.7,2.3 -0.7,-1.7 2.1,-3.4 6.1,-8.5 1.7,-2.2 9.3,-12.9 10.8,-23.4 1.9,-13.2 7.6,-22.4 8.2,-30.7 0.7,-7.5 7.7,-5.8 13.3,-1.2 z"
+         class="st4"
+         id="XMLID_502_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 491.2,895.3 c 6.5,-2.7 9.7,-4 11,-6.6 2.2,-4.4 0.1,-9.5 -1.5,-13.4 -1.6,-3.9 -4.7,-9 -6.6,-8.5 -1,0.3 -0.9,2 -2,4.4 -1.4,3.6 -3.8,5.6 -6.4,7.9 -14.5,12.9 -17.5,20.3 -25.1,20 -4.2,-0.1 -5.3,-2.4 -11.3,-2.1 -0.8,0 -4.9,0.3 -9.7,2.5 -2,1 -9.2,4.4 -8.8,7.3 0.6,4.1 15.6,4.8 17.4,4.9 6.4,0.3 12.4,0.6 18.5,-2.8 5.1,-2.8 4.1,-4.9 10,-8.3 4.8,-2.6 6.1,-1.9 14.5,-5.3 z"
+         class="st4"
+         id="XMLID_503_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 540.7,872.8 c -3.4,4.4 -1.1,6.9 -4.1,23.2 -1.2,6.3 -1.8,12.7 -3.3,18.9 -0.5,2.1 -1.3,5.2 -0.5,8.8 0.3,1 1.3,5.1 4.4,7.3 3.2,2.2 2.6,3.5 10.8,3.2 8.3,-0.3 9,-1.3 11,-3 5,-4 3.5,-16.6 2.8,-21.3 -0.7,-5.5 -1.6,-6 -2.1,-12.4 -0.6,-7.3 0.5,-8.3 -0.2,-13.3 -0.4,-3.6 -1.7,-13.1 -7.6,-15.9 -4.5,-2.3 -7.7,0 -11.2,4.5 z"
+         class="st4"
+         id="XMLID_504_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 541.9,846.6 c -1.1,1.1 -1.6,2.6 -2.5,5.7 -1.1,3.3 -2.5,8.1 -2.4,14.4 0.1,5.1 1.2,4.6 1.6,10.6 0.4,5.5 -0.1,9.9 -1,17.2 -1.2,9.8 -2.1,11.4 -0.9,13.8 2.4,4.4 8.8,4.4 12.1,4.4 5.6,0 10.6,-2 11.7,-6.8 0.3,-1.1 0,-2 -0.2,-3.1 -1.7,-8.2 0,-9.3 -1.3,-18.1 -1.3,-9 -2,-8.5 -1.9,-14.6 0.1,-5.1 2.9,-7.9 0,-17.7 -1.4,-3.2 -2.1,-4.6 -2.8,-5.2 -3.2,-3.4 -9.2,-3.9 -12.4,-0.6 z"
+         class="st4"
+         id="XMLID_505_" /></g><g
+       id="Flat_1_"><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 486.5,836 c 3.5,2.8 -2.3,9.7 0.8,19.5 2.4,7.6 5.2,6.8 6.1,10.7 2.8,10.5 -8,25 -20.6,31.3 -10.4,5.2 -23.4,5.6 -24.7,2.3 -0.7,-1.7 2.1,-3.4 6.1,-8.5 1.7,-2.2 9.3,-12.9 10.8,-23.4 1.9,-13.2 7.6,-22.4 8.2,-30.7 0.7,-7.5 7.7,-5.8 13.3,-1.2 z"
+         class="st3"
+         id="XMLID_506_" /><path
+         style="fill:#65ad45"
+         inkscape:connector-curvature="0"
+         d="m 491.2,895.3 c 6.5,-2.7 9.7,-4 11,-6.6 2.2,-4.4 0.1,-9.5 -1.5,-13.4 -1.6,-3.9 -4.7,-9 -6.6,-8.5 -1,0.3 -0.9,2 -2,4.4 -1.4,3.6 -3.8,5.6 -6.4,7.9 -14.5,12.9 -17.5,20.3 -25.1,20 -4.2,-0.1 -5.3,-2.4 -11.3,-2.1 -0.8,0 -4.9,0.3 -9.7,2.5 -2,1 -9.2,4.4 -8.8,7.3 0.6,4.1 15.6,4.8 17.4,4.9 6.4,0.3 12.4,0.6 18.5,-2.8 5.1,-2.8 4.1,-4.9 10,-8.3 4.8,-2.6 6.1,-1.9 14.5,-5.3 z"
+         class="st18"
+         id="XMLID_507_" /><path
+         style="fill:#65ad45"
+         inkscape:connector-curvature="0"
+         d="m 540.7,872.8 c -3.4,4.4 -1.1,6.9 -4.1,23.2 -1.2,6.3 -1.8,12.7 -3.3,18.9 -0.5,2.1 -1.3,5.2 -0.5,8.8 0.3,1 1.3,5.1 4.4,7.3 3.2,2.2 2.6,3.5 10.8,3.2 8.3,-0.3 9,-1.3 11,-3 5,-4 3.5,-16.6 2.8,-21.3 -0.7,-5.5 -1.6,-6 -2.1,-12.4 -0.6,-7.3 0.5,-8.3 -0.2,-13.3 -0.4,-3.6 -1.7,-13.1 -7.6,-15.9 -4.5,-2.3 -7.7,0 -11.2,4.5 z"
+         class="st18"
+         id="XMLID_508_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 541.9,846.6 c -1.1,1.1 -1.6,2.6 -2.5,5.7 -1.1,3.3 -2.5,8.1 -2.4,14.4 0.1,5.1 1.2,4.6 1.6,10.6 0.4,5.5 -0.1,9.9 -1,17.2 -1.2,9.8 -2.1,11.4 -0.9,13.8 2.4,4.4 8.8,4.4 12.1,4.4 5.6,0 10.6,-2 11.7,-6.8 0.3,-1.1 0,-2 -0.2,-3.1 -1.7,-8.2 0,-9.3 -1.3,-18.1 -1.3,-9 -2,-8.5 -1.9,-14.6 0.1,-5.1 2.9,-7.9 0,-17.7 -1.4,-3.2 -2.1,-4.6 -2.8,-5.2 -3.2,-3.4 -9.2,-3.9 -12.4,-0.6 z"
+         class="st3"
+         id="XMLID_509_" /></g></g><g
+     id="Feet"><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 488.6,863.6 c 0.7,1.8 1.5,1.7 2.9,4.2 0,0 2,3.6 2.2,8.1 0.2,5.3 -3.9,7.6 -9.2,15.1 -8.1,11.6 -6.2,17.3 -12.7,20.7 -2.1,1.2 -5,1.6 -10.8,2.7 -0.5,0.1 -3.3,0.3 -9,0.6 -2.4,0.2 -4.6,0.3 -6.3,-1.3 -0.4,-0.4 -1.3,-1.2 -1.2,-2.2 0.2,-1.6 3.1,-1.9 5.7,-3.1 3.6,-1.8 5.5,-4.9 7.3,-7.6 2.8,-4.4 1.8,-6 5.5,-16.4 1.7,-4.6 1.9,-4.4 3,-8.1 1.6,-5 1.6,-6.8 3.1,-12.3 1.9,-7 3.6,-12.8 5.2,-14.4 4.8,-4.9 10.8,-2.8 12.4,1.2 1.5,2.9 0.1,8.2 1.9,12.8 z"
+       class="st3"
+       id="XMLID_463_" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 531.5,880.7 c 0.4,-6.6 5.7,-12.8 8.5,-30.2 0.6,-4.1 2.8,-4.8 5.2,-6 3.7,-1.7 10.6,-2.7 11,6 0.4,6.1 -0.6,16.4 0,27.2 0.4,6.5 0.2,11.4 2,21.2 1.9,10 2.8,15.1 6,20.7 3.9,6.9 8.1,9.2 7.3,12.1 -0.6,2.4 -4.1,2.9 -9.2,3.7 -4.8,0.7 -9.6,1.4 -15.1,-1.3 -1.4,-0.7 -4,-2 -6.2,-4.7 -5.2,-6.1 -2.2,-13.2 -4.7,-24.4 -3.5,-15.8 -5.4,-14.9 -4.8,-24.3 z"
+       class="st3"
+       id="XMLID_510_" /></g><g
+     id="Torso"><g
+       id="Torso_Normal"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 446,413.2 c 18.5,5 17.1,34.5 49.8,54.3 7.3,-16.9 20.1,-24.2 32.6,-34.3 12.4,-10 20,-18 41.9,-21.9 -6.1,-10.8 -8.3,-20.4 -9.1,-26.3 -1.4,-10.3 -0.2,-18.5 0.8,-25.3 1.3,-9.1 3.4,-15.7 5.8,-23 6,-18.8 9.6,-21.7 13.3,-34.8 1.7,-6.1 5.2,-18.4 4,-28.5 -4.3,-37.3 -74.4,-71.5 -103.8,-51.8 -4.3,2.9 -6.8,6.3 -10,10.7 -13.9,19 -13,41.2 -12.3,57.7 0.3,6.4 1.1,15.9 3.7,27.3 -1.3,7.3 -2.8,17.3 -3.7,29.3 -1.3,18.3 -0.1,25.7 -2.7,38.7 -1.6,7.2 -4.4,16.9 -10.3,27.9 z"
+         class="st12"
+         id="Body_Shadow" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 493,208.2 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 -4.9,22.7 -3,28.6 -5.2,48.7 -1.1,10.1 -5.1,26.4 -12.7,46.9 17.9,5.5 31.8,50.5 49.8,54.3 8.9,-18.2 32.8,-45.5 74.6,-56.2 -9.1,-20.7 -6.7,-34.7 -8,-47.6 -1.6,-15.9 10,-41.9 12.8,-47.9 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-21.9 -21.9,-21 -21.9,-21 -32.6,-3.4 -34.9,-14 -30.6,-50.1 l -22.3,1 c 8.4,43.5 -2.8,39.9 -17.9,48.6"
+         class="st3"
+         id="Body_Normal_1_" /></g><g
+       id="Torso_Hourglass"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 446,413.2 c 18.5,5 17.1,34.5 49.8,54.3 7.3,-16.9 20.1,-24.2 32.6,-34.3 12.4,-10 20,-18 41.9,-21.9 -7,-14.9 -12.2,-22.2 -15.8,-26.1 -0.9,-1 -3.9,-4.1 -6,-9 0,0 -1.9,-4.4 -2.3,-9 -0.4,-4.8 1.1,-10.5 13.5,-27.3 9,-12.2 10.8,-12.6 14.5,-19.8 3.7,-7.1 5.4,-13.1 6.8,-18.3 2.9,-11 4.7,-22.8 4,-28.5 -4.3,-37.3 -74.4,-71.5 -103.8,-51.8 -4.3,2.9 -6.8,6.3 -10,10.7 -13.9,19 -13,41.2 -12.3,57.7 0.3,6.4 1.1,15.9 3.7,27.3 3.8,16.5 1,28.2 0.8,32.5 -0.2,4.5 -0.7,12.2 -2.3,21 -1.9,9.9 -5.7,25 -15.1,42.5 z"
+         class="st12"
+         id="Body_Shadow_2_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 492.9,208.2 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 2.2,23 0.8,29.8 -1.3,49.9 -1.1,10.1 -8.9,25.2 -16.5,45.9 17.9,5.5 31.8,50.5 49.8,54.3 8.9,-18.2 32.8,-45.5 74.6,-56.2 -9.1,-20.7 -23.8,-29.7 -25.1,-42.7 -1.6,-15.9 22.9,-37 30,-52.9 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-22 -21.9,-21.1 -21.9,-21.1 -32.7,-3.4 -35,-14 -30.7,-50.1 l -22.3,1 c 8.3,43.5 -2.9,39.9 -18,48.6"
+         class="st3"
+         id="Body_Normal_3_" /></g><g
+       id="Torso_Unnatural"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 446,413.2 c 18.5,5 17.1,34.5 49.8,54.3 7.3,-16.9 20.1,-24.2 32.6,-34.3 12.4,-10 20,-18 41.9,-21.9 -6.3,-11.5 -13.2,-19.1 -18.7,-24 -7.7,-7 -15.4,-11.5 -15.7,-19.3 -0.1,-4 1.7,-7.9 2.8,-10.2 2.7,-5.8 6.5,-9.3 8,-10.8 6.4,-6.1 16.1,-16.1 28.6,-29.4 6,-7.3 12.7,-40 12,-57.3 -18.4,-36.5 -83,-56.1 -106.2,-38.7 -1.9,1.5 -4.9,4.6 -7.4,7.9 -11.5,14.7 -13.2,30.7 -14.4,43.1 -0.5,5 -1.6,16.6 0.7,30.3 0.5,3.1 1.3,6.8 2.7,15 1.2,7.2 2.1,13 2.7,17 2,7.7 2.9,14.4 3.3,19.3 0.7,8 1,12.7 -1,18.3 -0.9,2.5 -1.2,2.2 -6,10.3 -0.7,1.2 -4.7,8 -8.7,15.7 -1.9,3.6 -4.3,8.6 -7,14.7 z"
+         class="st12"
+         id="Body_Shadow_1_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 492.9,208.2 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 2.2,23 7.6,30.9 5.5,51 -1.1,10.1 -15.7,24.1 -23.4,44.6 17.9,5.5 31.8,50.5 49.8,54.3 8.9,-18.2 32.8,-45.5 74.6,-56.2 -9.1,-20.7 -34,-29.7 -35.4,-42.7 -1.6,-15.9 25.4,-34.2 40.3,-52.9 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-22 -21.9,-21.1 -21.9,-21.1 -32.7,-3.3 -35,-14 -30.7,-50 l -22.3,1 c 8.4,43.6 -2.8,40 -17.9,48.7"
+         class="st3"
+         id="Body_Normal_2_" /></g><g
+       id="Belly_Piercing_1_"><g
+         id="Navel_Hvy_Piercing"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 482.3,369.8 c -0.2,0 -1.3,2 -1.2,11.6 0.1,12.7 1.2,13.3 1.4,13.3 0.4,0 1.5,-7.4 1.2,-15.9 -0.5,-4.5 -1.1,-9 -1.4,-9 z"
+           class="st19"
+           id="XMLID_513_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 482.4,394.9 c -0.5,0 -1,2.4 -0.8,4.4 0.2,1.3 0.6,3 1.2,3 0.4,0 0.7,-1.8 0.8,-3 0,-2.1 -0.7,-4.4 -1.2,-4.4 z"
+           class="st19"
+           id="XMLID_514_" /></g><g
+         id="Navel_Piercing"><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="364.39999"
+           cx="482.29999"
+           class="st19"
+           id="XMLID_515_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="368.60001"
+           cx="482.29999"
+           class="st19"
+           id="XMLID_516_" /></g></g></g><g
+     id="Torso_Outfit_Aft"><g
+       id="Torso_Normal_1_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 445.8,413.2 c 17.2,4.6 17.2,30.6 43.5,50.1 1.2,0.9 -21.9,-11.3 -4.5,-34.1 20,8.2 11.2,37.3 11.4,36.9 7.4,-15.9 19.8,-23 32,-32.9 12.4,-10 20,-18 41.9,-21.9 z"
+         class="st12"
+         id="Body_Shadow_3_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 493,208.3 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 -5.3,23.9 -3.3,30.9 -5.4,51 -1.1,10.1 -4.8,24.1 -12.4,44.6 16.5,5.3 30.7,47.1 47.7,53.7 0.7,0.3 -25.7,-15.9 -8.8,-37.6 19.9,9 11.3,37.4 11.5,36.9 9.4,-18.2 33.9,-44.3 73.9,-55 -6.8,-16.4 -7.2,-34.6 -7.5,-40.7 -0.8,-16 3.7,-37.3 12.4,-54.8 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-22 -21.9,-21.1 -21.9,-21.1 -32.7,-3.3 -35,-14 -30.7,-50 l -22.3,1 c 8.4,43.6 -2.8,40 -17.9,48.7"
+         class="st4"
+         id="Body_Normal_4_" /></g><g
+       id="Torso_Hourglass_1_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 445.8,413.2 c 17.2,4.6 17.2,30.6 43.5,50.1 1.2,0.9 -21.9,-11.3 -4.5,-34.1 20,8.2 11.2,37.3 11.4,36.9 7.4,-15.9 19.8,-23 32,-32.9 12.4,-10 20,-18 41.9,-21.9 z"
+         class="st12"
+         id="Body_Shadow_5_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 493,208.3 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 2.2,23 0.7,29.7 -1.4,49.8 -1.1,10.1 -8.8,25.3 -16.5,45.9 16.5,5.3 30.7,47.1 47.7,53.7 0.7,0.3 -25.7,-15.9 -8.8,-37.6 19.9,9 11.3,37.4 11.5,36.9 9.4,-18.2 33.9,-44.3 73.9,-55 -9.7,-23.8 -24.7,-35.3 -25,-41.4 -0.8,-16 17.6,-31.3 29.9,-54.1 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-22 -21.9,-21.1 -21.9,-21.1 -32.7,-3.3 -35,-14 -30.7,-50 l -22.3,1 c 8.5,43.5 -2.7,39.9 -17.8,48.6"
+         class="st4"
+         id="Body_Normal_6_" /></g><g
+       id="Torso_Unnatural_2_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 445.8,413.2 c 17.2,4.6 17.2,30.6 43.5,50.1 1.2,0.9 -21.9,-11.3 -4.5,-34.1 20,8.2 11.2,37.3 11.4,36.9 7.4,-15.9 19.8,-23 32,-32.9 12.4,-10 20,-18 41.9,-21.9 z"
+         class="st12"
+         id="Body_Shadow_4_" /><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 493,208.3 c 0,0 -14,4.3 -24.7,28.3 -10.7,24 -10.5,59.4 -4.4,81 2.2,23 7.6,30.9 5.5,51 -1.1,10.1 -15.7,24.1 -23.4,44.6 16.5,5.3 30.7,47.1 47.7,53.7 0.7,0.3 -25.7,-15.9 -8.8,-37.6 19.9,9 11.3,37.4 11.5,36.9 9.4,-18.2 33.9,-44.3 73.9,-55 -9.1,-20.7 -34,-29.7 -35.4,-42.7 -1.6,-15.9 25.4,-34.2 40.3,-52.9 8.9,-21.9 18.3,-62.5 10.5,-86 -11.7,-22 -21.9,-21.1 -21.9,-21.1 -32.7,-3.3 -35,-14 -30.7,-50 l -22.3,1 c 8.5,43.7 -2.7,40.1 -17.8,48.8"
+         class="st4"
+         id="Body_Normal_5_" /></g></g><g
+     id="Vagina_1_"><path
+       style="fill:#d76b93"
+       inkscape:connector-curvature="0"
+       d="m 486.1,434.3 c 3,13.5 5.9,25.9 9.3,33 -7.6,-8.5 -10.8,-18.9 -9.3,-33 z"
+       class="st20"
+       id="Vagina" /><g
+       id="Pussy_Hvy_Piercing"><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 491.3,459.9 c 0.2,0 2,2.8 0.8,5.2 -1,2 -3.6,3.1 -6,2 -2.1,-1.1 -2.8,-3.7 -2,-5.6 0.9,-2.4 3.7,-3.1 3.9,-2.9 0.1,0.2 -2.6,1.4 -2.7,3.6 -0.1,1.2 0.5,2.6 1.9,3.1 1.4,0.6 3.1,0 3.9,-1 1.3,-1.7 0.1,-4.3 0.2,-4.4 z"
+         class="st19"
+         id="XMLID_512_" /><ellipse
+         style="fill:#787878"
+         ry="2"
+         rx="1.8"
+         cy="465.89999"
+         cx="486.10001"
+         class="st19"
+         transform="matrix(-0.9904,0.1385,-0.1385,-0.9904,1031.9863,859.9408)"
+         id="XMLID_517_" /><ellipse
+         style="fill:#787878"
+         ry="1.8"
+         rx="1.7"
+         cy="466.79999"
+         cx="489"
+         class="st19"
+         transform="matrix(-0.9904,0.1385,-0.1385,-0.9904,1037.9608,861.3239)"
+         id="XMLID_518_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 488,449.7 c 0.2,0 1.7,3 0.1,5.2 -1.2,1.8 -4.1,2.6 -6.1,1.2 -2,-1.4 -2.2,-4.1 -1.2,-5.8 1.2,-2.2 4.2,-2.6 4.3,-2.4 0.1,0.2 -2.8,1.1 -3.1,3.1 -0.2,1.2 0.2,2.6 1.4,3.4 1.3,0.9 3.1,0.4 4,-0.4 1.3,-1.5 0.5,-4.3 0.6,-4.3 z"
+         class="st19"
+         id="XMLID_519_" /><ellipse
+         style="fill:#787878"
+         ry="2"
+         rx="1.8"
+         cy="453.10001"
+         cx="480.60001"
+         class="st19"
+         id="XMLID_520_" /><ellipse
+         style="fill:#787878"
+         ry="1.8"
+         rx="1.7"
+         cy="455.39999"
+         cx="482.60001"
+         class="st19"
+         id="XMLID_521_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 491.3,459.3 c -0.2,0 -1.4,3.2 0.4,5.2 1.4,1.7 4.3,2.2 6.2,0.6 1.9,-1.5 1.9,-4.3 0.8,-5.9 -1.3,-2.1 -4.4,-2.2 -4.4,-2 0,0.2 2.8,0.8 3.4,2.8 0.3,1.1 0,2.6 -1.1,3.5 -1.2,1 -3,0.7 -4,-0.2 -1.7,-1.2 -1.1,-4 -1.3,-4 z"
+         class="st19"
+         id="XMLID_522_" /><ellipse
+         style="fill:#787878"
+         ry="2"
+         rx="1.8"
+         cy="464.10001"
+         cx="498"
+         class="st19"
+         transform="matrix(0.9965,-0.08364829,0.08364829,0.9965,-37.0735,43.2815)"
+         id="XMLID_523_" /><ellipse
+         style="fill:#787878"
+         ry="1.8"
+         rx="1.7"
+         cy="465.5"
+         cx="495.29999"
+         class="st19"
+         transform="matrix(0.9965,-0.08364948,0.08364948,0.9965,-37.2023,43.0654)"
+         id="XMLID_524_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 488.5,449.9 c -0.2,0 -0.8,3.4 1.3,5.1 1.7,1.3 4.6,1.4 6.2,-0.5 1.5,-1.9 1,-4.5 -0.4,-6 -1.8,-1.8 -4.7,-1.3 -4.7,-1.2 -0.1,0.3 2.9,0.3 3.9,2.1 0.5,1.1 0.5,2.6 -0.4,3.6 -1.1,1.2 -2.8,1.2 -4,0.6 -1.7,-0.9 -1.7,-3.8 -1.9,-3.7 z"
+         class="st19"
+         id="XMLID_525_" /><ellipse
+         style="fill:#787878"
+         ry="2"
+         rx="1.8"
+         cy="455.10001"
+         cx="492.70001"
+         class="st19"
+         transform="matrix(0.9627,-0.2707,0.2707,0.9627,-104.7882,150.3477)"
+         id="XMLID_526_" /><ellipse
+         style="fill:#787878"
+         ry="1.8"
+         rx="1.7"
+         cy="454"
+         cx="495.39999"
+         class="st19"
+         transform="matrix(0.9627,-0.2707,0.2707,0.9627,-104.396,151.0398)"
+         id="XMLID_527_" /></g><g
+       id="Pussy_Piercing"><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 489.6,443.9 c 0.1,-0.1 1.3,0.5 1.4,1.7 0.1,0.9 -0.6,2 -1.7,2 -1,0.1 -1.8,-0.7 -2,-1.5 -0.2,-1.1 0.6,-2 0.7,-2 0.1,0 -0.6,1.1 -0.2,1.9 0.3,0.4 0.8,0.8 1.3,0.7 0.7,-0.1 1.2,-0.7 1.2,-1.2 0.1,-0.9 -0.8,-1.6 -0.7,-1.6 z"
+         class="st19"
+         id="XMLID_528_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 486.6,445 c 0.1,0 0.7,1.2 0,2.2 -0.5,0.7 -1.7,1.1 -2.6,0.4 -0.8,-0.6 -0.9,-1.7 -0.5,-2.5 0.5,-0.9 1.8,-1.1 1.8,-1 0,0.1 -1.2,0.4 -1.3,1.3 -0.1,0.4 0.1,1.1 0.6,1.4 0.5,0.4 1.3,0.2 1.7,-0.2 0.6,-0.5 0.2,-1.6 0.3,-1.6 z"
+         class="st19"
+         id="XMLID_529_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 487.5,451.5 c 0.1,0 0.8,1.2 0.3,2.2 -0.4,0.8 -1.6,1.2 -2.6,0.7 -0.9,-0.5 -1.1,-1.6 -0.7,-2.4 0.4,-1 1.7,-1.2 1.7,-1.2 0.1,0.1 -1.2,0.5 -1.2,1.4 -0.1,0.4 0.2,1.1 0.7,1.3 0.6,0.3 1.3,0.1 1.7,-0.4 0.5,-0.5 0,-1.6 0.1,-1.6 z"
+         class="st19"
+         id="XMLID_530_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 490.7,450.6 c 0.1,-0.1 1.4,0.4 1.7,1.4 0.2,0.9 -0.4,2 -1.4,2.2 -1,0.3 -1.9,-0.4 -2.1,-1.2 -0.4,-1 0.4,-2 0.4,-2 0.1,0 -0.4,1.2 0.1,1.9 0.3,0.4 0.9,0.7 1.4,0.5 0.6,-0.2 1,-0.9 1,-1.4 0,-0.9 -1.2,-1.4 -1.1,-1.4 z"
+         class="st19"
+         id="XMLID_531_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 492.8,457.1 c 0.1,-0.1 1.4,0.4 1.7,1.5 0.2,0.9 -0.4,2 -1.4,2.2 -1,0.2 -1.9,-0.5 -2.1,-1.2 -0.4,-1 0.4,-2 0.4,-2 0.1,0 -0.4,1.2 0.1,1.9 0.3,0.4 0.9,0.7 1.4,0.5 0.6,-0.2 1,-0.9 1,-1.3 -0.1,-1 -1.1,-1.5 -1.1,-1.6 z"
+         class="st19"
+         id="XMLID_532_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 490.1,458.5 c 0.1,0 0.8,1.2 0.3,2.2 -0.4,0.8 -1.6,1.2 -2.6,0.7 -0.9,-0.5 -1.1,-1.6 -0.7,-2.4 0.4,-1 1.7,-1.2 1.7,-1.2 0.1,0.1 -1.2,0.5 -1.2,1.4 -0.1,0.4 0.2,1.1 0.7,1.3 0.6,0.3 1.3,0.1 1.7,-0.4 0.4,-0.5 0,-1.6 0.1,-1.6 z"
+         class="st19"
+         id="XMLID_533_" /></g><g
+       id="Clit_Hvy_piercing"><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="435.60001"
+         cx="488.29999"
+         class="st19"
+         id="XMLID_534_" /><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="436.10001"
+         cx="483.60001"
+         class="st19"
+         id="XMLID_535_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 484,436.4 c -0.1,-0.1 -3.5,1.9 -3.2,5.1 0.3,2.7 2.9,4.5 5.6,4.4 2.6,-0.2 4.9,-2.4 4.9,-4.9 0,-3.2 -3.6,-5 -3.7,-4.8 -0.1,0.2 2.5,2.1 2.1,4.5 -0.2,1.6 -1.9,3.6 -4.1,3.6 -2,-0.1 -3.4,-1.7 -3.6,-3.2 -0.4,-2.6 2.1,-4.7 2,-4.7 z"
+         class="st19"
+         id="XMLID_536_" /></g><g
+       id="Clit_Piercing"><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="435.60001"
+         cx="488.29999"
+         class="st19"
+         id="XMLID_537_" /><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="436.10001"
+         cx="483.60001"
+         class="st19"
+         id="XMLID_538_" /></g><g
+       id="Smart_Clit_Piercing"><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="435.60001"
+         cx="488.29999"
+         class="st19"
+         id="XMLID_539_" /><circle
+         style="fill:#787878"
+         r="1.2"
+         cy="436.10001"
+         cx="483.60001"
+         class="st19"
+         id="XMLID_540_" /><path
+         style="fill:#787878"
+         inkscape:connector-curvature="0"
+         d="m 483.8,436.2 c -0.1,-0.1 -2.3,3.3 -1.1,5.5 1.4,2.7 6.4,2.1 7.4,-0.8 0.8,-2.4 -1.6,-5.4 -1.8,-5.3 -0.1,0.1 1.4,2.5 0.5,4.4 -1,2.1 -3.6,2.3 -4.9,0.3 -1.2,-1.8 0,-4 -0.1,-4.1 z"
+         class="st19"
+         id="XMLID_541_" /><rect
+         style="fill:#4db748"
+         height="7.3000002"
+         width="7.3000002"
+         class="st21"
+         transform="matrix(0.7488,0.6629,-0.6629,0.7488,418.3834,-210.2396)"
+         y="443.10001"
+         x="482.89999"
+         id="XMLID_542_" /></g></g><g
+     id="Preg_Belly_1_"><g
+       id="Preg_Belly"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 494.8,433.8 c 20.7,-1.5 47.7,-4.5 61.9,-42.4 13.1,-44.3 -27.8,-99.6 -59.9,-101.5 -40.1,6.2 -61.8,42.8 -63.9,96.9 2.2,31 33.1,49 61.9,47 z"
+         class="st12"
+         id="XMLID_543_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 494.8,433.8 c 20.8,0.1 49.4,-13 61.9,-42.4 12.5,-29.4 -18.5,-83.4 -46,-101.7 -6.5,-4.3 -38.7,-8.2 -40.4,0 -2.6,11.6 -44.9,33.3 -41.4,96.8 1.8,34.8 45.1,47.2 65.9,47.3 z"
+         class="st3"
+         id="XMLID_544_" /><ellipse
+         style="fill:#d76b93"
+         ry="3.0999999"
+         rx="2.8"
+         cy="396.29999"
+         cx="467.10001"
+         class="st20"
+         transform="matrix(0.9799,-0.1994,0.1994,0.9799,-69.6424,101.0976)"
+         id="XMLID_545_" /></g><g
+       id="Preg_Belly_Piercing"><g
+         id="Belly_Piercing"><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="390.89999"
+           cx="466.89999"
+           class="st19"
+           id="XMLID_547_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="395"
+           cx="466.89999"
+           class="st19"
+           id="XMLID_548_" /></g><g
+         id="Belly_Hvy_Piercing_2_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 467,396.1 c -0.2,0 -1.6,2.1 -1.5,11.7 0.1,12.7 1.5,13.2 1.7,13.2 0.4,0 1.5,-7.4 1.2,-15.9 -0.4,-4.6 -1.1,-9.1 -1.4,-9 z"
+           class="st19"
+           id="XMLID_549_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 467.1,421.1 c -0.5,0 -1,2.4 -0.8,4.4 0.2,1.3 0.6,3 1.2,3 0.4,0 0.7,-1.8 0.8,-3 -0.1,-2 -0.7,-4.4 -1.2,-4.4 z"
+           class="st19"
+           id="XMLID_550_" /></g></g></g><g
+     id="Chest"><g
+       id="Boob_0"><g
+         id="Boob_Large_3_"><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 526.8,215.3 c -14.6,-0.1 -40.4,25.2 -48.5,31.9 -13.9,11.6 -17.9,27.2 -7.6,39.7 6.5,7.9 33.4,6.1 40.3,-8.7 8.5,26.1 38.4,23.5 50.4,7.6 8.7,-11.5 6.5,-31.8 -3.1,-39.1 -12.9,-9.6 -17.4,-31.3 -31.5,-31.4"
+           class="st3"
+           id="XMLID_551_" /></g><g
+         id="Areola_3_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 467.8,271.4 c 1.3,-0.4 2.9,1.2 3.5,3.5 0.5,2.3 -0.1,4.5 -1.3,4.9 -1.3,0.4 -2.9,-1.2 -3.5,-3.5 -0.8,-2.4 -0.1,-4.5 1.3,-4.9 z"
+           class="st20"
+           id="XMLID_552_" /><ellipse
+           style="fill:#d76b93"
+           ry="4.9000001"
+           rx="6.0999999"
+           cy="278.79999"
+           cx="530.70001"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,774.4482,-268.8443)"
+           id="XMLID_553_" /></g><g
+         id="Areola_piercing_3_"><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="276.70001"
+           cx="536.5"
+           class="st19"
+           id="XMLID_554_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="279.70001"
+           cx="536.70001"
+           class="st19"
+           id="XMLID_555_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="271.39999"
+           cx="531.5"
+           class="st19"
+           id="XMLID_556_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="271.79999"
+           cx="528.5"
+           class="st19"
+           id="XMLID_557_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="286.20001"
+           cx="532.59998"
+           class="st19"
+           id="XMLID_558_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="286.20001"
+           cx="529.5"
+           class="st19"
+           id="XMLID_559_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="280.79999"
+           cx="524.79999"
+           class="st19"
+           id="XMLID_560_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="278.10001"
+           cx="524.79999"
+           class="st19"
+           id="XMLID_561_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="271"
+           cx="467.20001"
+           class="st19"
+           id="XMLID_562_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="270.5"
+           cx="468.29999"
+           class="st19"
+           id="XMLID_563_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="277.29999"
+           cx="466.29999"
+           class="st19"
+           id="XMLID_564_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="275.5"
+           cx="465.79999"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,918.0208,572.7028)"
+           id="XMLID_565_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="274"
+           cx="472"
+           class="st19"
+           id="XMLID_566_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="276"
+           cx="472.79999"
+           class="st19"
+           id="XMLID_567_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="281.10001"
+           cx="470.29999"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,1007.9313,386.819)"
+           id="XMLID_568_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="280.5"
+           cx="471.5"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,1009.6696,387.3601)"
+           id="XMLID_569_" /></g><g
+         id="Boob_hvy_piercing_3_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 528.1,278.8 c 0.1,0 -0.5,0.7 -0.5,1.7 0,0.9 0.5,2 1.7,2.4 1.4,0.4 2.9,-0.9 3.3,-2 0.4,-1.1 -0.3,-2 -0.2,-2.1 0.2,-0.1 1.1,1.2 0.9,2.4 -0.2,1.4 -1.7,3.1 -3.6,2.8 -1.4,-0.2 -2.8,-1.3 -2.8,-2.8 -0.1,-1.4 1.2,-2.5 1.2,-2.4 z"
+           class="st19"
+           id="XMLID_570_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 467.6,275.9 c 0,0 -0.4,0.7 -0.4,1.7 -0.1,0.9 0.3,2 0.9,2.4 0.9,0.5 2,-0.7 2.3,-1.9 0.3,-1.1 -0.1,-2 0,-2.1 0.1,-0.1 0.6,1.2 0.5,2.4 -0.2,1.4 -1.3,3 -2.6,2.8 -0.9,-0.2 -1.8,-1.4 -1.7,-2.9 0.1,-1.4 1,-2.4 1,-2.4 z"
+           class="st19"
+           id="XMLID_571_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 468.7,281.2 c 0.1,-0.1 11.3,16.2 28.4,17.6 18.3,1.4 32.9,-14.9 33.1,-14.8 0.2,0.2 -13.4,17.1 -32.5,15.7 -18.5,-1.3 -29.1,-18.4 -29,-18.5 z"
+           class="st19"
+           id="XMLID_572_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="278.70001"
+           cx="527.90002"
+           class="st19"
+           id="XMLID_573_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="278.70001"
+           cx="532.40002"
+           class="st19"
+           id="XMLID_574_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="276"
+           cx="530.20001"
+           class="st19"
+           id="XMLID_575_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="280.89999"
+           cx="530.40002"
+           class="st19"
+           id="XMLID_576_" /><ellipse
+           style="fill:#787878"
+           ry="0.80000001"
+           rx="0.60000002"
+           cy="275.70001"
+           cx="470.39999"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,985.4068,454.8795)"
+           id="XMLID_577_" /><ellipse
+           style="fill:#787878"
+           ry="0.80000001"
+           rx="0.60000002"
+           cy="275.70001"
+           cx="467.60001"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,855.6479,655.2993)"
+           id="XMLID_578_" /><ellipse
+           style="fill:#787878"
+           ry="0.5"
+           rx="0.60000002"
+           cy="273.89999"
+           cx="468.20001"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,296.3026,788.395)"
+           id="XMLID_579_" /><ellipse
+           style="fill:#787878"
+           ry="0.5"
+           rx="0.60000002"
+           cy="277.89999"
+           cx="469.20001"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,707.4532,-212.5916)"
+           id="XMLID_580_" /></g><g
+         id="Boob_piercing_3_"><g
+           id="XMLID_581_"><circle
+             style="fill:#787878"
+             r="1"
+             cy="278.70001"
+             cx="527.90002"
+             class="st19"
+             id="XMLID_582_" /><circle
+             style="fill:#787878"
+             r="1"
+             cy="278.70001"
+             cx="532.40002"
+             class="st19"
+             id="XMLID_583_" /></g><g
+           id="XMLID_584_"><ellipse
+             style="fill:#787878"
+             ry="0.80000001"
+             rx="0.60000002"
+             cy="275.70001"
+             cx="470.39999"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,985.4068,454.8795)"
+             id="XMLID_585_" /><ellipse
+             style="fill:#787878"
+             ry="0.80000001"
+             rx="0.60000002"
+             cy="275.70001"
+             cx="467.60001"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,855.6479,655.2993)"
+             id="XMLID_586_" /></g></g></g><g
+       id="Boob_1"><g
+         id="Boob_Large_2_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="M 509.6,219.8 C 495,219.7 466,243.1 458.4,251 c -13.2,14 -7.7,23.4 -3.4,36.3 9.4,5.8 33.8,8.7 40.3,-8.7 5.5,25.7 44.3,23.5 50.4,7.6 7.6,-19 1.2,-31.9 -6.9,-37.9 -12.7,-9.4 -15,-28.4 -29.2,-28.5"
+           class="st12"
+           id="XMLID_587_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 511.2,215.6 c -14.6,-0.1 -40.4,25.2 -48.5,31.9 -13.9,11.6 -17.9,27.2 -7.6,39.7 6.5,7.9 33.4,6.1 40.3,-8.7 8.5,26.1 38.4,23.5 50.4,7.6 8.7,-11.5 6.5,-31.8 -3.1,-39.1 -12.7,-9.6 -17.2,-31.4 -31.5,-31.4"
+           class="st3"
+           id="XMLID_588_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 497.1,261.4 c 0.5,-4 4.2,-9.7 14.1,-20.8 -6.7,10 -12.5,14.7 -14.1,20.8 z"
+           class="st12"
+           id="XMLID_589_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 495.2,264 c 1.2,-3.4 0.7,-9.4 -2.6,-22.2 1.3,10.7 3.9,16.7 2.6,22.2 z"
+           class="st12"
+           id="XMLID_590_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 552.2,244.3 c 1.6,3.7 1.4,10.5 -1.5,25.1 0.7,-12.1 3.3,-18.9 1.5,-25.1 z"
+           class="st12"
+           id="XMLID_591_" /></g><g
+         id="Areola_2_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 452.2,271.7 c 1.3,-0.4 2.9,1.2 3.5,3.5 0.5,2.3 -0.1,4.5 -1.3,4.9 -1.3,0.4 -2.9,-1.2 -3.5,-3.5 -0.6,-2.3 0,-4.5 1.3,-4.9 z"
+           class="st20"
+           id="XMLID_592_" /><ellipse
+           style="fill:#d76b93"
+           ry="4.9000001"
+           rx="6.0999999"
+           cy="279.10001"
+           cx="515.20001"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,760.2567,-253.1356)"
+           id="XMLID_593_" /></g><g
+         id="Areola_piercing_2_"><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="276.89999"
+           cx="520.90002"
+           class="st19"
+           id="XMLID_594_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="280"
+           cx="521.20001"
+           class="st19"
+           id="XMLID_595_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="271.70001"
+           cx="516"
+           class="st19"
+           id="XMLID_596_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="272.10001"
+           cx="512.90002"
+           class="st19"
+           id="XMLID_597_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="286.5"
+           cx="517.09998"
+           class="st19"
+           id="XMLID_598_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="286.5"
+           cx="514"
+           class="st19"
+           id="XMLID_599_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="281"
+           cx="509.39999"
+           class="st19"
+           id="XMLID_600_" /><circle
+           style="fill:#787878"
+           r="1.1"
+           cy="278.39999"
+           cx="509.39999"
+           class="st19"
+           id="XMLID_601_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="271.29999"
+           cx="451.70001"
+           class="st19"
+           id="XMLID_602_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="270.79999"
+           cx="452.89999"
+           class="st19"
+           id="XMLID_603_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="277.60001"
+           cx="450.79999"
+           class="st19"
+           id="XMLID_604_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="275.70001"
+           cx="450.29999"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,887.0982,572.5067)"
+           id="XMLID_605_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="274.29999"
+           cx="456.5"
+           class="st19"
+           id="XMLID_606_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="276.20001"
+           cx="457.20001"
+           class="st19"
+           id="XMLID_607_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="281.29999"
+           cx="454.89999"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,978.0084,392.5092)"
+           id="XMLID_608_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.5"
+           cy="280.79999"
+           cx="456.10001"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,979.7283,392.9969)"
+           id="XMLID_609_" /></g><g
+         id="Boob_hvy_piercing_2_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 512.7,279.1 c 0.1,0 -0.5,0.7 -0.5,1.7 0,0.9 0.5,2 1.7,2.4 1.4,0.4 2.9,-0.9 3.3,-2 0.4,-1.1 -0.3,-2 -0.2,-2.1 0.2,-0.1 1.1,1.2 0.9,2.4 -0.2,1.4 -1.7,3.1 -3.6,2.8 -1.4,-0.2 -2.8,-1.3 -2.8,-2.8 -0.2,-1.4 1.1,-2.5 1.2,-2.4 z"
+           class="st19"
+           id="XMLID_610_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 452.1,276.1 c 0,0 -0.4,0.7 -0.4,1.7 -0.1,0.9 0.3,2 0.9,2.4 0.9,0.5 2,-0.7 2.3,-1.9 0.3,-1.1 -0.1,-2 0,-2.1 0.1,-0.1 0.6,1.2 0.5,2.4 -0.2,1.4 -1.3,3 -2.6,2.8 -0.9,-0.2 -1.8,-1.4 -1.7,-2.9 0.1,-1.4 1,-2.4 1,-2.4 z"
+           class="st19"
+           id="XMLID_611_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 453.1,281.5 c 0.1,-0.1 11.3,16.2 28.4,17.6 18.3,1.4 32.9,-14.9 33.1,-14.8 0.2,0.2 -13.4,17.1 -32.5,15.7 -18.4,-1.3 -29.1,-18.4 -29,-18.5 z"
+           class="st19"
+           id="XMLID_612_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="279"
+           cx="512.40002"
+           class="st19"
+           id="XMLID_613_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="279"
+           cx="516.79999"
+           class="st19"
+           id="XMLID_614_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="276.20001"
+           cx="514.59998"
+           class="st19"
+           id="XMLID_615_" /><circle
+           style="fill:#787878"
+           r="1"
+           cy="281.20001"
+           cx="515"
+           class="st19"
+           id="XMLID_616_" /><ellipse
+           style="fill:#787878"
+           ry="0.80000001"
+           rx="0.60000002"
+           cy="276"
+           cx="455"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,954.8359,458.3842)"
+           id="XMLID_617_" /><ellipse
+           style="fill:#787878"
+           ry="0.80000001"
+           rx="0.60000002"
+           cy="276"
+           cx="452.10001"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,825.0893,652.1412)"
+           id="XMLID_618_" /><ellipse
+           style="fill:#787878"
+           ry="0.5"
+           rx="0.60000002"
+           cy="274.29999"
+           cx="452.70001"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,277.3305,773.6921)"
+           id="XMLID_619_" /><ellipse
+           style="fill:#787878"
+           ry="0.5"
+           rx="0.60000002"
+           cy="278.10001"
+           cx="453.60001"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,693.3712,-196.8819)"
+           id="XMLID_620_" /></g><g
+         id="Boob_piercing_2_"><g
+           id="XMLID_621_"><circle
+             style="fill:#787878"
+             r="1"
+             cy="279"
+             cx="512.40002"
+             class="st19"
+             id="XMLID_622_" /><circle
+             style="fill:#787878"
+             r="1"
+             cy="279"
+             cx="516.79999"
+             class="st19"
+             id="XMLID_623_" /></g><g
+           id="XMLID_624_"><ellipse
+             style="fill:#787878"
+             ry="0.80000001"
+             rx="0.60000002"
+             cy="276"
+             cx="455"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,954.8359,458.3842)"
+             id="XMLID_625_" /><ellipse
+             style="fill:#787878"
+             ry="0.80000001"
+             rx="0.60000002"
+             cy="276"
+             cx="452.10001"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,825.0893,652.1412)"
+             id="XMLID_626_" /></g></g></g><g
+       id="Boob_2"><g
+         id="Boob_Large"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 508,220.6 c -18,-0.1 -54.2,28.9 -63.4,38.7 -16.4,17.2 -9.6,29 -4.2,45.1 11.7,7.2 41.9,10.8 49.9,-10.8 6.8,31.9 54.9,29.1 62.6,9.5 9.3,-23.6 1.4,-39.5 -8.6,-46.9 -15.7,-11.9 -18.7,-35.5 -36.3,-35.6"
+           class="st12"
+           id="XMLID_627_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 510.2,215.4 c -18,-0.1 -50.2,31.3 -60.2,39.6 -17.2,14.5 -22.3,33.8 -9.5,49.3 8,9.8 41.4,7.6 49.9,-10.8 10.6,32.4 47.6,29.1 62.6,9.5 10.8,-14.2 8,-39.5 -3.8,-48.5 -15.8,-12 -21.4,-39 -39,-39.1"
+           class="st3"
+           id="XMLID_628_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 492.6,272.2 c 0.7,-5 5.2,-12 17.5,-25.8 -8.4,12.5 -15.5,18.2 -17.5,25.8 z"
+           class="st12"
+           id="XMLID_629_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 490.3,275.4 c 1.5,-4.2 0.9,-11.6 -3.2,-27.5 1.5,13.2 4.8,20.7 3.2,27.5 z"
+           class="st12"
+           id="XMLID_630_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 560.9,251 c 2,4.6 1.8,13 -1.9,31.1 0.9,-14.9 4.1,-23.5 1.9,-31.1 z"
+           class="st12"
+           id="XMLID_631_" /></g><g
+         id="Areola"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 437,285 c 1.7,-0.4 3.6,1.5 4.4,4.4 0.7,2.8 -0.1,5.6 -1.7,6 -1.7,0.4 -3.6,-1.5 -4.4,-4.4 -0.8,-2.9 0,-5.5 1.7,-6 z"
+           class="st20"
+           id="XMLID_632_" /><ellipse
+           style="fill:#d76b93"
+           ry="6"
+           rx="7.5999999"
+           cy="294.10001"
+           cx="515"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,775.0793,-238.9386)"
+           id="XMLID_633_" /></g><g
+         id="Areola_piercing"><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="291.39999"
+           cx="522.20001"
+           class="st19"
+           id="XMLID_634_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="295.29999"
+           cx="522.40002"
+           class="st19"
+           id="XMLID_635_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="284.89999"
+           cx="516"
+           class="st19"
+           id="XMLID_636_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="285.39999"
+           cx="512.20001"
+           class="st19"
+           id="XMLID_637_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="303.20001"
+           cx="517.40002"
+           class="st19"
+           id="XMLID_638_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="303.20001"
+           cx="513.5"
+           class="st19"
+           id="XMLID_639_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="296.60001"
+           cx="507.79999"
+           class="st19"
+           id="XMLID_640_" /><circle
+           style="fill:#787878"
+           r="1.3"
+           cy="293.20001"
+           cx="507.79999"
+           class="st19"
+           id="XMLID_641_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="284.39999"
+           cx="436.20001"
+           class="st19"
+           id="XMLID_642_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="283.89999"
+           cx="437.70001"
+           class="st19"
+           id="XMLID_643_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="292.20001"
+           cx="435.10001"
+           class="st19"
+           id="XMLID_644_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="289.89999"
+           cx="434.5"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,854.8103,600.1753)"
+           id="XMLID_645_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="288.10001"
+           cx="442.20001"
+           class="st19"
+           id="XMLID_646_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="290.5"
+           cx="443.10001"
+           class="st19"
+           id="XMLID_647_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="296.89999"
+           cx="440.10001"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,954.6022,427.724)"
+           id="XMLID_648_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="0.69999999"
+           cy="296.29999"
+           cx="441.60001"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,956.7655,427.9553)"
+           id="XMLID_649_" /></g><g
+         id="Boob_hvy_piercing"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 511.9,294.1 c 0.1,0 -0.7,0.9 -0.6,2.1 0,1.1 0.7,2.6 2,2.9 1.8,0.5 3.6,-1.1 4.1,-2.5 0.4,-1.3 -0.4,-2.6 -0.2,-2.7 0.2,-0.1 1.3,1.4 1.2,3 -0.2,1.8 -2.1,3.8 -4.4,3.6 -1.8,-0.2 -3.5,-1.7 -3.6,-3.5 -0.1,-1.7 1.4,-3 1.5,-2.9 z"
+           class="st19"
+           id="XMLID_650_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 436.7,290.5 c 0,0 -0.5,0.9 -0.5,2 -0.1,1.1 0.4,2.6 1.2,3 1.2,0.6 2.5,-0.9 2.8,-2.3 0.4,-1.3 -0.1,-2.6 0,-2.7 0.1,-0.1 0.8,1.4 0.6,3 -0.3,1.8 -1.7,3.7 -3.2,3.4 -1.2,-0.3 -2.2,-1.8 -2.1,-3.6 0.1,-1.6 1.2,-2.8 1.2,-2.8 z"
+           class="st19"
+           id="XMLID_651_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 438,297.1 c 0.1,-0.1 14,20.1 35.3,21.9 22.7,1.8 40.8,-18.6 41,-18.4 0.2,0.2 -16.6,21.2 -40.3,19.5 -22.8,-1.7 -36.1,-22.9 -36,-23 z"
+           class="st19"
+           id="XMLID_652_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="294"
+           cx="511.60001"
+           class="st19"
+           id="XMLID_653_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="294"
+           cx="517.09998"
+           class="st19"
+           id="XMLID_654_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="290.60001"
+           cx="514.29999"
+           class="st19"
+           id="XMLID_655_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="296.79999"
+           cx="514.70001"
+           class="st19"
+           id="XMLID_656_" /><ellipse
+           style="fill:#787878"
+           ry="1"
+           rx="0.80000001"
+           cy="290.29999"
+           cx="440.20001"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,928.3824,489.6277)"
+           id="XMLID_657_" /><ellipse
+           style="fill:#787878"
+           ry="1"
+           rx="0.80000001"
+           cy="290.29999"
+           cx="436.70001"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,791.3661,676.6553)"
+           id="XMLID_658_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.80000001"
+           cy="288.10001"
+           cx="437.39999"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,245.4174,775.3432)"
+           id="XMLID_659_" /><ellipse
+           style="fill:#787878"
+           ry="0.69999999"
+           rx="0.80000001"
+           cy="292.89999"
+           cx="438.70001"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,694.4183,-168.4039)"
+           id="XMLID_660_" /></g><g
+         id="Boob_piercing"><g
+           id="XMLID_661_"><circle
+             style="fill:#787878"
+             r="1.2"
+             cy="294"
+             cx="511.60001"
+             class="st19"
+             id="XMLID_662_" /><circle
+             style="fill:#787878"
+             r="1.2"
+             cy="294"
+             cx="517.09998"
+             class="st19"
+             id="XMLID_663_" /></g><g
+           id="XMLID_664_"><ellipse
+             style="fill:#787878"
+             ry="1"
+             rx="0.80000001"
+             cy="290.29999"
+             cx="440.20001"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,928.3824,489.6277)"
+             id="XMLID_665_" /><ellipse
+             style="fill:#787878"
+             ry="1"
+             rx="0.80000001"
+             cy="290.29999"
+             cx="436.70001"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,791.3661,676.6553)"
+             id="XMLID_666_" /></g></g></g><g
+       id="Boob_3"><g
+         id="Boob_Large_4_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 510,218.5 c -21.8,-0.1 -65.4,34.8 -76.6,46.7 -19.7,20.8 -11.6,34.9 -5,54.4 14.1,8.7 50.6,13 60.2,-13.1 8.3,38.5 66.2,35 75.4,11.5 11.3,-28.5 1.7,-47.7 -10.4,-56.6 -18.8,-14.3 -22.4,-42.8 -43.6,-42.9"
+           class="st12"
+           id="XMLID_667_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="M 512.6,212.2 C 490.8,212.1 452,250 439.9,260 c -20.8,17.5 -26.9,40.7 -11.5,59.4 9.7,11.8 49.9,9.2 60.2,-13.1 12.8,39.1 57.5,35 75.4,11.5 13.1,-17.1 9.7,-47.6 -4.6,-58.6 -18.8,-14.4 -25.6,-46.9 -46.8,-47"
+           class="st3"
+           id="XMLID_668_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 491.3,280.8 c 0.9,-6 6.2,-14.5 21.1,-31.1 -10,15 -18.6,21.8 -21.1,31.1 z"
+           class="st12"
+           id="XMLID_669_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 488.6,284.6 c 1.9,-5.1 1.1,-14 -3.8,-33.2 1.7,15.9 5.6,24.9 3.8,33.2 z"
+           class="st12"
+           id="XMLID_670_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 573.8,255.1 c 2.4,5.6 2.1,15.6 -2.2,37.5 1,-18 4.9,-28.3 2.2,-37.5 z"
+           class="st12"
+           id="XMLID_671_" /></g><g
+         id="Areola_4_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 424.2,296.1 c 2,-0.5 4.4,1.9 5.2,5.2 0.9,3.5 -0.1,6.8 -2,7.3 -2,0.5 -4.4,-1.9 -5.2,-5.2 -1,-3.5 0,-6.7 2,-7.3 z"
+           class="st20"
+           id="XMLID_672_" /><ellipse
+           style="fill:#d76b93"
+           ry="7.3000002"
+           rx="9.1999998"
+           cy="307.10001"
+           cx="518.40002"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,791.2404,-230.0869)"
+           id="XMLID_673_" /></g><g
+         id="Areola_piercing_4_"><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="304"
+           cx="527.09998"
+           class="st19"
+           id="XMLID_674_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="308.5"
+           cx="527.40002"
+           class="st19"
+           id="XMLID_675_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="296.10001"
+           cx="519.70001"
+           class="st19"
+           id="XMLID_676_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="296.70001"
+           cx="515.09998"
+           class="st19"
+           id="XMLID_677_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="318.20001"
+           cx="521.29999"
+           class="st19"
+           id="XMLID_678_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="318.20001"
+           cx="516.70001"
+           class="st19"
+           id="XMLID_679_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="310.20001"
+           cx="509.70001"
+           class="st19"
+           id="XMLID_680_" /><circle
+           style="fill:#787878"
+           r="1.6"
+           cy="306.10001"
+           cx="509.70001"
+           class="st19"
+           id="XMLID_681_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="295.39999"
+           cx="423.39999"
+           class="st19"
+           id="XMLID_682_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="294.79999"
+           cx="425.10001"
+           class="st19"
+           id="XMLID_683_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="304.79999"
+           cx="422"
+           class="st19"
+           id="XMLID_684_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="302.20001"
+           cx="421.29999"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,827.7614,624.0518)"
+           id="XMLID_685_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="300"
+           cx="430.60001"
+           class="st19"
+           id="XMLID_686_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="302.79999"
+           cx="431.70001"
+           class="st19"
+           id="XMLID_687_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="310.39999"
+           cx="428.10001"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,935.8943,458.1015)"
+           id="XMLID_688_" /><ellipse
+           style="fill:#787878"
+           ry="1.1"
+           rx="0.89999998"
+           cy="309.79999"
+           cx="429.89999"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,938.5138,458.1071)"
+           id="XMLID_689_" /></g><g
+         id="Boob_hvy_piercing_4_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 514.6,307.2 c 0.1,0 -0.9,1.1 -0.7,2.6 0,1.2 0.9,3.1 2.5,3.6 2.1,0.6 4.4,-1.2 4.9,-3 0.5,-1.6 -0.4,-3.1 -0.2,-3.2 0.2,-0.1 1.6,1.7 1.4,3.6 -0.2,2.1 -2.6,4.6 -5.3,4.3 -2.1,-0.2 -4.2,-2 -4.3,-4.2 -0.1,-2.2 1.6,-3.8 1.7,-3.7 z"
+           class="st19"
+           id="XMLID_690_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 424,302.7 c 0,0 -0.6,1.1 -0.6,2.5 -0.1,1.2 0.4,3.1 1.4,3.6 1.4,0.7 3,-1.1 3.5,-2.8 0.4,-1.6 -0.1,-3.1 0,-3.2 0.1,-0.1 1,1.7 0.7,3.6 -0.4,2.1 -2,4.5 -3.8,4.1 -1.4,-0.4 -2.7,-2.1 -2.6,-4.4 0,-1.9 1.4,-3.4 1.4,-3.4 z"
+           class="st19"
+           id="XMLID_691_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 425.6,310.8 c 0.1,-0.1 16.8,24.3 42.6,26.4 27.5,2.1 49.2,-22.4 49.4,-22.2 0.2,0.2 -20.1,25.6 -48.7,23.5 -27.5,-2 -43.4,-27.6 -43.3,-27.7 z"
+           class="st19"
+           id="XMLID_692_" /><circle
+           style="fill:#787878"
+           r="1.5"
+           cy="307.10001"
+           cx="514.29999"
+           class="st19"
+           id="XMLID_693_" /><circle
+           style="fill:#787878"
+           r="1.5"
+           cy="307.10001"
+           cx="520.90002"
+           class="st19"
+           id="XMLID_694_" /><circle
+           style="fill:#787878"
+           r="1.5"
+           cy="303"
+           cx="517.59998"
+           class="st19"
+           id="XMLID_695_" /><circle
+           style="fill:#787878"
+           r="1.5"
+           cy="310.39999"
+           cx="518.09998"
+           class="st19"
+           id="XMLID_696_" /><ellipse
+           style="fill:#787878"
+           ry="1.2"
+           rx="1"
+           cy="302.5"
+           cx="428.20001"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,907.0026,516.2271)"
+           id="XMLID_697_" /><ellipse
+           style="fill:#787878"
+           ry="1.2"
+           rx="1"
+           cy="302.60001"
+           cx="424"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,763.2371,697.7639)"
+           id="XMLID_698_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="1"
+           cy="299.79999"
+           cx="424.89999"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,218.8256,777.2117)"
+           id="XMLID_699_" /><ellipse
+           style="fill:#787878"
+           ry="0.89999998"
+           rx="1"
+           cy="305.79999"
+           cx="426.29999"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,695.8627,-144.3055)"
+           id="XMLID_700_" /></g><g
+         id="Boob_piercing_4_"><g
+           id="XMLID_701_"><circle
+             style="fill:#787878"
+             r="1.5"
+             cy="307.10001"
+             cx="514.29999"
+             class="st19"
+             id="XMLID_702_" /><circle
+             style="fill:#787878"
+             r="1.5"
+             cy="307.10001"
+             cx="520.90002"
+             class="st19"
+             id="XMLID_703_" /></g><g
+           id="XMLID_704_"><ellipse
+             style="fill:#787878"
+             ry="1.2"
+             rx="1"
+             cy="302.5"
+             cx="428.20001"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,907.0026,516.2271)"
+             id="XMLID_705_" /><ellipse
+             style="fill:#787878"
+             ry="1.2"
+             rx="1"
+             cy="302.60001"
+             cx="424"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,763.2371,697.7639)"
+             id="XMLID_706_" /></g></g></g><g
+       id="Boob_4"><g
+         id="Boob_Large_5_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 506.5,222.3 c -28.4,-0.2 -85.3,45.5 -100,61 -25.7,27.2 -15,45.6 -6.5,70.9 18.5,11.4 66,16.9 78.6,-17.1 10.8,50.2 86.5,45.8 98.5,14.9 14.7,-37.2 2.2,-62.3 -13.6,-73.8 -24.6,-18.5 -29.2,-55.7 -57,-55.9"
+           class="st12"
+           id="XMLID_707_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 509.9,214 c -28.4,-0.2 -79.1,49.2 -94.8,62.4 -27.1,22.8 -35.1,53.1 -14.9,77.7 12.6,15.4 65.2,11.9 78.6,-17.1 16.6,51.1 75,45.8 98.5,14.9 17.1,-22.4 12.6,-62.1 -6,-76.4 -24.9,-18.8 -33.8,-61.3 -61.4,-61.5"
+           class="st3"
+           id="XMLID_708_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 482.2,303.6 c 1.2,-7.8 8.1,-18.9 27.5,-40.6 -13.1,19.6 -24.3,28.5 -27.5,40.6 z"
+           class="st12"
+           id="XMLID_709_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 478.5,308.7 c 2.4,-6.6 1.4,-18.3 -5.1,-43.4 2.5,20.8 7.6,32.5 5.1,43.4 z"
+           class="st12"
+           id="XMLID_710_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 566.6,240.2 c 5.3,5.8 9.6,18.2 14,47 -6.7,-22.5 -6.6,-36.8 -14,-47 z"
+           class="st12"
+           id="XMLID_711_" /></g><g
+         id="Areola_5_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 394.6,323.8 c 2.7,-0.7 5.8,2.4 6.8,6.8 1.2,4.4 -0.2,8.8 -2.7,9.5 -2.7,0.7 -5.8,-2.4 -6.8,-6.8 -1.2,-4.6 0.1,-8.9 2.7,-9.5 z"
+           class="st20"
+           id="XMLID_712_" /><ellipse
+           style="fill:#d76b93"
+           ry="9.5"
+           rx="11.9"
+           cy="338"
+           cx="517.40002"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,821.1389,-200.3058)"
+           id="XMLID_713_" /></g><g
+         id="Areola_piercing_5_"><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="333.89999"
+           cx="528.79999"
+           class="st19"
+           id="XMLID_714_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="339.89999"
+           cx="529.20001"
+           class="st19"
+           id="XMLID_715_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="323.70001"
+           cx="519.09998"
+           class="st19"
+           id="XMLID_716_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="324.39999"
+           cx="513.09998"
+           class="st19"
+           id="XMLID_717_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="352.5"
+           cx="521.29999"
+           class="st19"
+           id="XMLID_718_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="352.5"
+           cx="515.20001"
+           class="st19"
+           id="XMLID_719_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="342"
+           cx="506.20001"
+           class="st19"
+           id="XMLID_720_" /><circle
+           style="fill:#787878"
+           r="2.0999999"
+           cy="336.70001"
+           cx="506.20001"
+           class="st19"
+           id="XMLID_721_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="322.79999"
+           cx="393.5"
+           class="st19"
+           id="XMLID_722_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="322"
+           cx="395.70001"
+           class="st19"
+           id="XMLID_723_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="335.10001"
+           cx="391.70001"
+           class="st19"
+           id="XMLID_724_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="331.60001"
+           cx="390.79999"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,765.4359,681.4077)"
+           id="XMLID_725_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="328.70001"
+           cx="402.89999"
+           class="st19"
+           id="XMLID_726_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="332.5"
+           cx="404.29999"
+           class="st19"
+           id="XMLID_727_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="342.39999"
+           cx="399.60001"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,891.3522,529.8864)"
+           id="XMLID_728_" /><ellipse
+           style="fill:#787878"
+           ry="1.4"
+           rx="1.2"
+           cy="341.5"
+           cx="402"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,894.9265,529.0276)"
+           id="XMLID_729_" /></g><g
+         id="Boob_hvy_piercing_5_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 512.6,338.1 c 0.2,0 -1.2,1.4 -1,3.4 0,1.7 1.2,4.1 3.2,4.6 2.8,0.8 5.8,-1.7 6.4,-3.9 0.7,-2.1 -0.5,-4.1 -0.3,-4.2 0.3,-0.1 2.1,2.2 1.8,4.8 -0.3,2.8 -3.4,6 -7,5.6 -2.8,-0.3 -5.4,-2.7 -5.6,-5.4 0,-3 2.3,-5.1 2.5,-4.9 z"
+           class="st19"
+           id="XMLID_730_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 394.2,332.3 c 0,0 -0.8,1.4 -0.8,3.2 -0.2,1.7 0.5,4.1 1.8,4.8 1.8,1 3.9,-1.4 4.4,-3.6 0.5,-2.1 -0.2,-4.1 0,-4.2 0.2,-0.2 1.2,2.2 1,4.8 -0.4,2.8 -2.7,5.9 -5.1,5.3 -1.8,-0.4 -3.5,-2.8 -3.4,-5.8 0.4,-2.5 2.1,-4.5 2.1,-4.5 z"
+           class="st19"
+           id="XMLID_731_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 396.3,342.8 c 0.2,-0.2 21.9,31.6 55.5,34.4 35.8,2.8 64.2,-29.2 64.5,-29 0.3,0.3 -26.1,33.4 -63.5,30.7 C 417,376.4 396.2,343 396.3,342.8 Z"
+           class="st19"
+           id="XMLID_732_" /><circle
+           style="fill:#787878"
+           r="2"
+           cy="337.89999"
+           cx="512.09998"
+           class="st19"
+           id="XMLID_733_" /><circle
+           style="fill:#787878"
+           r="2"
+           cy="337.89999"
+           cx="520.79999"
+           class="st19"
+           id="XMLID_734_" /><circle
+           style="fill:#787878"
+           r="2"
+           cy="332.60001"
+           cx="516.5"
+           class="st19"
+           id="XMLID_735_" /><circle
+           style="fill:#787878"
+           r="2"
+           cy="342.29999"
+           cx="517"
+           class="st19"
+           id="XMLID_736_" /><ellipse
+           style="fill:#787878"
+           ry="1.5"
+           rx="1.2"
+           cy="332.10001"
+           cx="399.79999"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,856.431,580.3391)"
+           id="XMLID_737_" /><ellipse
+           style="fill:#787878"
+           ry="1.5"
+           rx="1.2"
+           cy="332.20001"
+           cx="394.20001"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,697.4272,749.1066)"
+           id="XMLID_738_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="328.60001"
+           cx="395.39999"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,155.0886,783.064)"
+           id="XMLID_739_" /><circle
+           style="fill:#787878"
+           r="1.2"
+           cy="336.20001"
+           cx="397.29999"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,699.5681,-87.4572)"
+           id="XMLID_740_" /></g><g
+         id="Boob_piercing_5_"><g
+           id="XMLID_741_"><circle
+             style="fill:#787878"
+             r="2"
+             cy="337.89999"
+             cx="512.09998"
+             class="st19"
+             id="XMLID_742_" /><circle
+             style="fill:#787878"
+             r="2"
+             cy="337.89999"
+             cx="520.79999"
+             class="st19"
+             id="XMLID_743_" /></g><g
+           id="XMLID_744_"><ellipse
+             style="fill:#787878"
+             ry="1.5"
+             rx="1.2"
+             cy="332.10001"
+             cx="399.79999"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,856.431,580.3391)"
+             id="XMLID_745_" /><ellipse
+             style="fill:#787878"
+             ry="1.5"
+             rx="1.2"
+             cy="332.20001"
+             cx="394.20001"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,697.4272,749.1066)"
+             id="XMLID_746_" /></g></g></g><g
+       id="Boob_5"><g
+         id="Boob_Large_1_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 504.6,225.3 c -38.2,-0.2 -114.7,61.2 -134.4,82 -34.6,36.5 -20.2,61.2 -8.7,95.3 24.8,15.2 88.7,22.8 105.7,-22.8 14.5,67.5 116.2,61.5 132.4,20.1 19.7,-50 -12.6,-93.3 -18.2,-99.3 -28.5,-30.4 -39.6,-75.1 -76.8,-75.3"
+           class="st12"
+           id="XMLID_747_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 509.1,214.2 c -38.2,-0.2 -106.3,66.2 -127.5,83.9 -36.5,30.7 -47.2,71.5 -20.1,104.4 16.9,20.7 87.6,16 105.7,-22.9 22.4,68.7 100.8,61.5 132.4,20.1 22.9,-30.1 -1.2,-65 -8.1,-102.7 -7.5,-41.2 -45.2,-82.6 -82.4,-82.8"
+           class="st3"
+           id="XMLID_748_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 471.9,334.6 c 1.5,-10.6 10.9,-25.4 37.1,-54.6 -17.8,26.4 -32.8,38.4 -37.1,54.6 z"
+           class="st12"
+           id="XMLID_749_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 467,341.4 c 3.2,-8.8 1.9,-24.6 -6.8,-58.3 3.2,28 10.2,43.8 6.8,58.3 z"
+           class="st12"
+           id="XMLID_750_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 541.4,219.6 c 9.6,4.5 21.1,17.9 41.1,51.6 -19.8,-24.7 -26.8,-42.7 -41.1,-51.6 z"
+           class="st12"
+           id="XMLID_751_" /></g><g
+         id="Areola_1_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 354.1,361.7 c 3.6,-1 7.7,3.2 9.2,9.2 1.5,6 -0.2,11.8 -3.6,12.8 -3.6,1 -7.7,-3.2 -9.2,-9.2 -1.6,-6.2 0.1,-11.9 3.6,-12.8 z"
+           class="st20"
+           id="XMLID_752_" /><ellipse
+           style="fill:#d76b93"
+           ry="12.8"
+           rx="16"
+           cy="380.89999"
+           cx="519.40002"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,865.7677,-162.0763)"
+           id="XMLID_753_" /></g><g
+         id="Areola_piercing_1_"><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="375.29999"
+           cx="534.5"
+           class="st19"
+           id="XMLID_754_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="383.39999"
+           cx="535.09998"
+           class="st19"
+           id="XMLID_755_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="361.5"
+           cx="521.5"
+           class="st19"
+           id="XMLID_756_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="362.5"
+           cx="513.5"
+           class="st19"
+           id="XMLID_757_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="400.29999"
+           cx="524.40002"
+           class="st19"
+           id="XMLID_758_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="400.29999"
+           cx="516.29999"
+           class="st19"
+           id="XMLID_759_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="386.20001"
+           cx="504"
+           class="st19"
+           id="XMLID_760_" /><circle
+           style="fill:#787878"
+           r="2.8"
+           cy="379"
+           cx="504"
+           class="st19"
+           id="XMLID_761_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="360.5"
+           cx="352.70001"
+           class="st19"
+           id="XMLID_762_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="359.29999"
+           cx="355.60001"
+           class="st19"
+           id="XMLID_763_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="377"
+           cx="350.20001"
+           class="st19"
+           id="XMLID_764_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="372.29999"
+           cx="349"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,679.8478,760.7689)"
+           id="XMLID_765_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="368.39999"
+           cx="365.20001"
+           class="st19"
+           id="XMLID_766_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="373.39999"
+           cx="367.10001"
+           class="st19"
+           id="XMLID_767_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="386.79999"
+           cx="360.89999"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,831.1002,629.0543)"
+           id="XMLID_768_" /><ellipse
+           style="fill:#787878"
+           ry="1.9"
+           rx="1.5"
+           cy="385.60001"
+           cx="364"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,835.9724,627.3287)"
+           id="XMLID_769_" /></g><g
+         id="Boob_hvy_piercing_1_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 512.7,380.9 c 0.2,0 -1.5,1.9 -1.3,4.5 0,2.2 1.5,5.4 4.4,6.2 3.7,1.2 7.7,-2.2 8.6,-5.2 1,-2.8 -0.7,-5.4 -0.4,-5.6 0.3,-0.2 2.8,3 2.5,6.4 -0.4,3.7 -4.5,8.1 -9.4,7.6 -3.7,-0.4 -7.4,-3.6 -7.6,-7.4 -0.1,-3.8 3.1,-6.7 3.2,-6.5 z"
+           class="st19"
+           id="XMLID_770_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 353.6,373.3 c 0,0 -1.2,1.9 -1.2,4.4 -0.2,2.2 0.7,5.4 2.5,6.4 2.5,1.3 5.2,-1.9 6,-4.9 0.7,-2.8 -0.2,-5.4 0,-5.6 0.2,-0.2 1.7,3 1.3,6.4 -0.5,3.7 -3.6,7.9 -6.8,7.1 -2.5,-0.5 -4.7,-3.7 -4.5,-7.7 0.5,-3.6 2.7,-6.1 2.7,-6.1 z"
+           class="st19"
+           id="XMLID_771_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 356.4,387.3 c 0.2,-0.2 29.5,42.5 74.6,46.3 48.2,3.7 86.4,-39.3 86.7,-38.9 0.4,0.4 -35.2,45 -85.4,41.4 -48,-3.7 -76,-48.5 -75.9,-48.8 z"
+           class="st19"
+           id="XMLID_772_" /><circle
+           style="fill:#787878"
+           r="2.7"
+           cy="380.70001"
+           cx="512.09998"
+           class="st19"
+           id="XMLID_773_" /><circle
+           style="fill:#787878"
+           r="2.7"
+           cy="380.70001"
+           cx="523.90002"
+           class="st19"
+           id="XMLID_774_" /><circle
+           style="fill:#787878"
+           r="2.7"
+           cy="373.60001"
+           cx="518"
+           class="st19"
+           id="XMLID_775_" /><circle
+           style="fill:#787878"
+           r="2.7"
+           cy="386.60001"
+           cx="518.70001"
+           class="st19"
+           id="XMLID_776_" /><ellipse
+           style="fill:#787878"
+           ry="2"
+           rx="1.7"
+           cy="373"
+           cx="361"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,787.6197,668.8575)"
+           id="XMLID_777_" /><ellipse
+           style="fill:#787878"
+           ry="2"
+           rx="1.7"
+           cy="373.10001"
+           cx="353.60001"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,607.6005,819.9565)"
+           id="XMLID_778_" /><ellipse
+           style="fill:#787878"
+           ry="1.5"
+           rx="1.7"
+           cy="368.10001"
+           cx="355.10001"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,67.8569,791.334)"
+           id="XMLID_779_" /><ellipse
+           style="fill:#787878"
+           ry="1.5"
+           rx="1.7"
+           cy="378.5"
+           cx="357.79999"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,705.519,-9.3184)"
+           id="XMLID_780_" /></g><g
+         id="Boob_piercing_1_"><g
+           id="XMLID_781_"><circle
+             style="fill:#787878"
+             r="2.7"
+             cy="380.70001"
+             cx="512.09998"
+             class="st19"
+             id="XMLID_782_" /><circle
+             style="fill:#787878"
+             r="2.7"
+             cy="380.70001"
+             cx="523.90002"
+             class="st19"
+             id="XMLID_783_" /></g><g
+           id="XMLID_784_"><ellipse
+             style="fill:#787878"
+             ry="2"
+             rx="1.7"
+             cy="373"
+             cx="361"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,787.6197,668.8575)"
+             id="XMLID_785_" /><ellipse
+             style="fill:#787878"
+             ry="2"
+             rx="1.7"
+             cy="373.10001"
+             cx="353.60001"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,607.6005,819.9565)"
+             id="XMLID_786_" /></g></g></g><g
+       id="Boob_6"><g
+         id="Boob_Large_6_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 501.2,228.8 c -50.3,-0.2 -151.1,80.6 -177,108 -45.5,48.1 -26.6,80.6 -11.5,125.5 32.7,20 116.8,30.1 139.2,-30.1 19.1,89 153.1,81 174.4,26.5 26,-65.9 -16.6,-122.9 -24,-130.9 -37.5,-39.9 -52.1,-98.7 -101.1,-99"
+           class="st12"
+           id="XMLID_787_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="m 507.1,214.2 c -50.3,-0.2 -140,87.2 -168,110.5 -48.1,40.4 -62.2,94.2 -26.5,137.5 22.4,27.3 115.5,21.1 139.4,-30.2 29.5,90.5 132.7,81 174.4,26.5 30.2,-39.7 -1.6,-85.7 -10.7,-135.3 -9.9,-54.2 -59.5,-108.8 -108.6,-109"
+           class="st3"
+           id="XMLID_788_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 458.1,372.8 c 2,-13.9 14.4,-33.5 48.8,-71.9 -23.3,34.7 -43.1,50.6 -48.8,71.9 z"
+           class="st12"
+           id="XMLID_789_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 451.7,381.7 c 4.2,-11.6 2.5,-32.4 -8.9,-76.8 4.2,36.9 13.3,57.7 8.9,76.8 z"
+           class="st12"
+           id="XMLID_790_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 549.6,221.4 c 12.6,6 27.9,23.5 54.1,68 -26,-32.7 -35.2,-56.3 -54.1,-68 z"
+           class="st12"
+           id="XMLID_791_" /></g><g
+         id="Areola_6_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 303,408.5 c 4.7,-1.3 10.2,4.2 12.2,12.2 2,8 -0.2,15.6 -4.7,16.9 -4.7,1.3 -10.2,-4.2 -12.2,-12.2 -2.2,-8.2 0,-15.7 4.7,-16.9 z"
+           class="st20"
+           id="XMLID_792_" /><ellipse
+           style="fill:#d76b93"
+           ry="16.9"
+           rx="21.1"
+           cy="433.70001"
+           cx="520.59998"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,919.7263,-113.9278)"
+           id="XMLID_793_" /></g><g
+         id="Areola_piercing_6_"><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="426.39999"
+           cx="540.59998"
+           class="st19"
+           id="XMLID_794_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="437.10001"
+           cx="541.40002"
+           class="st19"
+           id="XMLID_795_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="408.29999"
+           cx="523.5"
+           class="st19"
+           id="XMLID_796_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="409.60001"
+           cx="512.90002"
+           class="st19"
+           id="XMLID_797_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="459.29999"
+           cx="527.29999"
+           class="st19"
+           id="XMLID_798_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="459.29999"
+           cx="516.59998"
+           class="st19"
+           id="XMLID_799_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="440.79999"
+           cx="500.5"
+           class="st19"
+           id="XMLID_800_" /><circle
+           style="fill:#787878"
+           r="3.7"
+           cy="431.29999"
+           cx="500.5"
+           class="st19"
+           id="XMLID_801_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="406.89999"
+           cx="301.10001"
+           class="st19"
+           id="XMLID_802_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="405.29999"
+           cx="305"
+           class="st19"
+           id="XMLID_803_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="428.60001"
+           cx="297.89999"
+           class="st19"
+           id="XMLID_804_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="422.5"
+           cx="296.20001"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,572.0126,858.504)"
+           id="XMLID_805_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="417.29999"
+           cx="317.70001"
+           class="st19"
+           id="XMLID_806_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="424"
+           cx="320.10001"
+           class="st19"
+           id="XMLID_807_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="441.5"
+           cx="311.89999"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,754.4891,751.8561)"
+           id="XMLID_808_" /><ellipse
+           style="fill:#787878"
+           ry="2.5"
+           rx="2"
+           cy="439.89999"
+           cx="316.10001"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,760.9403,748.9292)"
+           id="XMLID_809_" /></g><g
+         id="Boob_hvy_piercing_6_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 511.9,433.8 c 0.2,0 -2,2.5 -1.8,6 0,2.9 2,7.1 5.7,8.2 4.9,1.5 10.2,-2.9 11.4,-6.9 1.3,-3.7 -0.9,-7.1 -0.5,-7.4 0.5,-0.2 3.7,4 3.3,8.4 -0.5,4.9 -6,10.7 -12.4,9.9 -4.9,-0.5 -9.7,-4.7 -9.9,-9.7 -0.2,-5 4,-8.7 4.2,-8.5 z"
+           class="st19"
+           id="XMLID_810_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 302.3,423.7 c 0,0 -1.5,2.5 -1.5,5.7 -0.2,2.9 0.9,7.1 3.3,8.4 3.3,1.8 6.9,-2.5 8,-6.4 0.9,-3.7 -0.2,-7.1 0,-7.4 0.2,-0.3 2.2,4 1.8,8.4 -0.7,4.9 -4.7,10.4 -8.9,9.4 -3.3,-0.7 -6.2,-4.9 -6,-10.2 0.4,-4.5 3.3,-7.9 3.3,-7.9 z"
+           class="st19"
+           id="XMLID_811_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 306.1,442.2 c 0.2,-0.2 38.9,55.9 98.3,61 63.4,4.9 113.8,-51.7 114.2,-51.3 0.5,0.5 -46.3,59.2 -112.5,54.5 -63.4,-4.7 -100.3,-63.8 -100,-64.2 z"
+           class="st19"
+           id="XMLID_812_" /><circle
+           style="fill:#787878"
+           r="3.5"
+           cy="433.60001"
+           cx="511.10001"
+           class="st19"
+           id="XMLID_813_" /><circle
+           style="fill:#787878"
+           r="3.5"
+           cy="433.60001"
+           cx="526.59998"
+           class="st19"
+           id="XMLID_814_" /><circle
+           style="fill:#787878"
+           r="3.5"
+           cy="424.20001"
+           cx="518.79999"
+           class="st19"
+           id="XMLID_815_" /><circle
+           style="fill:#787878"
+           r="3.5"
+           cy="441.29999"
+           cx="519.79999"
+           class="st19"
+           id="XMLID_816_" /><ellipse
+           style="fill:#787878"
+           ry="2.7"
+           rx="2.2"
+           cy="423.39999"
+           cx="312.10001"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,700.4802,778.1339)"
+           id="XMLID_817_" /><ellipse
+           style="fill:#787878"
+           ry="2.7"
+           rx="2.2"
+           cy="423.5"
+           cx="302.29999"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,494.4378,907.0223)"
+           id="XMLID_818_" /><ellipse
+           style="fill:#787878"
+           ry="2"
+           rx="2.2"
+           cy="416.89999"
+           cx="304.39999"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,-41.1507,800.4734)"
+           id="XMLID_819_" /><ellipse
+           style="fill:#787878"
+           ry="2"
+           rx="2.2"
+           cy="430.60001"
+           cx="307.89999"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,711.6222,88.2673)"
+           id="XMLID_820_" /></g><g
+         id="Boob_piercing_6_"><g
+           id="XMLID_821_"><circle
+             style="fill:#787878"
+             r="3.5"
+             cy="433.60001"
+             cx="511.10001"
+             class="st19"
+             id="XMLID_822_" /><circle
+             style="fill:#787878"
+             r="3.5"
+             cy="433.60001"
+             cx="526.59998"
+             class="st19"
+             id="XMLID_823_" /></g><g
+           id="XMLID_824_"><ellipse
+             style="fill:#787878"
+             ry="2.7"
+             rx="2.2"
+             cy="423.39999"
+             cx="312.10001"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,700.4802,778.1339)"
+             id="XMLID_825_" /><ellipse
+             style="fill:#787878"
+             ry="2.7"
+             rx="2.2"
+             cy="423.5"
+             cx="302.29999"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,494.4378,907.0223)"
+             id="XMLID_826_" /></g></g></g><g
+       id="Boob_7"><g
+         id="Boob_Large_8_"><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 501,232 c -61.3,-0.3 -184,98.2 -215.5,131.6 -55.4,58.6 -32.4,98.2 -14,152.8 C 311.3,540.8 413.7,553 441,479.8 464.2,588.1 627.4,578.4 653.4,512 685,431.8 633.2,362.3 624.2,352.6 578.6,304 560.7,232.3 501,232"
+           class="st12"
+           id="XMLID_897_" /><path
+           style="fill:#f6e0e8"
+           inkscape:connector-curvature="0"
+           d="M 508.3,214.2 C 447,213.9 337.8,320.4 303.8,348.8 245.2,398 228.1,463.5 271.6,516.3 c 27.1,33.2 140.5,25.7 169.6,-36.8 35.9,110.2 161.6,98.6 212.4,32.2 36.8,-48.3 -2,-104.3 -13,-164.8 C 628.4,280.9 568,214.5 508.3,214.2"
+           class="st3"
+           id="XMLID_896_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 448.6,407.3 c 2.4,-17 17.5,-40.8 59.4,-87.5 -28.4,42.2 -52.4,61.6 -59.4,87.5 z"
+           class="st12"
+           id="XMLID_895_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 440.7,418.2 c 5.1,-14.1 3,-39.5 -10.8,-93.5 5.1,44.9 16.2,70.2 10.8,93.5 z"
+           class="st12"
+           id="XMLID_894_" /><path
+           style="fill:#010101"
+           inkscape:connector-curvature="0"
+           d="m 560,222.9 c 15.4,7.3 33.9,28.6 65.9,82.8 C 594.2,266 583,237.2 560,222.9 Z"
+           class="st12"
+           id="XMLID_827_" /></g><g
+         id="Areola_7_"><path
+           style="fill:#d76b93"
+           inkscape:connector-curvature="0"
+           d="m 259.7,450.8 c 5.7,-1.6 12.4,5.1 14.8,14.8 2.4,9.7 -0.3,19 -5.7,20.5 -5.7,1.6 -12.4,-5.1 -14.8,-14.8 -2.7,-9.9 0,-19.1 5.7,-20.5 z"
+           class="st20"
+           id="XMLID_832_" /><ellipse
+           style="fill:#d76b93"
+           ry="20.5"
+           rx="25.700001"
+           cy="481.5"
+           cx="524.70001"
+           class="st20"
+           transform="matrix(0.06481902,0.9979,-0.9979,0.06481902,971.2539,-73.2956)"
+           id="XMLID_833_" /></g><g
+         id="Areola_piercing_7_"><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="472.60001"
+           cx="549.09998"
+           class="st19"
+           id="XMLID_834_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="485.60001"
+           cx="550.09998"
+           class="st19"
+           id="XMLID_835_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="450.5"
+           cx="528.20001"
+           class="st19"
+           id="XMLID_836_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="452.10001"
+           cx="515.29999"
+           class="st19"
+           id="XMLID_837_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="512.70001"
+           cx="532.79999"
+           class="st19"
+           id="XMLID_838_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="512.70001"
+           cx="519.79999"
+           class="st19"
+           id="XMLID_839_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="490.20001"
+           cx="500.20001"
+           class="st19"
+           id="XMLID_840_" /><circle
+           style="fill:#787878"
+           r="4.5999999"
+           cy="478.60001"
+           cx="500.20001"
+           class="st19"
+           id="XMLID_841_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="448.79999"
+           cx="257.39999"
+           class="st19"
+           id="XMLID_842_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="447"
+           cx="262.10001"
+           class="st19"
+           id="XMLID_843_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="475.29999"
+           cx="253.39999"
+           class="st19"
+           id="XMLID_844_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="467.79999"
+           cx="251.39999"
+           class="st19"
+           transform="matrix(-0.9989,-0.04745027,0.04745027,-0.9989,480.3226,947.0313)"
+           id="XMLID_845_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="461.5"
+           cx="277.5"
+           class="st19"
+           id="XMLID_846_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="469.60001"
+           cx="280.5"
+           class="st19"
+           id="XMLID_847_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="491"
+           cx="270.5"
+           class="st19"
+           transform="matrix(-0.9413,0.3376,-0.3376,-0.9413,690.8691,861.9293)"
+           id="XMLID_848_" /><ellipse
+           style="fill:#787878"
+           ry="3"
+           rx="2.4000001"
+           cy="489.10001"
+           cx="275.60001"
+           class="st19"
+           transform="matrix(-0.9425,0.3341,-0.3341,-0.9425,698.752,857.9261)"
+           id="XMLID_849_" /></g><g
+         id="Boob_hvy_piercing_7_"><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 514.1,481.6 c 0.3,0 -2.4,3 -2.1,7.3 0,3.6 2.4,8.7 7,10 6,1.9 12.4,-3.6 13.8,-8.4 1.6,-4.6 -1.1,-8.7 -0.6,-9 0.6,-0.3 4.6,4.8 4,10.3 -0.6,6 -7.3,13 -15.1,12.1 -6,-0.6 -11.8,-5.7 -12.1,-11.8 -0.3,-6.2 4.8,-10.8 5.1,-10.5 z"
+           class="st19"
+           id="XMLID_850_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 258.9,469.3 c 0,0 -1.9,3 -1.9,7 -0.3,3.6 1.1,8.7 4,10.3 4,2.1 8.4,-3 9.7,-7.8 1.1,-4.6 -0.3,-8.7 0,-9 0.3,-0.3 2.7,4.8 2.1,10.3 -0.9,6 -5.7,12.7 -10.8,11.4 -4,-0.9 -7.6,-6 -7.3,-12.4 0.6,-5.6 4.2,-9.8 4.2,-9.8 z"
+           class="st19"
+           id="XMLID_851_" /><path
+           style="fill:#787878"
+           inkscape:connector-curvature="0"
+           d="m 263.4,491.9 c 0.3,-0.3 47.3,68.1 119.7,74.3 77.3,6 138.5,-63 139.1,-62.4 0.6,0.6 -56.4,72.1 -137,66.4 C 308,564.3 263.1,492.3 263.4,491.9 Z"
+           class="st19"
+           id="XMLID_852_" /><circle
+           style="fill:#787878"
+           r="4.3000002"
+           cy="481.29999"
+           cx="513.09998"
+           class="st19"
+           id="XMLID_853_" /><circle
+           style="fill:#787878"
+           r="4.3000002"
+           cy="481.29999"
+           cx="532"
+           class="st19"
+           id="XMLID_854_" /><circle
+           style="fill:#787878"
+           r="4.3000002"
+           cy="469.89999"
+           cx="522.5"
+           class="st19"
+           id="XMLID_855_" /><circle
+           style="fill:#787878"
+           r="4.3000002"
+           cy="490.70001"
+           cx="523.70001"
+           class="st19"
+           id="XMLID_856_" /><ellipse
+           style="fill:#787878"
+           ry="3.3"
+           rx="2.7"
+           cy="468.89999"
+           cx="270.79999"
+           class="st19"
+           transform="matrix(-0.981,0.1941,-0.1941,-0.981,627.4544,876.3939)"
+           id="XMLID_857_" /><ellipse
+           style="fill:#787878"
+           ry="3.3"
+           rx="2.7"
+           cy="469.10001"
+           cx="258.79999"
+           class="st19"
+           transform="matrix(-0.971,-0.2392,0.2392,-0.971,397.8483,986.4601)"
+           id="XMLID_858_" /><ellipse
+           style="fill:#787878"
+           ry="2.4000001"
+           rx="2.7"
+           cy="461.10001"
+           cx="261.29999"
+           class="st19"
+           transform="matrix(-0.2055,-0.9787,0.9787,-0.2055,-136.2163,811.5947)"
+           id="XMLID_859_" /><ellipse
+           style="fill:#787878"
+           ry="2.4000001"
+           rx="2.7"
+           cy="477.70001"
+           cx="265.60001"
+           class="st19"
+           transform="matrix(0.08246086,0.9966,-0.9966,0.08246086,719.8191,173.6128)"
+           id="XMLID_860_" /></g><g
+         id="Boob_piercing_7_"><g
+           id="XMLID_861_"><circle
+             style="fill:#787878"
+             r="4.3000002"
+             cy="481.29999"
+             cx="513.09998"
+             class="st19"
+             id="XMLID_862_" /><circle
+             style="fill:#787878"
+             r="4.3000002"
+             cy="481.29999"
+             cx="532"
+             class="st19"
+             id="XMLID_863_" /></g><g
+           id="XMLID_864_"><ellipse
+             style="fill:#787878"
+             ry="3.3"
+             rx="2.7"
+             cy="468.89999"
+             cx="270.79999"
+             class="st19"
+             transform="matrix(-0.981,0.1941,-0.1941,-0.981,627.4544,876.3939)"
+             id="XMLID_865_" /><ellipse
+             style="fill:#787878"
+             ry="3.3"
+             rx="2.7"
+             cy="469.10001"
+             cx="258.79999"
+             class="st19"
+             transform="matrix(-0.971,-0.2392,0.2392,-0.971,397.8483,986.4601)"
+             id="XMLID_866_" /></g></g></g></g><g
+     id="Boob_Latex"><g
+       id="Boob_0_1_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 526.8,215.3 c -14.6,-0.1 -40.4,25.2 -48.5,31.9 -13.9,11.6 -17.9,27.2 -7.6,39.7 6.5,7.9 33.4,6.1 40.3,-8.7 8.5,26.1 38.4,23.5 50.4,7.6 8.7,-11.5 6.5,-31.8 -3.1,-39.1 -12.9,-9.6 -17.4,-31.3 -31.5,-31.4"
+         class="st4"
+         id="XMLID_946_" /></g><g
+       id="Boob_1_2_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 511.2,215.6 c -14.6,-0.1 -40.4,25.2 -48.5,31.9 -13.9,11.6 -17.9,27.2 -7.6,39.7 6.5,7.9 33.4,6.1 40.3,-8.7 8.5,26.1 38.4,23.5 50.4,7.6 8.7,-11.5 6.5,-31.8 -3.1,-39.1 -12.7,-9.6 -17.2,-31.4 -31.5,-31.4"
+         class="st4"
+         id="XMLID_944_" /></g><g
+       id="Boob_2_2_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 510.2,215.4 c -18,-0.1 -50.2,31.3 -60.2,39.6 -17.2,14.5 -22.3,33.8 -9.5,49.3 8,9.8 41.4,7.6 49.9,-10.8 10.6,32.4 47.6,29.1 62.6,9.5 10.8,-14.2 8,-39.5 -3.8,-48.5 -15.8,-12 -21.4,-39 -39,-39.1"
+         class="st4"
+         id="XMLID_939_" /></g><path
+       style="fill:#515351"
+       inkscape:connector-curvature="0"
+       d="M 512.6,212.2 C 490.8,212.1 452,250 439.9,260 c -20.8,17.5 -26.9,40.7 -11.5,59.4 9.7,11.8 49.9,9.2 60.2,-13.1 12.8,39.1 57.5,35 75.4,11.5 13.1,-17.1 9.7,-47.6 -4.6,-58.6 -18.8,-14.4 -25.6,-46.9 -46.8,-47"
+       class="st4"
+       id="Boob_3_1_" /><g
+       id="Boob_4_2_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 509.9,214 c -28.4,-0.2 -79.1,49.2 -94.8,62.4 -27.1,22.8 -35.1,53.1 -14.9,77.7 12.6,15.4 65.2,11.9 78.6,-17.1 16.6,51.1 75,45.8 98.5,14.9 17.1,-22.4 12.6,-62.1 -6,-76.4 -24.9,-18.8 -33.8,-61.3 -61.4,-61.5"
+         class="st4"
+         id="XMLID_920_" /></g><g
+       id="Boob_5_2_"><path
+         style="fill:#515351"
+         inkscape:connector-curvature="0"
+         d="m 509.1,214.2 c -38.2,-0.2 -106.3,66.2 -127.5,83.9 -36.5,30.7 -47.2,71.5 -20.1,104.4 16.9,20.7 87.6,16 105.7,-22.9 22.4,68.7 100.8,61.5 132.4,20.1 22.9,-30.1 -1.2,-65 -8.1,-102.7 -7.5,-41.2 -45.2,-82.6 -82.4,-82.8"
+         class="st4"
+         id="XMLID_906_" /></g><g
+       id="Boob_6_2_"><g
+         id="XMLID_919_"><path
+           style="fill:#515351"
+           inkscape:connector-curvature="0"
+           d="m 507.1,214.2 c -50.3,-0.2 -140,87.2 -168,110.5 -48.1,40.4 -62.2,94.2 -26.5,137.5 22.4,27.3 115.5,21.1 139.4,-30.2 29.5,90.5 132.7,81 174.4,26.5 30.2,-39.7 -1.6,-85.7 -10.7,-135.3 -9.9,-54.2 -59.5,-108.8 -108.6,-109"
+           class="st4"
+           id="XMLID_921_" /></g><g
+         id="XMLID_908_"><path
+           style="fill:#515351"
+           inkscape:connector-curvature="0"
+           d="m 507.1,214.2 c -50.3,-0.2 -140,87.2 -168,110.5 -48.1,40.4 -62.2,94.2 -26.5,137.5 22.4,27.3 115.5,21.1 139.4,-30.2 29.5,90.5 132.7,81 174.4,26.5 30.2,-39.7 -1.6,-85.7 -10.7,-135.3 -9.9,-54.2 -59.5,-108.8 -108.6,-109"
+           class="st4"
+           id="XMLID_909_" /></g></g><g
+       id="Boob_7_1_"><g
+         id="XMLID_924_"><path
+           style="fill:#515351"
+           inkscape:connector-curvature="0"
+           d="M 508.3,214.2 C 447,213.9 337.8,320.4 303.8,348.8 245.2,398 228.1,463.5 271.6,516.3 c 27.1,33.2 140.5,25.7 169.6,-36.8 35.9,110.2 161.6,98.6 212.4,32.2 36.8,-48.3 -2,-104.3 -13,-164.8 C 628.4,280.9 568,214.5 508.3,214.2"
+           class="st4"
+           id="XMLID_925_" /></g><g
+         id="XMLID_922_"><path
+           style="fill:#515351"
+           inkscape:connector-curvature="0"
+           d="M 508.3,214.2 C 447,213.9 337.8,320.4 303.8,348.8 245.2,398 228.1,463.5 271.6,516.3 c 27.1,33.2 140.5,25.7 169.6,-36.8 35.9,110.2 161.6,98.6 212.4,32.2 36.8,-48.3 -2,-104.3 -13,-164.8 C 628.4,280.9 568,214.5 508.3,214.2"
+           class="st4"
+           id="XMLID_923_" /></g></g></g><g
+     id="Clavicle"><path
+       style="fill:#010101"
+       inkscape:connector-curvature="0"
+       d="m 521.3,220.4 c 3,-2.7 20.4,-6.8 35.2,-9 -11.6,3.4 -30,5.4 -35.2,9 z"
+       class="st12"
+       id="XMLID_511_" /><path
+       style="fill:#010101"
+       inkscape:connector-curvature="0"
+       d="m 511.3,220.1 c -2.2,-2.8 -7.6,-5.5 -20.3,-9.3 9.8,4.4 16.3,5.3 20.3,9.3 z"
+       class="st12"
+       id="XMLID_546_" /></g><g
+     id="Penis"><g
+       id="Ball_4"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 441.1,480.5 c 3.3,8.9 7.4,10.4 10.4,11.3 6.6,2 10.1,-0.6 21,2.7 5,1.5 8.3,5.6 16.6,5.6 1.5,0 13.3,2.3 22.7,-7 5.9,-5.7 5.6,-14.1 5.4,-26.3 -0.2,-9.1 -2,-15.1 -3.3,-18.6 -2.3,-6.2 -3.6,-9.8 -7.1,-12.1 -7.7,-5 -19.3,0.5 -25.2,3.3 -6.3,3 -11.6,-1.4 -19,5.4 -10.8,10.2 -25.4,25 -21.5,35.7 z"
+         class="st12"
+         id="XMLID_868_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 441.1,472.7 c -0.3,5.7 2,12.8 7.1,16.5 5.6,4.1 9.8,0.5 21.8,3.5 9.4,2.4 9.1,5.3 16.5,6.5 1.7,0.3 15.7,2.3 24.2,-6.5 6.2,-6.3 6,-15.1 5.9,-28.3 -0.2,-9.7 -2.1,-16.3 -3.5,-19.9 -2.4,-6.6 -3.9,-10.4 -7.7,-13 -8.3,-5.4 -20.9,0.6 -27.1,3.5 -7,3.3 -10.9,7 -18.9,14.1 -11.8,10.9 -17.8,16.3 -18.3,23.6 z"
+         class="st3"
+         id="XMLID_869_" /></g><g
+       id="Ball_3_1_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 449.9,468.6 c 2.5,6.8 5.7,8 8,8.7 5.1,1.5 7.8,-0.5 16.1,2.1 3.8,1.2 6.4,4.3 12.7,4.3 1.2,0 10.2,1.7 17.4,-5.3 4.5,-4.4 4.3,-10.8 4.2,-20.2 -0.1,-7 -1.5,-11.6 -2.5,-14.3 -1.7,-4.8 -2.8,-7.5 -5.4,-9.3 -5.9,-3.8 -14.8,0.3 -19.4,2.5 -4.9,2.3 -8.9,-1 -14.6,4.2 -8.3,7.7 -19.5,19 -16.5,27.3 z"
+         class="st12"
+         id="XMLID_870_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 449.9,462.5 c -0.2,4.4 1.5,9.9 5.4,12.6 4.3,3.1 7.5,0.3 16.7,2.7 7.2,1.9 7,4.1 12.6,5 1.3,0.2 12.1,1.7 18.5,-5 4.8,-4.9 4.6,-11.6 4.5,-21.7 -0.1,-7.4 -1.6,-12.5 -2.7,-15.3 -1.9,-5.1 -3,-8 -5.9,-10 -6.4,-4.2 -16,0.5 -20.7,2.7 -5.3,2.5 -8.3,5.3 -14.5,10.8 -8.9,8.5 -13.5,12.7 -13.9,18.2 z"
+         class="st3"
+         id="XMLID_871_" /></g><g
+       id="Ball_2_2_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 456.7,459.4 c 2,5.2 4.4,6.1 6.1,6.7 3.9,1.2 6,-0.4 12.4,1.6 2.9,0.9 4.9,3.3 9.8,3.3 0.9,0 7.8,1.3 13.3,-4.1 3.5,-3.4 3.3,-8.3 3.2,-15.5 -0.1,-5.3 -1.2,-8.9 -2,-10.9 -1.3,-3.6 -2.1,-5.8 -4.2,-7.1 -4.5,-2.9 -11.4,0.3 -14.8,2 -3.7,1.8 -6.8,-0.8 -11.2,3.2 -6.3,5.8 -14.9,14.5 -12.6,20.8 z"
+         class="st12"
+         id="XMLID_872_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 456.7,454.8 c -0.2,3.4 1.2,7.6 4.2,9.7 3.3,2.4 5.8,0.3 12.8,2 5.5,1.4 5.3,3.1 9.7,3.8 1,0.2 9.2,1.3 14.2,-3.8 3.6,-3.7 3.6,-8.9 3.5,-16.6 -0.1,-5.7 -1.2,-9.6 -2,-11.7 -1.4,-3.9 -2.3,-6.1 -4.5,-7.6 -4.9,-3.2 -12.3,0.4 -15.9,2 -4.1,2 -6.4,4.1 -11.1,8.3 -7.1,6.4 -10.7,9.6 -10.9,13.9 z"
+         class="st3"
+         id="XMLID_873_" /></g><g
+       id="Ball_1"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 463.7,452.6 c 1.2,3.4 2.8,3.9 3.9,4.3 2.5,0.7 3.8,-0.3 7.9,1.1 1.9,0.5 3.1,2.1 6.3,2.1 0.6,0 5,0.8 8.5,-2.7 2.2,-2.2 2.1,-5.3 2,-9.9 -0.1,-3.4 -0.8,-5.7 -1.2,-7 -0.9,-2.3 -1.3,-3.6 -2.7,-4.5 -2.9,-1.9 -7.3,0.2 -9.5,1.2 -2.4,1.2 -4.7,-0.7 -7.5,1.8 -4,3.8 -9.1,9.6 -7.7,13.6 z"
+         class="st12"
+         id="XMLID_874_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 463.7,449.5 c -0.2,2.1 0.7,4.7 2.6,6.1 2.1,1.5 3.6,0.2 8.1,1.3 3.5,0.9 3.4,2 6.1,2.4 0.6,0.1 5.8,0.8 8.9,-2.4 2.3,-2.4 2.2,-5.6 2.1,-10.5 -0.1,-3.6 -0.8,-6 -1.3,-7.4 -0.9,-2.5 -1.4,-3.9 -2.8,-4.8 -3.1,-2 -7.7,0.2 -10,1.3 -2.6,1.2 -4,2.6 -6.9,5.2 -4.4,4 -6.6,6.1 -6.8,8.8 z"
+         class="st3"
+         id="XMLID_875_" /></g><g
+       id="Ball_0"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 472.8,446.8 c 0.7,2 1.6,2.3 2.3,2.5 1.4,0.4 2.2,-0.1 4.6,0.6 1.1,0.4 1.8,1.2 3.6,1.2 0.4,0 2.9,0.4 5,-1.5 1.3,-1.2 1.2,-3 1.2,-5.7 0,-2 -0.4,-3.3 -0.7,-4.1 -0.5,-1.3 -0.8,-2.1 -1.5,-2.6 -1.7,-1.1 -4.2,0.1 -5.5,0.7 -1.4,0.7 -3.1,-0.2 -4.7,1.3 -2.6,2.1 -5.2,5.2 -4.3,7.6 z"
+         class="st12"
+         id="XMLID_876_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 472.9,444.7 c -0.1,1.2 0.4,2.7 1.5,3.5 1.2,0.9 2,0.1 4.5,0.7 2,0.5 1.9,1.2 3.5,1.3 0.4,0.1 3.3,0.4 5.1,-1.3 1.3,-1.3 1.2,-3.2 1.2,-5.9 0,-2 -0.4,-3.4 -0.7,-4.2 -0.5,-1.4 -0.8,-2.2 -1.6,-2.7 -1.7,-1.2 -4.4,0.1 -5.6,0.7 -1.4,0.7 -2.3,1.4 -3.9,2.9 -2.7,2.3 -3.9,3.5 -4,5 z"
+         class="st3"
+         id="XMLID_877_" /></g><g
+       id="Penis_6"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 377.7,353.4 c 1.4,0.9 1.4,3.5 1.4,3.9 0,7.5 14.3,33.3 27.4,46 39.3,38.2 78.2,48 74.4,30.6 -0.5,-2.6 3.3,-4.1 3.8,-5.6 5.1,-16.4 -19.5,-41.2 -46.7,-63.9 -22.8,-19 -23.3,-18.1 -28.6,-21.5 -0.8,-0.5 -2,-1.3 -2.4,-3.8 -0.4,-2 1.3,-4.2 1.4,-5.8 0.9,-5.9 -7.2,-10.4 -14.7,-14.2 -5.8,-2.9 -17.3,-6.4 -23.6,-1.4 -13.5,10.8 -2.9,39.9 3,36.6 1.3,-0.6 3.1,-1.9 4.6,-0.9 z"
+         class="st12"
+         id="XMLID_878_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 377.4,353.4 c 1.6,1 1.6,3.7 1.6,4.1 0.1,5.1 13,31.1 38.3,53.1 19,16.5 55.9,40.1 68.5,29.6 2.2,-2 3,-4.5 3.5,-6.2 5.6,-18.5 -21.9,-42.4 -30.2,-49.6 -26.6,-23.1 -42.1,-36.5 -48,-40.4 -0.8,-0.5 -3.5,-2.2 -4.1,-5.1 -0.4,-2.2 0.8,-3.4 1,-5.1 0.7,-5.1 -8,-11 -14.3,-13.8 -4.9,-2.1 -15.7,-6.8 -23,-1.6 -11.4,8.3 -4.1,33.7 1.6,34.8 1.4,0.5 3.4,-1 5.1,0.2 z"
+         class="st3"
+         id="XMLID_879_" /></g><g
+       id="Penis_5_1_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 396.6,366.1 c 1.2,0.8 1.2,2.9 1.2,3.2 0,6.2 11.8,27.5 22.6,38 32.5,31.5 64.6,39.6 61.4,25.2 -0.4,-2.2 2.7,-3.4 3.1,-4.7 4.2,-13.5 -16.1,-34 -38.6,-52.7 -18.8,-15.7 -19.3,-14.9 -23.6,-17.8 -0.6,-0.4 -1.6,-1.1 -1.9,-3.1 -0.3,-1.6 1.1,-3.5 1.2,-4.8 0.8,-4.9 -6,-8.6 -12.1,-11.7 -4.8,-2.4 -14.3,-5.3 -19.5,-1.2 -11.2,8.9 -2.4,32.9 2.5,30.2 1,-0.3 2.6,-1.4 3.7,-0.6 z"
+         class="st12"
+         id="XMLID_880_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 396.4,366.1 c 1.3,0.9 1.3,3 1.3,3.4 0.1,4.2 10.7,25.7 31.6,43.9 15.7,13.6 46.1,33.1 56.5,24.5 1.8,-1.6 2.5,-3.7 2.9,-5.1 4.7,-15.3 -18.1,-35 -24.9,-40.9 -22,-19.1 -34.8,-30.1 -39.6,-33.4 -0.6,-0.4 -2.9,-1.8 -3.4,-4.2 -0.3,-1.8 0.6,-2.8 0.9,-4.2 0.5,-4.2 -6.6,-9.1 -11.8,-11.4 -4,-1.7 -13,-5.6 -19,-1.3 -9.4,6.8 -3.4,27.8 1.3,28.7 1.2,0.3 2.8,-0.9 4.2,0 z"
+         class="st3"
+         id="XMLID_881_" /></g><g
+       id="Penis_4_1_"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 413.3,379.4 c 1,0.6 1,2.4 1,2.7 0,5.1 9.7,22.6 18.6,31.2 26.7,25.9 53,32.5 50.4,20.7 -0.4,-1.8 2.2,-2.8 2.6,-3.8 3.5,-11.1 -13.2,-27.9 -31.6,-43.3 -15.5,-12.9 -15.8,-12.3 -19.4,-14.6 -0.5,-0.4 -1.3,-0.9 -1.6,-2.6 -0.3,-1.3 0.9,-2.8 1,-3.9 0.6,-4 -4.9,-7 -10,-9.6 -3.9,-2 -11.7,-4.4 -16,-1 -9.2,7.3 -2,27 2,24.8 0.8,-0.4 2,-1.3 3,-0.6 z"
+         class="st12"
+         id="XMLID_882_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 413.1,379.4 c 1.1,0.7 1.1,2.5 1.1,2.8 0.1,3.5 8.8,21.1 25.9,36 12.9,11.2 37.9,27.2 46.4,20.1 1.5,-1.3 2,-3 2.4,-4.2 3.8,-12.5 -14.8,-28.7 -20.4,-33.6 -18,-15.6 -28.5,-24.7 -32.5,-27.4 -0.5,-0.4 -2.4,-1.5 -2.8,-3.5 -0.3,-1.5 0.5,-2.3 0.7,-3.5 0.4,-3.5 -5.4,-7.5 -9.7,-9.3 -3.3,-1.4 -10.7,-4.6 -15.6,-1.1 -7.7,5.6 -2.8,22.8 1.1,23.5 0.9,0.4 2.3,-0.6 3.4,0.2 z"
+         class="st3"
+         id="XMLID_883_" /></g><g
+       id="Penis_3"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 430.3,392.5 c 0.7,0.5 0.8,1.9 0.8,2.1 0,4 7.6,17.9 14.7,24.6 21.1,20.4 41.9,25.7 39.8,16.4 -0.3,-1.4 1.8,-2.1 2,-3 2.7,-8.8 -10.5,-22 -25,-34.2 -12.3,-10.2 -12.5,-9.7 -15.4,-11.6 -0.4,-0.3 -1,-0.7 -1.2,-2 -0.2,-1.1 0.7,-2.2 0.8,-3.1 0.4,-3.2 -3.9,-5.5 -7.9,-7.6 -3.1,-1.6 -9.2,-3.5 -12.6,-0.8 -7.2,5.8 -1.6,21.3 1.6,19.6 0.6,-0.3 1.6,-1 2.4,-0.4 z"
+         class="st12"
+         id="XMLID_884_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 430.2,392.5 c 0.8,0.6 0.8,2 0.8,2.1 0.1,2.7 6.8,16.4 20.3,28.1 10.1,8.8 29.6,21.2 36.2,15.6 1.2,-1 1.6,-2.3 1.9,-3.2 3,-9.8 -11.6,-22.4 -15.9,-26.2 -14,-12.2 -22.2,-19.3 -25.4,-21.3 -0.4,-0.3 -1.9,-1.2 -2.1,-2.7 -0.2,-1.2 0.4,-1.8 0.5,-2.7 0.4,-2.8 -4.3,-5.9 -7.6,-7.3 -2.6,-1.1 -8.3,-3.6 -12.2,-0.8 -6,4.4 -2.1,17.9 0.8,18.4 0.8,0.1 1.9,-0.7 2.7,0 z"
+         class="st3"
+         id="XMLID_885_" /></g><g
+       id="Penis_2"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 446.2,405.6 c 0.5,0.4 0.5,1.3 0.5,1.5 0,2.8 5.5,12.7 10.5,17.6 15,14.6 29.9,18.3 28.4,11.7 -0.2,-1 1.2,-1.5 1.4,-2.1 2,-6.3 -7.5,-15.7 -17.9,-24.4 -8.7,-7.3 -9,-6.9 -10.9,-8.3 -0.3,-0.2 -0.7,-0.5 -0.9,-1.5 -0.2,-0.7 0.4,-1.6 0.5,-2.2 0.4,-2.3 -2.8,-4 -5.6,-5.4 -2.2,-1.2 -6.7,-2.5 -9.1,-0.5 -5.2,4.1 -1.2,15.3 1.2,14 0.6,-0.2 1.3,-0.7 1.9,-0.4 z"
+         class="st12"
+         id="XMLID_886_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 446.5,406.1 c 0.6,0.4 0.5,1.3 0.5,1.5 0,1.9 4.9,11.6 14.3,19.9 7.1,6.2 21,15 25.6,11.1 0.9,-0.7 1.2,-1.7 1.3,-2.3 2.1,-6.9 -8.2,-15.9 -11.3,-18.6 -10,-8.6 -15.7,-13.7 -17.9,-15.1 -0.3,-0.2 -1.3,-0.8 -1.5,-2 -0.2,-0.8 0.3,-1.2 0.4,-2 0.3,-2 -3,-4.2 -5.3,-5.2 -1.8,-0.8 -5.9,-2.6 -8.6,-0.5 -4.3,3.1 -1.5,12.6 0.5,13 0.5,0.3 1.3,-0.2 2,0.2 z"
+         class="st3"
+         id="XMLID_887_" /></g><g
+       id="Penis_1"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 462.5,418.4 c 0.4,0.3 0.4,0.8 0.4,1 0,1.8 2.4,7.6 6.3,11.2 9.7,8.8 18.8,11.3 17.9,7.1 -0.2,-0.6 0.8,-1 0.9,-1.3 0.8,-3 -4.1,-10 -10.7,-15.3 -5.5,-4.4 -6,-4.3 -7.3,-5.1 -0.2,-0.1 -0.4,-0.3 -0.5,-0.9 -0.1,-0.4 0.3,-1 0.4,-1.3 0.2,-1.4 -1.8,-2.5 -3.6,-3.4 -1.4,-0.7 -4.2,-1.5 -5.6,-0.4 -3.2,2.6 -1.1,9.7 0.7,8.7 0.3,-0.2 0.7,-0.6 1.1,-0.3 z"
+         class="st12"
+         id="XMLID_888_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 462.5,418.6 c 0.4,0.3 0.4,0.9 0.4,1 0,1.2 3,7.3 9,12.4 4.4,3.9 13.1,9.3 16,6.9 0.5,-0.4 0.7,-1.1 0.8,-1.4 1.3,-4.3 -5.1,-9.9 -7,-11.6 -6.2,-5.4 -9.9,-8.5 -11.2,-9.4 -0.2,-0.1 -0.8,-0.5 -1,-1.2 -0.1,-0.5 0.2,-0.8 0.3,-1.2 0.2,-1.2 -1.9,-2.6 -3.4,-3.2 -1.2,-0.4 -3.6,-1.6 -5.3,-0.4 -2.7,2 -1,7.9 0.4,8.1 0.2,0.1 0.7,-0.3 1,0 z"
+         class="st3"
+         id="XMLID_889_" /></g><g
+       id="Penis_0"><path
+         style="fill:#010101"
+         inkscape:connector-curvature="0"
+         d="m 472.9,426.4 c 0.2,0.1 0.2,0.4 0.2,0.5 0,1 1.5,4.4 3.3,6 4.8,4.2 10.2,6.1 9.7,3.9 -0.1,-0.4 0.4,-0.5 0.4,-0.7 0.6,-2.1 -2.1,-5.3 -5.6,-8.3 -2.9,-2.5 -3.4,-2.2 -4,-2.7 -0.1,-0.1 -0.3,-0.2 -0.3,-0.5 -0.1,-0.3 0.2,-0.5 0.2,-0.7 0.1,-0.8 -0.9,-1.3 -1.9,-1.8 -0.7,-0.4 -2.2,-0.8 -3,-0.2 -1.7,1.3 -0.7,5.3 0.4,4.7 0.2,-0.1 0.4,-0.3 0.6,-0.2 z"
+         class="st12"
+         id="XMLID_890_" /><path
+         style="fill:#f6e0e8"
+         inkscape:connector-curvature="0"
+         d="m 473,426.5 c 0.2,0.2 0.2,0.4 0.2,0.5 0,0.6 1.6,3.9 4.8,6.6 2.4,2 6.9,5 8.5,3.6 0.3,-0.3 0.4,-0.5 0.4,-0.8 0.7,-2.3 -2.8,-5.2 -3.7,-6.1 -3.3,-2.8 -5.2,-4.5 -6,-5 -0.1,-0.1 -0.4,-0.3 -0.5,-0.6 -0.1,-0.3 0.1,-0.4 0.1,-0.6 0.1,-0.6 -1,-1.3 -1.8,-1.7 -0.6,-0.3 -2,-0.8 -2.8,-0.2 -1.4,1.1 -0.5,4.2 0.2,4.4 0.2,0 0.4,-0.2 0.6,-0.1 z"
+         class="st3"
+         id="XMLID_891_" /></g></g><g
+     id="Head"><path
+       style="fill:#010101"
+       inkscape:connector-curvature="0"
+       d="m 543.2,161.2 c 6,-14.4 8.4,-24.7 10.6,-40.1 4.5,-31.3 -16.1,-52.4 -42.5,-43.9 -38.8,10 -27.5,43.7 -26.2,53.7 -6.7,16.4 6,48.7 20.8,53.5 14.6,-1.9 28.9,-5.9 37.3,-23.2 z"
+       class="st12"
+       id="Head_Shadow" /><path
+       style="fill:#f6e0e8"
+       inkscape:connector-curvature="0"
+       d="m 543.4,161.2 c 6,-14.4 8.4,-24.7 10.6,-40.1 4.5,-31.3 -16.1,-52.4 -42.5,-43.9 -34.2,11 -29.4,33.1 -26.2,53.7 -6.1,16.8 6.9,48.7 20.7,53.1 10.1,-1.7 28.3,-4.2 37.4,-22.8 z"
+       class="st3"
+       id="Head_1_" /></g><path
+     style="fill:#515351"
+     inkscape:connector-curvature="0"
+     d="m 543.4,161.2 c 6,-14.4 8.4,-24.7 10.6,-40.1 4.5,-31.3 -16.1,-52.4 -42.5,-43.9 -34.2,11 -29.4,33.1 -26.2,53.7 -6.1,16.8 6.9,48.7 20.7,53.1 10.1,-1.7 28.3,-4.2 37.4,-22.8 z"
+     class="st4"
+     id="Head_Latex" /><g
+     id="Gag"><path
+       style="opacity:0.23999999;fill:#bf2126;enable-background:new"
+       inkscape:connector-curvature="0"
+       d="m 498,167.3 c 2.6,3.9 7.6,0.9 14,5.1 7.8,5 8.1,14 13.2,14 1.7,0 3.5,-1 4.3,-2.4 4.5,-7.7 -18.1,-34.7 -27.5,-31.1 -4.4,1.7 -6.7,10.2 -4,14.4 z"
+       class="st22"
+       id="XMLID_867_" /><polygon
+       style="fill:#070505"
+       points="541.3,165 489,163.9 486.4,157.1 545.1,157.1 "
+       class="st23"
+       id="XMLID_892_" /><ellipse
+       style="fill:#bf2126"
+       ry="8.6999998"
+       rx="7.5999999"
+       cy="161.10001"
+       cx="502.79999"
+       class="st24"
+       id="XMLID_893_" /></g><path
+     style="fill:#010101"
+     inkscape:connector-curvature="0"
+     d="m 485.9,131 c -0.2,1 -0.3,3 0.9,4.5 1.2,1.4 3.1,1.6 7.1,1.9 4.4,0.3 6.7,0.4 8.1,-0.8 1.8,-1.5 2,-4.1 2,-5.5 0.9,0 1.7,0 2.6,-0.1 1,0 1.9,0 2.8,0 -0.3,1.5 -0.6,4.5 1.2,6.6 0.8,0.9 2.2,2 11.3,1.7 10.9,-0.3 12.4,-1.8 12.9,-2.7 1.1,-1.8 0.7,-4 0.3,-5.5 5.7,0 11.4,-0.1 17.1,-0.1 v 2.1 L 536.6,133 c 0.1,1.2 0.1,2.9 -0.9,4.4 -0.6,1 -2.3,2.8 -13.6,2.9 -9.9,0.2 -11.5,-1.2 -12.3,-2.2 -1.4,-1.7 -1.5,-3.9 -1.3,-5.4 -0.9,0 -2.7,0 -3.6,0 -0.1,1.1 -0.4,3 -1.8,4.4 -1.7,1.6 -4.2,1.5 -9.1,1.2 -4.3,-0.3 -6.5,-0.4 -7.7,-2.1 -0.9,-1.2 -0.9,-2.7 -0.8,-3.6 0.1,-0.4 0.2,-0.9 0.4,-1.6 z"
+     class="st12"
+     id="Glasses" /><g
+     id="Hair_Fore_1_"><path
+       style="fill:#f4f1a3"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st5"
+       id="Hair_Blonde" /><path
+       style="fill:#8e4f21"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st6"
+       id="Hair_Brown" /><path
+       style="fill:#bc2027"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st7"
+       id="Hair_Red" /><path
+       style="fill:#60bb46"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st8"
+       id="Hair_Green" /><path
+       style="fill:#4686c6"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st9"
+       id="Hair_Blue" /><path
+       style="fill:#d28dbd"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st10"
+       id="Hair_Pink" /><path
+       style="fill:#3f403f"
+       inkscape:connector-curvature="0"
+       d="m 484.6,101.6 c 5.1,7.6 15,14 52.5,7.3 18.7,5.2 2.6,37.9 1.1,61 -1.3,19.3 -7.8,36.4 -18.9,51.5 17.1,-12.2 36.2,-10.4 50.8,-41.2 41.1,-23.4 -1.2,-125.9 -49.9,-115.4 -33,7.1 -33.1,19.4 -35.6,36.8 z"
+       class="st11"
+       id="Hair_Black" /></g></svg>
\ No newline at end of file