<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://horizonffxi.wiki/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hugin8484</id>
	<title>HorizonXI Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://horizonffxi.wiki/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hugin8484"/>
	<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/Special:Contributions/Hugin8484"/>
	<updated>2026-04-25T11:35:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118977</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118977"/>
		<updated>2026-04-13T18:52:22Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: More tweaks to login button&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;mw.loader.getScript( &#039;https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:VanaTime.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:ASBSearch.js&#039; );&lt;br /&gt;
//mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:FFXIWeatherForecast.js&#039; );&lt;br /&gt;
&lt;br /&gt;
var tooltips = {&lt;br /&gt;
    debug: false,&lt;br /&gt;
    &lt;br /&gt;
    api: false,&lt;br /&gt;
    types: [],&lt;br /&gt;
    classes: [&#039;basic-tooltip&#039;, &#039;advanced-tooltip&#039;],&lt;br /&gt;
    advancedCounter: 1,&lt;br /&gt;
    &lt;br /&gt;
    events: [],&lt;br /&gt;
    timeouts: [],&lt;br /&gt;
    &lt;br /&gt;
    offsetX: 20,&lt;br /&gt;
    offsetY: 20,&lt;br /&gt;
    waitForImages: true,&lt;br /&gt;
    noCSS: false,&lt;br /&gt;
    &lt;br /&gt;
    flip: false,&lt;br /&gt;
    &lt;br /&gt;
    init: function() {&lt;br /&gt;
        if($(document.body).hasClass(&#039;mw-special-InfoboxBuilder&#039;)) return;&lt;br /&gt;
        if(location.search.search(/ttdebug=(1|[Tt]rue)/) != -1 || (typeof tooltips_debug != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips_debug)) tooltips.debug = true;&lt;br /&gt;
&lt;br /&gt;
        url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
&lt;br /&gt;
        if(typeof url == &#039;undefined&#039; || !url) {&lt;br /&gt;
            console.log(&#039;Tooltips: script couldn\&#039;t find required  link[rel=&amp;quot;canonical&amp;quot;]  tag&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        tooltips.api = url.host+&#039;/api.php?format=json&amp;amp;action=parse&amp;amp;disablelimitreport=true&amp;amp;prop=text&amp;amp;title=&#039;+url.pathname;&lt;br /&gt;
        if(mw.util.getParamValue(&#039;uselang&#039;)) tooltips.api += &#039;&amp;amp;uselang=&#039;+mw.util.getParamValue(&#039;uselang&#039;);&lt;br /&gt;
		// Cache tooltip contents on the CDN for 10 minutes for anonymous users&lt;br /&gt;
		tooltips.api += &#039;&amp;amp;maxage=600&amp;amp;smaxage=600&#039;&lt;br /&gt;
        tooltips.api += &#039;&amp;amp;text=&#039;;&lt;br /&gt;
        &lt;br /&gt;
        tooltips.types[&#039;basic-tooltip&#039;] = {};&lt;br /&gt;
        tooltips.types[&#039;advanced-tooltip&#039;] = {};&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.config()) {&lt;br /&gt;
            console.log(&#039;Tooltips: missing config&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        var content = $(&#039;#WikiaMainContent&#039;);&lt;br /&gt;
        if(!content.length) content = $(&#039;#mw-content-text&#039;);&lt;br /&gt;
                &lt;br /&gt;
        if($(&#039;#tooltip-wrapper&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-wrapper&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).appendTo(document.body);&lt;br /&gt;
        if($(&#039;#tooltip-storage&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-storage&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).append(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-basic-tooltip&amp;quot; id=&amp;quot;tooltip-basic-tooltip&amp;quot;&amp;gt;Lorem ipsum dolor sit amet&amp;lt;/div&amp;gt;&#039;).appendTo(content);&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-wrapper&#039;)&lt;br /&gt;
            .css({&#039;margin&#039;:&#039;0px&#039;,&#039;position&#039;:&#039;fixed&#039;,&#039;height&#039;:&#039;auto&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;z-index&#039;: 6000000,&#039;font-size&#039;:&#039;14px&#039;})&lt;br /&gt;
            .hide();&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-storage&#039;)&lt;br /&gt;
            .css({&#039;height&#039;:&#039;0px&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;visibility&#039;:&#039;hidden&#039;,&#039;overflow&#039;:&#039;hidden&#039;,&#039;position&#039;:&#039;static&#039;,&#039;font-size&#039;:&#039;14px&#039;});&lt;br /&gt;
&lt;br /&gt;
        $(&#039;#tooltip-basic-tooltip&#039;).data(&#039;type&#039;, &#039;basic-tooltip&#039;);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.applyTooltips(document);&lt;br /&gt;
        &lt;br /&gt;
        mw.hook(&#039;wikipage.content&#039;).add(function(elem) {&lt;br /&gt;
            tooltips.applyTooltips($(elem));&lt;br /&gt;
        });&lt;br /&gt;
        &lt;br /&gt;
        if(typeof tooltips.events == &#039;string&#039;) tooltips.events = [tooltips.events];&lt;br /&gt;
        for(var x=0; x&amp;lt;tooltips.events.length; x++) { $(window).on(tooltips.events[x], function(ev, elem) { tooltips.applyTooltips(elem || this) }) }&lt;br /&gt;
        &lt;br /&gt;
        if(tooltips.debug) {&lt;br /&gt;
            $(&#039;#tooltip-wrapper&#039;).css({&#039;background-color&#039;:&#039;rgba(255,0,0,0.2)&#039;});&lt;br /&gt;
            $(&#039;#tooltip-storage&#039;).css({&#039;background-color&#039;:&#039;rgba(0,255,0,0.2)&#039;,&#039;height&#039;:&#039;500px&#039;,&#039;overflow-y&#039;:&#039;scroll&#039;,&#039;visibility&#039;:&#039;visible&#039;});&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    config: function() {&lt;br /&gt;
        if(typeof tooltips_list != &#039;undefined&#039;) {&lt;br /&gt;
            $(tooltips_list).each(function(i, v) { tooltips.addType(v) });&lt;br /&gt;
        }&lt;br /&gt;
        if(typeof tooltips_config == &#039;object&#039;) {&lt;br /&gt;
            tooltips.offsetX = tooltips_config.offsetX || tooltips.offsetX;&lt;br /&gt;
            tooltips.offsetY = tooltips_config.offsetY || tooltips.offsetY;&lt;br /&gt;
            tooltips.waitForImages = (tooltips_config.waitForImages || tooltips.waitForImages) &amp;amp;&amp;amp; true;&lt;br /&gt;
            tooltips.noCSS = tooltips_config.noCSS || tooltips.noCSS;&lt;br /&gt;
            tooltips.events = tooltips_config.events || tooltips.events;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        return true;&lt;br /&gt;
    },&lt;br /&gt;
    applyTooltips: function(elem) {&lt;br /&gt;
        $(elem).find(&#039;.&#039;+tooltips.classes.join(&#039;, .&#039;)).each(function() {&lt;br /&gt;
            $this = $(this);&lt;br /&gt;
            if($this.hasClass(&#039;tooltips-init-complete&#039;)) return;&lt;br /&gt;
            &lt;br /&gt;
            $this.find(&#039;*&#039;).removeAttr(&#039;title&#039;);&lt;br /&gt;
            $this.mouseover(tooltips.handlers.mouseOver);&lt;br /&gt;
            $this.mouseout(tooltips.handlers.mouseOut);&lt;br /&gt;
            $this.mousemove(tooltips.handlers.mouseMove);&lt;br /&gt;
            &lt;br /&gt;
            $this.data(&#039;tooltip-contents&#039;, $(this).attr(&#039;title&#039;));&lt;br /&gt;
            $this.removeAttr(&#039;title&#039;);&lt;br /&gt;
            &lt;br /&gt;
            tooltips.advancedTooltip($this);&lt;br /&gt;
            &lt;br /&gt;
            $(this).addClass(&#039;tooltips-init-complete&#039;);&lt;br /&gt;
        });&lt;br /&gt;
    },&lt;br /&gt;
    advancedTooltip: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(!elem.hasClass(&#039;advanced-tooltip&#039;)) return;&lt;br /&gt;
        var tips = elem.find(&#039;.tooltip-contents&#039;);&lt;br /&gt;
        if(!tips.length) return;&lt;br /&gt;
        var tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-advanced-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-advanced-tooltip-&#039;+tooltips.advancedCounter).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, &#039;advanced-tooltip&#039;).append($(tips[0]).contents()).each(tooltips.calcSize);&lt;br /&gt;
        tips.remove();&lt;br /&gt;
        elem.data(&#039;tooltip-id-advanced-tooltip&#039;, tooltips.advancedCounter);&lt;br /&gt;
        tooltips.advancedCounter++;&lt;br /&gt;
    },&lt;br /&gt;
    addType: function(tt) {&lt;br /&gt;
        if(typeof tooltips.types[tt.classname] == &#039;undefined&#039;) {&lt;br /&gt;
            var obj = {};&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.parse == &#039;string&#039; || typeof tt.parse == &#039;function&#039;) var parse = tt.parse; else var parse = false;&lt;br /&gt;
            if(typeof tt.text == &#039;string&#039; || typeof tt.text == &#039;function&#039;) var text = tt.text; else var text = false;&lt;br /&gt;
            &lt;br /&gt;
            if(parse) {&lt;br /&gt;
                obj.text = parse;&lt;br /&gt;
                obj.parse = true;&lt;br /&gt;
            } else if(text) {&lt;br /&gt;
                obj.text = text;&lt;br /&gt;
                obj.parse = false;&lt;br /&gt;
            } else return;&lt;br /&gt;
            &lt;br /&gt;
            if(typeof obj.text == &#039;string&#039;) obj.parameters = tooltips.getParameters(obj.text); else obj.parameters = [];&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) obj.delay = parseInt(tt.delay); else obj.delay = false;&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) obj.onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) obj.onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) obj.onHide = tt.onHide;&lt;br /&gt;
            &lt;br /&gt;
            tooltips.types[tt.classname] = obj;&lt;br /&gt;
            if(tooltips.classes.indexOf(tt.classname) == -1) tooltips.classes.push(tt.classname);&lt;br /&gt;
        } else {&lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) tooltips.types[tt.classname].delay = parseInt(tt.delay);&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) tooltips.types[tt.classname].onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) tooltips.types[tt.classname].onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) tooltips.types[tt.classname].onHide = tt.onHide;&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    getParameters: function(text) {&lt;br /&gt;
        var list = [];&lt;br /&gt;
        var matches = text.match(/&amp;lt;#\s*[a-z0-9_\-]+?\s*#&amp;gt;/gi);&lt;br /&gt;
        if(matches) {&lt;br /&gt;
            for(var x=0; x&amp;lt;matches.length; x++) {&lt;br /&gt;
                list.push(/&amp;lt;#\s*([a-z0-9_\-]+?)\s*#&amp;gt;/i.exec(matches[x])[1]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return list;&lt;br /&gt;
    },&lt;br /&gt;
    getAPI: function(text) {&lt;br /&gt;
        return tooltips.api+encodeURIComponent(text);&lt;br /&gt;
    },&lt;br /&gt;
    getText: function(type, elem) {&lt;br /&gt;
        if(typeof tooltips.types[type].text == &#039;function&#039;) {&lt;br /&gt;
            var text = tooltips.types[type].text($(elem)[0]);&lt;br /&gt;
        } else {&lt;br /&gt;
            var text = tooltips.types[type].text;&lt;br /&gt;
            for(var x=0; x&amp;lt;tooltips.types[type].parameters.length; x++) {&lt;br /&gt;
                var param = tooltips.types[type].parameters[x];&lt;br /&gt;
                var value = $(elem).data(param);&lt;br /&gt;
                if(typeof value == &#039;undefined&#039;) value = &#039;&#039;;&lt;br /&gt;
                var rx = new RegExp(&#039;&amp;lt;#\\s*&#039;+param.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, &amp;quot;\\$&amp;amp;&amp;quot;)+&#039;\\s*#&amp;gt;&#039;, &#039;g&#039;);&lt;br /&gt;
                text = text.replace(rx, value);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return text;&lt;br /&gt;
    },&lt;br /&gt;
    getTooltip: function(type, elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(elem.data(&#039;tooltip-id-&#039;+type)) return $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        &lt;br /&gt;
        var text = tooltips.getText(type, elem);&lt;br /&gt;
        var id = tooltips.hash(text);&lt;br /&gt;
        elem.data(&#039;tooltip-id-&#039;+type, id);&lt;br /&gt;
        &lt;br /&gt;
        var tip = $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        if(tip.length) return tip;&lt;br /&gt;
        &lt;br /&gt;
        tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-&#039;+type+&#039;-&#039;+id).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, type).addClass(&#039;tt-&#039;+type);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
        tooltips.sameWidth();&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.types[type].parse) {&lt;br /&gt;
            tip.html(text).each(tooltips.calcSize);&lt;br /&gt;
            tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
        } else {&lt;br /&gt;
            tip.addClass(&#039;tooltip-loading&#039;);&lt;br /&gt;
            var api = tooltips.getAPI(text);&lt;br /&gt;
            if(tooltips.debug) tip.html(&#039;&amp;lt;pre style=&amp;quot;padding:2px 3px;font-size:11px;&amp;quot;&amp;gt;&#039;+api+&#039;&amp;lt;/pre&amp;gt;&#039;);&lt;br /&gt;
            tip.attr(&#039;title&#039;, api);&lt;br /&gt;
            $.ajax({&lt;br /&gt;
                url: api,&lt;br /&gt;
                dataType: &#039;json&#039;,&lt;br /&gt;
                context: tip,&lt;br /&gt;
                success: function(data, textStatus, jqXHR) {&lt;br /&gt;
                    $(this).html(data[&#039;parse&#039;][&#039;text&#039;][&#039;*&#039;]).each(tooltips.calcSize);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                    var images = $(this).find(&#039;img&#039;);&lt;br /&gt;
                    images.fadeTo(0, 0).one(&#039;load&#039;, function() {&lt;br /&gt;
                        if(tooltips.waitForImages) {&lt;br /&gt;
                            $(this).fadeTo(0,1);&lt;br /&gt;
                            $(this).addClass(&#039;image-loaded&#039;);&lt;br /&gt;
                            tip = $(this).closest(&#039;.main-tooltip&#039;);&lt;br /&gt;
                            if(tip.find(&#039;img&#039;).length == tip.find(&#039;img.image-loaded&#039;).length) {&lt;br /&gt;
                                tip.removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                                tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                                tooltips.sameWidth();&lt;br /&gt;
                            }&lt;br /&gt;
                        } else $(this).fadeTo(100,1);&lt;br /&gt;
                    });&lt;br /&gt;
                    if(tooltips.waitForImages) {&lt;br /&gt;
                        if(images.length === 0) {&lt;br /&gt;
                            $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                        }&lt;br /&gt;
                    } else {&lt;br /&gt;
                        $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                    if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onParsed == &#039;function&#039;) {&lt;br /&gt;
                        tooltips.types[type].onParsed.call(this);&lt;br /&gt;
                        tip.each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    if($(this).find(&#039;a.new&#039;).length &amp;gt; 0) $(this).addClass(&#039;has-redlinks&#039;);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                }&lt;br /&gt;
            });&lt;br /&gt;
        }&lt;br /&gt;
        return tip;&lt;br /&gt;
    },&lt;br /&gt;
    getBasicTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-basic-tooltip&amp;quot;).html(mw.html.escape($(elem).data(&#039;tooltip-contents&#039;)).replace(/\\n/g,&#039;&amp;lt;br /&amp;gt;&#039;)).each(tooltips.calcSize);&lt;br /&gt;
    },&lt;br /&gt;
    getAdvancedTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-advanced-tooltip-&amp;quot;+$(elem).data(&#039;tooltip-id-advanced-tooltip&#039;));&lt;br /&gt;
    },&lt;br /&gt;
    getTooltips: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        var classes = elem.attr(&#039;class&#039;).split(&#039; &#039;);&lt;br /&gt;
        var tips = [];&lt;br /&gt;
        for(var i=0;i&amp;lt;classes.length;i++) {&lt;br /&gt;
            var tip = false;&lt;br /&gt;
            if(classes[i] == &#039;advanced-tooltip&#039;) tip = tooltips.getAdvancedTooltip(elem);&lt;br /&gt;
            else if(classes[i] == &#039;basic-tooltip&#039;) tip = tooltips.getBasicTooltip(elem);&lt;br /&gt;
            else if(typeof tooltips.types[classes[i]] != &#039;undefined&#039;) tip = tooltips.getTooltip(classes[i], elem);&lt;br /&gt;
            if(tip) tips.push(tip[0]);&lt;br /&gt;
        }&lt;br /&gt;
        return $(tips);&lt;br /&gt;
    },&lt;br /&gt;
    setOwnWidth: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        if(typeof $this.data(&#039;width&#039;) != &#039;undefined&#039;) $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        else $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
    },&lt;br /&gt;
    calcSize: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;absolute&#039;);&lt;br /&gt;
        var temp = $this.css(&#039;width&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
        $this.data(&#039;width&#039;, parseFloat(window.getComputedStyle($this[0]).width));&lt;br /&gt;
        $this.data(&#039;height&#039;, parseFloat(window.getComputedStyle($this[0]).height));&lt;br /&gt;
        $this.data(&#039;outerwidth&#039;, $this.outerWidth(true));&lt;br /&gt;
        $this.data(&#039;outerheight&#039;, $this.outerHeight(true));&lt;br /&gt;
        $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, temp);&lt;br /&gt;
    },&lt;br /&gt;
    sameWidth: function() {&lt;br /&gt;
        if($(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).length == 1) {&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(tooltips.setOwnWidth);&lt;br /&gt;
        } else {&lt;br /&gt;
            var width = 0;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { width = Math.max(width, $(this).data(&#039;width&#039;) || 0); });&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { $(this).css(&#039;width&#039;, width+&#039;px&#039;); });&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    wrapperPosition: function(mouseX, mouseY) {&lt;br /&gt;
        var tipH = parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-top&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-bottom&#039;));&lt;br /&gt;
        var tipW = 0;&lt;br /&gt;
       &lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerheight&#039;) != &#039;undefined&#039;) tipH += $(this).data(&#039;outerheight&#039;); });&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerwidth&#039;) != &#039;undefined&#039;) tipW = Math.max(tipW, $(this).data(&#039;outerwidth&#039;) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-left&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-right&#039;))); });&lt;br /&gt;
        &lt;br /&gt;
        var spaceTop = mouseY - tooltips.offsetY;&lt;br /&gt;
        var spaceLeft = mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceRight = $(window).width() - mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceBottom = $(window).height() - mouseY - tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        var coordX = mouseX + tooltips.offsetX;&lt;br /&gt;
        var coordY = mouseY + tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        if(spaceRight &amp;lt; tipW &amp;amp;&amp;amp; spaceBottom &amp;lt; tipH) {&lt;br /&gt;
            if(spaceLeft &amp;gt;= tipW &amp;amp;&amp;amp; tooltips.flip != &#039;h&#039;) {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                tooltips.flip = &#039;v&#039;;&lt;br /&gt;
            } else if(spaceTop &amp;gt;= tipH) {&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;h&#039;;&lt;br /&gt;
            } else {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;vh&#039;;&lt;br /&gt;
            }&lt;br /&gt;
        } else {&lt;br /&gt;
            tooltips.flip = false;&lt;br /&gt;
        }&lt;br /&gt;
        if ($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;position&#039;) == &#039;fixed&#039;) {&lt;br /&gt;
            coordX = coordX-$(window).scrollLeft();&lt;br /&gt;
            coordY = coordY-$(window).scrollTop();&lt;br /&gt;
            &lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH);&lt;br /&gt;
        } else {&lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH + $(window).scrollTop());&lt;br /&gt;
        }&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).css({left: coordX + &#039;px&#039;, top: coordY + &#039;px&#039;});&lt;br /&gt;
    },&lt;br /&gt;
    handlers: {&lt;br /&gt;
        mouseOver: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var tips = tooltips.getTooltips(this);&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).prepend(tips).show();&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            tips.each(function() {&lt;br /&gt;
                var $this = $(this);&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                &lt;br /&gt;
                $this.show();&lt;br /&gt;
                $(window).trigger(&#039;scroll&#039;);// trigger image lazy loader&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type] != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips.types[type].delay) {&lt;br /&gt;
                    $this.hide();&lt;br /&gt;
                    tooltips.timeouts[$(this).attr(&#039;id&#039;)] = setTimeout(function(){&lt;br /&gt;
                        $this.show();&lt;br /&gt;
                        if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call($this[0], handle);&lt;br /&gt;
                    }, tooltips.types[type].delay);&lt;br /&gt;
                } else if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call(this, handle);&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseOut: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).hide();&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).appendTo(&#039;#tooltip-storage&#039;).each(function() {&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onHide == &#039;function&#039;) tooltips.types[type].onHide.call(this, handle);&lt;br /&gt;
                $(this).show();&lt;br /&gt;
                clearTimeout(tooltips.timeouts[$(this).attr(&#039;id&#039;)]);&lt;br /&gt;
                delete tooltips.timeouts[$(this).attr(&#039;id&#039;)];&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseMove: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
        },&lt;br /&gt;
    },&lt;br /&gt;
    hash: function(text) {&lt;br /&gt;
        /* Source: https://archive.is/nq2F9 */&lt;br /&gt;
        var hash = 0, i, char;&lt;br /&gt;
        if (text.length === 0) return hash;&lt;br /&gt;
        for (i = 0, l = text.length; i &amp;lt; l; i++) {&lt;br /&gt;
            char  = text.charCodeAt(i);&lt;br /&gt;
            hash  = ((hash&amp;lt;&amp;lt;5)-hash)+char;&lt;br /&gt;
            hash |= 0; // Convert to 32bit integer&lt;br /&gt;
        }&lt;br /&gt;
        return hash;&lt;br /&gt;
    },&lt;br /&gt;
};&lt;br /&gt;
$(tooltips.init);&lt;br /&gt;
&lt;br /&gt;
$(document).keydown(function() {&lt;br /&gt;
  var nothingIsFocused = document.activeElement === document.body;&lt;br /&gt;
  if (nothingIsFocused) {&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;Slash&#039;) {&lt;br /&gt;
      $(&#039;#searchInput&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyE&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;e&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // if(event.code == &#039;KeyF&#039;) {&lt;br /&gt;
    //   window.location.href = &#039;https://test.vana.wiki/Special:Upload&#039;;&lt;br /&gt;
    // }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyH&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;h&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyM&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;m&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;KeyN&#039;) {&lt;br /&gt;
      $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeIn(200);&lt;br /&gt;
      $(&#039;#new-page-create-name-input&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;Escape&#039;) {&lt;br /&gt;
       $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
  }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-modal-background&amp;quot;).click(function () {&lt;br /&gt;
  $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-create-button&amp;quot;).click(function () {&lt;br /&gt;
  url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
  window.location.href = &#039;https://&#039;+url.host+&#039;/w/index.php?title=&#039; + $(&#039;#new-page-create-name-input&#039;).val() + &#039;&amp;amp;action=edit&#039;;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
///////     Move to Top: Button   //////&lt;br /&gt;
const button_scrollToTop = document.createElement(&#039;button&#039;);&lt;br /&gt;
button_scrollToTop.className = &amp;quot;mainpage-button-scrollToTop&amp;quot;;&lt;br /&gt;
button_scrollToTop.innerHTML = &#039;&amp;lt;img src=&amp;quot;https://horizonffxi.wiki/w/images/0/06/Up_arrow.png&amp;quot; style=&amp;quot;width: 25px; height: 25px;&amp;quot;/&amp;gt;&#039;;&lt;br /&gt;
//button_scrollToTop.style = &amp;quot;right: 2%; background: #FFFFFF; opacity: 1; position: fixed; display: none; border-radius: 10px; border: 0.5px solid #a7a7a7; box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);  z-index: 1000;&amp;quot;&lt;br /&gt;
document.body.appendChild(button_scrollToTop);&lt;br /&gt;
&lt;br /&gt;
button_scrollToTop.addEventListener(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
  $(&amp;quot;html, body&amp;quot;).animate({ scrollTop: 0 }, &amp;quot;slow&amp;quot;);&lt;br /&gt;
  return false;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// //https://stackoverflow.com/questions/31223341/detecting-scroll-direction&lt;br /&gt;
// function scrollEventThrottle(fn) {&lt;br /&gt;
//   var last_known_scroll_position = 0;&lt;br /&gt;
//   var ticking = false;&lt;br /&gt;
//   window.addEventListener(&amp;quot;scroll&amp;quot;, function () {&lt;br /&gt;
//     var previous_known_scroll_position = last_known_scroll_position;&lt;br /&gt;
//     last_known_scroll_position = window.scrollY;&lt;br /&gt;
//     if (!ticking) {&lt;br /&gt;
//       window.requestAnimationFrame(function () {&lt;br /&gt;
//         fn(last_known_scroll_position, previous_known_scroll_position);&lt;br /&gt;
//         ticking = false;&lt;br /&gt;
//       });&lt;br /&gt;
//       ticking = true;&lt;br /&gt;
//     }&lt;br /&gt;
//   });&lt;br /&gt;
// }&lt;br /&gt;
&lt;br /&gt;
// scrollEventThrottle(function(scrollPos, previousScrollPos) {&lt;br /&gt;
//     if (previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt;= 400) {&lt;br /&gt;
// 		if(window.getComputedStyle(button_scrollToTop).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
// 			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
// 			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
// 			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
// 		}&lt;br /&gt;
//     } else {&lt;br /&gt;
//       button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
//     }&lt;br /&gt;
// });&lt;br /&gt;
&lt;br /&gt;
var previousScrollPos = 0;&lt;br /&gt;
var lastScrollPos = 0;&lt;br /&gt;
var performing = false;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * show the button #scroll-to-top only&lt;br /&gt;
 * on bottom part of the page &lt;br /&gt;
 */&lt;br /&gt;
const b = document.querySelector(&#039;.mainpage-button-scrollToTop&#039;);&lt;br /&gt;
//console.log(document.querySelector(&#039;.mainpage-button-scrollToTop&#039;));&lt;br /&gt;
function toggleVisibility(scrollPos, buttonId) {&lt;br /&gt;
	//console.log(previousScrollPos, scrollPos);&lt;br /&gt;
  if(previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt; 500) {&lt;br /&gt;
  	//console.log(&amp;quot;showing&amp;quot; + $(buttonId));&lt;br /&gt;
    	if(window.getComputedStyle(b).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
	button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
document.addEventListener(&#039;scroll&#039;, function(evt) {&lt;br /&gt;
  //console.log(performance.now())&lt;br /&gt;
	previousScrollPos = lastScrollPos;&lt;br /&gt;
	lastScrollPos = window.scrollY;&lt;br /&gt;
  if(!performing) {&lt;br /&gt;
    setTimeout(function () {&lt;br /&gt;
      toggleVisibility(lastScrollPos, &#039;mainpage-button-scrollToTop&#039;);&lt;br /&gt;
      performing = false;&lt;br /&gt;
    }, 100);&lt;br /&gt;
  }&lt;br /&gt;
  performing = true;&lt;br /&gt;
}, {passive: true}) ;&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
// function that sorts a table on page load&lt;br /&gt;
// based on the column header which has one of the classes sort-col-1, sort-col-2, ...&lt;br /&gt;
&lt;br /&gt;
window.addEventListener(&#039;load&#039;, function() {&lt;br /&gt;
    // Add a small delay to ensure everything is loaded, especially on slower mobile networks&lt;br /&gt;
    setTimeout(function() {&lt;br /&gt;
        // Select all tables with classes that match &amp;quot;sort-col-1&amp;quot; through &amp;quot;sort-col-6&amp;quot;&lt;br /&gt;
        var tables = document.querySelectorAll(&#039;.sortable.sort-col-1, .sortable.sort-col-2, .sortable.sort-col-3, .sortable.sort-col-4, .sortable.sort-col-5, .sortable.sort-col-6&#039;);&lt;br /&gt;
&lt;br /&gt;
        // Loop through each table and determine the column to sort by based on its class&lt;br /&gt;
        Array.prototype.forEach.call(tables, function(table) {&lt;br /&gt;
            // Find which &amp;quot;sort-col-X&amp;quot; class is applied to the table&lt;br /&gt;
            var classList = Array.prototype.slice.call(table.classList);&lt;br /&gt;
            var sortClass = null;&lt;br /&gt;
&lt;br /&gt;
            for (var i = 0; i &amp;lt; classList.length; i++) {&lt;br /&gt;
                if (classList[i].indexOf(&#039;sort-col-&#039;) === 0) {&lt;br /&gt;
                    sortClass = classList[i];&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            if (sortClass) {&lt;br /&gt;
                // Extract the column number from the class name (e.g., &amp;quot;sort-col-3&amp;quot; =&amp;gt; 3)&lt;br /&gt;
                var columnIndex = parseInt(sortClass.replace(&#039;sort-col-&#039;, &#039;&#039;), 10) - 1;  // Convert to 0-based index&lt;br /&gt;
                &lt;br /&gt;
                // Find the header cell for the specified column index&lt;br /&gt;
                var headerCell = table.querySelectorAll(&#039;th&#039;)[columnIndex];&lt;br /&gt;
                &lt;br /&gt;
                // If the header cell exists, simulate a click on it to trigger sorting&lt;br /&gt;
                if (headerCell) {&lt;br /&gt;
                    headerCell.click()&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    }, 500); // 500ms delay to help on slower devices&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// OAuth Popup&lt;br /&gt;
$(&#039;button#discord-login&#039;).click(function(){&lt;br /&gt;
	articlePath = mw.config.get(&#039;wgArticlePath&#039;);&lt;br /&gt;
	url = articlePath.replace(&#039;$1&#039;, &#039;Special:OAuth2Client/redirect?returnto=Special:OAuth2Client/close&#039;);&lt;br /&gt;
	var left = (screen.width/2) - 200;&lt;br /&gt;
	var above = (screen.height/2) - 200;&lt;br /&gt;
	newwindow = window.open(url, &amp;quot;_blank&amp;quot;, &amp;quot;resizable=yes, scrollbars=yes, titlebar=yes, width=400, top=&amp;quot;+above+&amp;quot;, left=&amp;quot;+left);&lt;br /&gt;
	return false;&lt;br /&gt;
})&lt;br /&gt;
if (mw.config.get(&#039;wgTitle&#039;) == &#039;OAuth2Client/close&#039;) {&lt;br /&gt;
	window.opener.location.reload();&lt;br /&gt;
	window.close();&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.css&amp;diff=118976</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.css&amp;diff=118976"/>
		<updated>2026-04-13T18:42:43Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Tweaking login styling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Importing FFXIMap extension associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:FFXIMap_Styles.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Classes for Colors */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:Colors.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Vanatime.js associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:VanaTime.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Special:ASBSearch associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:ASBSearch.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Special:FFXIWeatherForecast associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:FFXIWeatherForecast.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Start of Table Class Categorisation */&lt;br /&gt;
&lt;br /&gt;
/* class that can be used on divs to mimick table cells for landing page styles */&lt;br /&gt;
.container {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Stylings */&lt;br /&gt;
&lt;br /&gt;
/* || Horizon Table */&lt;br /&gt;
.horizon-table,&lt;br /&gt;
.ffxi-table {&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
	background-color: #f9f9f9;&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	color: black;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table th,&lt;br /&gt;
.ffxi-table th {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table tr,&lt;br /&gt;
.ffxi-table tr {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table td,&lt;br /&gt;
.ffxi-table td {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table caption,&lt;br /&gt;
.ffxi-table caption {&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* subheader class, can be used in multi class rules to define alternative colors */&lt;br /&gt;
th.subheader, th.subheader-alt {&lt;br /&gt;
	font-weight: normal;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Horizon Table Without Borders */&lt;br /&gt;
.borderless-horizon-table {&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
	background-color: #f9f9f9;&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	color: black;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table th {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table tr {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table td {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table caption {&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Battlefield Table Border Styling */&lt;br /&gt;
.battlefield-table-border table,&lt;br /&gt;
.battlefield-table-border th {&lt;br /&gt;
	border: 1px black solid !important; /* needs to overwrite default border */	&lt;br /&gt;
}&lt;br /&gt;
.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border,&lt;br /&gt;
.enm-table-border {&lt;br /&gt;
	border: 1px black solid; /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.bcnm-table-border th,&lt;br /&gt;
th.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border th,&lt;br /&gt;
th.ksnm-table-border,&lt;br /&gt;
.enm-table-border th,&lt;br /&gt;
th.enm-table-border {&lt;br /&gt;
	border: 1px black solid;  /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bcnm-table-border td, td.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border td, td.ksnm-table-border,&lt;br /&gt;
.enm-table-border td, td.enm-table-border,&lt;br /&gt;
.bcnm-table-border tr, tr.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border tr, tr.ksnm-table-border,&lt;br /&gt;
.enm-table-border tr, tr.enm-table-border&lt;br /&gt;
{&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Table caption helper functions */&lt;br /&gt;
/* set class for caption on top as a big title */&lt;br /&gt;
.caption-title caption {&lt;br /&gt;
    caption-side: top;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* set class for caption at bottom as a footnote */&lt;br /&gt;
.caption-footnote caption {&lt;br /&gt;
    caption-side: bottom;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
    padding: 2px 1em;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    color: black !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Widths */&lt;br /&gt;
.table-xxl {&lt;br /&gt;
	max-width: none !important; /* as far as available */&lt;br /&gt;
}&lt;br /&gt;
.table-xl {&lt;br /&gt;
	max-width: 1198px !important;  /* available space of max width of the content container minus paddings */&lt;br /&gt;
}&lt;br /&gt;
.table-lg {&lt;br /&gt;
	max-width: 1018px !important;  /* available space after next breakpoint */&lt;br /&gt;
}&lt;br /&gt;
.table-md { /* THIS IS THE DEFAULT SIZE */&lt;br /&gt;
	max-width: 775px !important;  /* available space after next breakpoint */&lt;br /&gt;
}&lt;br /&gt;
.table-sm {&lt;br /&gt;
	max-width: 576px !important;&lt;br /&gt;
}&lt;br /&gt;
.table-xs {&lt;br /&gt;
	max-width: 400px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.table-setSize {&lt;br /&gt;
	max-width:800px !important;&lt;br /&gt;
	max-height:600px !important;&lt;br /&gt;
	overflow-y: scroll !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Setting a table inside a cell of another table */&lt;br /&gt;
.inserted-table {&lt;br /&gt;
	margin-top: 0px;&lt;br /&gt;
	margin-bottom: 0px;&lt;br /&gt;
	border-style: hidden;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
	display: inline-table;&lt;br /&gt;
}&lt;br /&gt;
/*.inserted-table tr,&lt;br /&gt;
.inserted-table td {&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}*/&lt;br /&gt;
.inserted-table tr:first-child &amp;gt; td {&lt;br /&gt;
	padding-top: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table tr:last-child &amp;gt; td {&lt;br /&gt;
	padding-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table td:first-child {&lt;br /&gt;
	padding-left: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table td:last-child {&lt;br /&gt;
	padding-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Special Table for the Auction House Navigation */&lt;br /&gt;
.auction-house-navigation-table {&lt;br /&gt;
	margin-top: 0;&lt;br /&gt;
	margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td a {&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td ul {&lt;br /&gt;
	list-style-type: none;&lt;br /&gt;
	margin: 0.3rem 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table-color th {&lt;br /&gt;
	background-color: #B0C4DE;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table-color td {&lt;br /&gt;
	background-color: #5F9EA0;&lt;br /&gt;
}&lt;br /&gt;
.active-category-link,&lt;br /&gt;
.active-category-link a {&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || &lt;br /&gt;
Template:Zone_Section_Header and Template:Zone_Infobox / Template:Zone/Infobox &lt;br /&gt;
use these for zone page designs */&lt;br /&gt;
&lt;br /&gt;
.zone-section-header, .zone-section-body {&lt;br /&gt;
	padding: 4px 8px;&lt;br /&gt;
}&lt;br /&gt;
.zone-section-header, .zone-section-header a {&lt;br /&gt;
	font-size: 1.2rem;&lt;br /&gt;
	font-weight: bold; &lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Global Template Format */&lt;br /&gt;
/* || Template:Quest Styling and Size */&lt;br /&gt;
/* || Horizon Infobox - standard infobox */&lt;br /&gt;
.horizon-infobox {&lt;br /&gt;
    margin: 1em 0;&lt;br /&gt;
    border: 1px #aaa solid;&lt;br /&gt;
    border-collapse: collapse;&lt;br /&gt;
    color: black;&lt;br /&gt;
    max-width: 400px;&lt;br /&gt;
    width: 100%;  /* try to fill the 400px unless the screen is too small */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-infobox th {&lt;br /&gt;
  border: 1px #aaa solid;&lt;br /&gt;
  padding: 0.3em 0.4em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  min-width: 100px; /* width controlled by infobox-xx-yy class but at least 100px to remain readable */&lt;br /&gt;
  text-align: right;&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-infobox td {&lt;br /&gt;
  border: 1px #aaa solid;&lt;br /&gt;
  padding: 0.3em 0.4em;&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* helper class since wiki tables seem not to accept this inline */&lt;br /&gt;
.no-min-width, &lt;br /&gt;
.no-min-width th,&lt;br /&gt;
.no-min-width td {&lt;br /&gt;
	min-width: unset !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.border-none-table,&lt;br /&gt;
.border-none-th th,&lt;br /&gt;
.border-none-td td {&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.align-left-th th {&lt;br /&gt;
	text-align: left !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-50-50 th {&lt;br /&gt;
	width: 50%; /* 50% of the .horizon-infobox size*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-34-66 th {&lt;br /&gt;
	width: 34%; /* 34% of the .horizon-infobox size*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
th.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-header {&lt;br /&gt;
  width:150px; text-align:right; vertical-align:top;&lt;br /&gt;
}&lt;br /&gt;
td.infobox-quest-field,&lt;br /&gt;
tr.infobox-quest-field {&lt;br /&gt;
  vertical-align:top;&lt;br /&gt;
}&lt;br /&gt;
tr.infobox-quest-cutscenes-header {&lt;br /&gt;
  width:150px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-mobs-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--mobs-color-dark);&lt;br /&gt;
	border-color: var(--mobs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-mobs th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--mobs-color-medium-light);&lt;br /&gt;
	border-color: var(--mobs-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs td {&lt;br /&gt;
	background-color: var(--mobs-color-light);&lt;br /&gt;
	border-color: var(--mobs-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs {&lt;br /&gt;
	border: 1px double var(--mobs-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs-thick-border {&lt;br /&gt;
	border: 2px solid var(--mobs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-nms-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--nms-color-dark);&lt;br /&gt;
	border-color: var(--nms-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-nms th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--nms-color-medium-light);&lt;br /&gt;
	border-color: var(--nms-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms td {&lt;br /&gt;
	background-color: var(--nms-color-light);&lt;br /&gt;
	border-color: var(--nms-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms {&lt;br /&gt;
	border: 1px double var(--nms-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms-thick-border {&lt;br /&gt;
	border: 2px solid var(--nms-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-jugs-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--jugs-color-dark);&lt;br /&gt;
	border-color: var(--jugs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-jugs th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--jugs-color-medium-light);&lt;br /&gt;
	border-color: var(--jugs-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs td {&lt;br /&gt;
	background-color: var(--jugs-color-light);&lt;br /&gt;
	border-color: var(--jugs-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs {&lt;br /&gt;
	border: 1px double var(--jugs-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs-thick-border {&lt;br /&gt;
	border: 2px solid var(--jugs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Simple border Classes */&lt;br /&gt;
&lt;br /&gt;
.border,&lt;br /&gt;
.border th, &lt;br /&gt;
.border tr,&lt;br /&gt;
.border td,&lt;br /&gt;
th.border,&lt;br /&gt;
tr.border, &lt;br /&gt;
td.border {&lt;br /&gt;
	border: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-left,&lt;br /&gt;
.border-left th, &lt;br /&gt;
.border-left tr, &lt;br /&gt;
.border-left td,&lt;br /&gt;
th.border-left,&lt;br /&gt;
tr.border-left, &lt;br /&gt;
td.border-left {&lt;br /&gt;
	border-left: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-right,&lt;br /&gt;
.border-right th,&lt;br /&gt;
.border-right tr, &lt;br /&gt;
.border-right td,&lt;br /&gt;
th.border-right,&lt;br /&gt;
tr.border-right, &lt;br /&gt;
td.border-right {&lt;br /&gt;
	border-right: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-top,&lt;br /&gt;
.border-top th,&lt;br /&gt;
.border-top tr, &lt;br /&gt;
.border-top td,&lt;br /&gt;
th.border-top,&lt;br /&gt;
tr.border-top, &lt;br /&gt;
td.border-top {&lt;br /&gt;
	border-top: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-bottom,&lt;br /&gt;
.border-bottom th, &lt;br /&gt;
.border-bottom tr, &lt;br /&gt;
.border-bottom td,&lt;br /&gt;
th.border-bottom,&lt;br /&gt;
tr.border-bottom, &lt;br /&gt;
td.border-bottom {&lt;br /&gt;
	border-bottom: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Colors */&lt;br /&gt;
&lt;br /&gt;
/* || Mission Table Colors */&lt;br /&gt;
&lt;br /&gt;
.infobox-mission th,&lt;br /&gt;
.horizonmissions th {&lt;br /&gt;
	background-color: hsl(319, 32%, 58%); /*#b773a2;*/&lt;br /&gt;
}&lt;br /&gt;
.infobox-mission td,&lt;br /&gt;
.horizonmissions td {&lt;br /&gt;
	background-color: hsl(317, 58%, 95%); /*#faecf6;*/&lt;br /&gt;
}&lt;br /&gt;
tr.infobox-mission.subheader th, &lt;br /&gt;
tr.infobox-mission-alt th,&lt;br /&gt;
tr.horizonmissions-alt th {&lt;br /&gt;
	background-color: hsl(314, 41%, 90%); /*#f0dbeb;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Bastok Missions */&lt;br /&gt;
.bastokmissions th,&lt;br /&gt;
.bastokmissions tr,&lt;br /&gt;
.bastokmissions td {&lt;br /&gt;
	border: 1px hsl(230, 50%, 40%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.bastokmissions th,&lt;br /&gt;
tr.bastokmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.bastokmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(236, 55%, 38%);*/ /*#2b3296;*/&lt;br /&gt;
	background-color: hsl(230, 50%, 40%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.bastokmissions td,&lt;br /&gt;
tr.bastokmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.bastokmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(236, 60%, 95%);*/ /*#ebecfa;*/&lt;br /&gt;
	background-color: hsl(230, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.bastokmissions.subheader th, &lt;br /&gt;
tr.bastokmissions-alt th,&lt;br /&gt;
table.tr.th.bastokmissions-alt {&lt;br /&gt;
	/*background-color: hsl(236, 56%, 70%);*/ /*#888edd;*/&lt;br /&gt;
	background-color: hsl(230, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || San d&#039;Oria Missions */&lt;br /&gt;
.sandoriamissions th,&lt;br /&gt;
.sandoriamissions tr,&lt;br /&gt;
.sandoriamissions td {&lt;br /&gt;
	border: 1px hsl(350, 50%, 40%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.sandoriamissions th,&lt;br /&gt;
tr.sandoriamissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.sandoriamissions { /* highest specificity when set on the th element */&lt;br /&gt;
	/*background-color: hsl(350, 99%, 42%);*/ /*#d60124;*/&lt;br /&gt;
	background-color: hsl(350, 50%, 40%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.sandoriamissions td,&lt;br /&gt;
tr.sandoriamissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.sandoriamissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(348, 100%, 95%);*/ /*#ffe5ea;*/&lt;br /&gt;
	background-color: hsl(350, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.sandoriamissions.subheader th,&lt;br /&gt;
tr.sandoriamissions-alt th,&lt;br /&gt;
table.tr.th.sandoriamissions-alt {&lt;br /&gt;
	/*background-color: hsl(350, 99%, 70%);*/ /*#fe6780;*/&lt;br /&gt;
	background-color: hsl(350, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Windurst Missions */&lt;br /&gt;
.windurstmissions th,&lt;br /&gt;
.windurstmissions tr,&lt;br /&gt;
.windurstmissions td {&lt;br /&gt;
	border: 1px hsl(110, 95%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.windurstmissions th,&lt;br /&gt;
tr.windurstmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.windurstmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(102, 95%, 25%);/* /*#287e03;*/&lt;br /&gt;
	background-color: hsl(110, 95%, 25%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.windurstmissions td,&lt;br /&gt;
tr.windurstmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.windurstmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(103, 92%, 95%);*/ /*#edfee6;*/&lt;br /&gt;
	background-color: hsl(110, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.windurstmissions.subheader th,&lt;br /&gt;
tr.windurstmissions-alt th,&lt;br /&gt;
table.tr.th.windurstmissions-alt {&lt;br /&gt;
	/*background-color: hsl(102, 95%, 60%);*/ /*#72fa38;*/&lt;br /&gt;
	background-color: hsl(110, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Rise of the Zilart Missions */&lt;br /&gt;
.rotzmissions th,&lt;br /&gt;
tr.rotzmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.rotzmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(30, 48%, 59%); /*#c99866;*/&lt;br /&gt;
}&lt;br /&gt;
.rotzmissions td,&lt;br /&gt;
tr.rotzmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.rotzmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(30, 46%, 95%); /*#f8f2ec;*/&lt;br /&gt;
}&lt;br /&gt;
tr.rotzmissions.subheader th, &lt;br /&gt;
tr.rotzmissions-alt th,&lt;br /&gt;
table.tr.th.rotzmissions-alt {&lt;br /&gt;
	background-color: hsl(30, 48%, 78%); /*#e2c7ac;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Chains of Promathia Missions */&lt;br /&gt;
.copmissions th,&lt;br /&gt;
tr.copmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.copmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(206, 32%, 50%); /*#5785a8;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*.copmissionschapter th {*/&lt;br /&gt;
/*	background-color: #9ab6cb !important;*/&lt;br /&gt;
/*}*/&lt;br /&gt;
&lt;br /&gt;
.copmissions td,&lt;br /&gt;
tr.copmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.copmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(203, 31%, 95%);*/ /*#eef3f6;*/&lt;br /&gt;
	background-color: hsl(206, 32%, 95%);&lt;br /&gt;
}&lt;br /&gt;
tr.copmissions.subheader th, &lt;br /&gt;
tr.copmissions-alt th,&lt;br /&gt;
table.tr.th.copmissions-alt {&lt;br /&gt;
	/*background-color: hsl(206, 32%, 70%);*/ /*#9ab6cb;*/&lt;br /&gt;
	background-color: hsl(206, 32%, 70%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Quest Table Colors */&lt;br /&gt;
&lt;br /&gt;
/* || All Quests */&lt;br /&gt;
.quest-table th,&lt;br /&gt;
.infobox-quest th,&lt;br /&gt;
th.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-cutscenes-header {&lt;br /&gt;
	background-color: #867ab8;&lt;br /&gt;
}&lt;br /&gt;
.quest-table tr,&lt;br /&gt;
.infobox-quest td,&lt;br /&gt;
td.infobox-quest-field,&lt;br /&gt;
tr.infobox-quest-field {&lt;br /&gt;
	background-color: #f0eef6;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.quest-table th.subheader {&lt;br /&gt;
	background-color: #E4D7E9;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || NPC Table Colors */&lt;br /&gt;
/* || ALL NPCs */&lt;br /&gt;
.npc-table th {&lt;br /&gt;
	background-color: #9acbcb;	&lt;br /&gt;
}&lt;br /&gt;
.npc-table tr {&lt;br /&gt;
	background-color: #eef6f6;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Jobs Abilities Spells */&lt;br /&gt;
.jobs-table th {&lt;br /&gt;
	background-color: #afc7cf;&lt;br /&gt;
}&lt;br /&gt;
.jobs-table td {&lt;br /&gt;
	background-color: #eff4f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Gear */&lt;br /&gt;
.gear-table th {&lt;br /&gt;
	background-color: #6bd0f2;&lt;br /&gt;
}&lt;br /&gt;
.gear-table td {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Monster Colors */&lt;br /&gt;
/* || Regular Mobs and Dropped By Table */&lt;br /&gt;
table tr.mobs, &lt;br /&gt;
.mobs tr,&lt;br /&gt;
.droppedby tr,&lt;br /&gt;
.stolenfrom tr {&lt;br /&gt;
	background-color: hsl(235, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.mobs th,&lt;br /&gt;
.droppedby th,&lt;br /&gt;
.stolenfrom th {&lt;br /&gt;
	background-color: hsl(235, 90%, 75%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Notorious Monsters */&lt;br /&gt;
table.nm-table tr,&lt;br /&gt;
table tr.bg-red,&lt;br /&gt;
table tr.bg-nm,&lt;br /&gt;
table tr.nms,&lt;br /&gt;
.bg-red tr,&lt;br /&gt;
.bg-nm tr,&lt;br /&gt;
.bg-red,&lt;br /&gt;
.bg-nm,&lt;br /&gt;
.nms,&lt;br /&gt;
.nms tr {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(0, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
table.nm-table th,&lt;br /&gt;
.bg-red th,&lt;br /&gt;
.bg-nm th,&lt;br /&gt;
.bg-nm .ffxi-header,&lt;br /&gt;
.bg-nm .ffxi-footer,&lt;br /&gt;
.nms th {&lt;br /&gt;
	background-color: hsl(0, 90%, 75%);&lt;br /&gt;
	border:1px hsl(0, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Mega Bosses */&lt;br /&gt;
table tr.megaboss, &lt;br /&gt;
.megaboss tr {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.megaboss th {&lt;br /&gt;
	background-color: hsl(0, 90%, 60%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Battlefield  */&lt;br /&gt;
/* colors for header elements, to be set on the table and on th cells */&lt;br /&gt;
.battlefield-table th,&lt;br /&gt;
th.bcnm-table, .bcnm-table th,&lt;br /&gt;
th.enm-table, .enm-table th,&lt;br /&gt;
th.ksnm-table, .ksnm-table th&lt;br /&gt;
{&lt;br /&gt;
	background-color: hsl(30, 50%, 65%) !important;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
th.bcnm-table-alt, .bcnm-table-alt th,&lt;br /&gt;
th.ksnm-table-alt, .ksnm-table-alt th,&lt;br /&gt;
th.enm-table-alt, .enm-table-alt th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;&lt;br /&gt;
	border: none;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.battlefield-table.subheader th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;	&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
th.bcnm-table-alt-color, .bcnm-table-alt-color th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.battlefield-table td,&lt;br /&gt;
.bcnm-table td,&lt;br /&gt;
.enm-table td,&lt;br /&gt;
.ksnm-table td {&lt;br /&gt;
	background-color: hsl(30, 50%, 95%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.battlefield-table-border td,&lt;br /&gt;
.battlefield-table-border tr,&lt;br /&gt;
.battlefield-table-border.subheader th {&lt;br /&gt;
	border: none !important; /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.armorycrate-table {&lt;br /&gt;
	border-color:#678198;&lt;br /&gt;
}&lt;br /&gt;
.armorycrate-table th {&lt;br /&gt;
	background-color:#b3c0cb;&lt;br /&gt;
}&lt;br /&gt;
.armorycrate-table tr {&lt;br /&gt;
	background-color:#f0f2f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Chests/Coffers Tables */&lt;br /&gt;
.treasurecoffer th,&lt;br /&gt;
.treasurechest th {&lt;br /&gt;
	background-color: hsl(48, 9%, 58%) !important;&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
.treasurecoffer tr,&lt;br /&gt;
.treasurechest tr {&lt;br /&gt;
	background-color: hsl(48, 9%, 90%) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Endgame Colors */&lt;br /&gt;
.limbus-color th {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color th.subheader {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color th.subheader-alt {&lt;br /&gt;
	background-color: #f2f2f2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color td {&lt;br /&gt;
	background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
/* || Page Header Colors */&lt;br /&gt;
.area-header th,&lt;br /&gt;
.bestiary-header th,&lt;br /&gt;
.ffxi-table th,&lt;br /&gt;
.ffxi-header,&lt;br /&gt;
.ffxi-footer,&lt;br /&gt;
.general-table th {&lt;br /&gt;
	background-color:#afc7cf !important;&lt;br /&gt;
}&lt;br /&gt;
.area-header tr,&lt;br /&gt;
.bestiary-header tr,&lt;br /&gt;
.ffxi-table tr,&lt;br /&gt;
.general-table tr {&lt;br /&gt;
	background-color:#eff4f5 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Miscellaneous Colors */&lt;br /&gt;
.editing-table {&lt;br /&gt;
	border-color:#678198;&lt;br /&gt;
}&lt;br /&gt;
.editing-table th {&lt;br /&gt;
	background-color:#b3c0cb;&lt;br /&gt;
}&lt;br /&gt;
.editing-table tr {&lt;br /&gt;
	background-color:#f0f2f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.table-grey th {&lt;br /&gt;
	background-color: hsl(0, 0%, 80%);&lt;br /&gt;
}&lt;br /&gt;
.table-grey td {&lt;br /&gt;
	background-color: hsl(0, 0%, 95%);&lt;br /&gt;
}&lt;br /&gt;
tr.table-grey.subheader th, &lt;br /&gt;
tr.table-grey-alt th {&lt;br /&gt;
	background-color: hsl(0, 0%, 88%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Event Banner Classes */&lt;br /&gt;
/* For use on the https://horizonffxi.wiki/MediaWiki:Sitenotice page */&lt;br /&gt;
/* Simple wrapper to make images in sitenotice responsive */&lt;br /&gt;
.simple-event-banner-wrapper a &amp;gt; img {&lt;br /&gt;
	max-width: 100%;&lt;br /&gt;
	height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* alternative, more involved use with a background image and text overlay */&lt;br /&gt;
.event-banner-link {&lt;br /&gt;
    display: block;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    color: inherit;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the picture */&lt;br /&gt;
.event-banner-container {&lt;br /&gt;
    background-image: url(https://horizonffxi.wiki/w/images/8/82/HorizonXI_Sun_breeze_2023.png);&lt;br /&gt;
    min-height: 300px; /* Set the minimum desired height for your image */&lt;br /&gt;
    background-repeat: no-repeat;&lt;br /&gt;
    background-size: cover;&lt;br /&gt;
    background-position: center;&lt;br /&gt;
    position: relative;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the overlay */&lt;br /&gt;
.event-banner-overlay {&lt;br /&gt;
    position: absolute;&lt;br /&gt;
        top: 5px; /* Adjust the vertical position as needed to align the overlay to the top */&lt;br /&gt;
        left: 5px; /* Adjust the horizontal position as needed */&lt;br /&gt;
        right: 35%; /* Adjust the horizontal position as needed */&lt;br /&gt;
        background-color: rgba(0, 0, 0, 0.3); /* Adjust the opacity here (0.3 means 30% transparent) */&lt;br /&gt;
        padding: 5px 20px; /* one number for same padding all sizes. two numbers for &amp;quot;y x&amp;quot;. four numbers for &amp;quot;top right bottom left&amp;quot;. see https://www.w3schools.com/css/css_padding.asp */&lt;br /&gt;
        text-align: center;&lt;br /&gt;
        color: #fff; /* Text color for the overlay */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the text */&lt;br /&gt;
.event-banner-text {&lt;br /&gt;
    font-size: 2.5rem;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    font-family: cursive;&lt;br /&gt;
    margin-top: 20px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the underline comes from mediawiki styling h2. this container controls the size and position of the h2 inside */&lt;br /&gt;
.event-banner-underline-container {&lt;br /&gt;
    margin-left: auto;&lt;br /&gt;
    margin-right: auto;&lt;br /&gt;
    max-width: 700px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 768px) {&lt;br /&gt;
    /* Adjust the styles for screens with a maximum width of 768px */&lt;br /&gt;
    .event-banner-overlay {&lt;br /&gt;
        left: 10%;&lt;br /&gt;
        right: 10%;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 576px) {&lt;br /&gt;
    /* Adjust the styles for screens with a maximum width of 768px */&lt;br /&gt;
    .event-banner-overlay {&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        right: 0;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.starlight {display: none;}&lt;br /&gt;
.sunbreeze {display: none;}&lt;br /&gt;
/* End of site notice banner */&lt;br /&gt;
&lt;br /&gt;
/* || Missing Content */&lt;br /&gt;
&lt;br /&gt;
.fellow,&lt;br /&gt;
.adventuringfellow {display:none !important;}&lt;br /&gt;
.mogsafetwo {display:none !important;}&lt;br /&gt;
.mogsack {display:none !important;}&lt;br /&gt;
.mogcase {display:none !important;}&lt;br /&gt;
.ballista {display:none !important;}&lt;br /&gt;
.grouptwomerits {display:none !important;}&lt;br /&gt;
.absolutevirtue {display:none !important;}&lt;br /&gt;
.expeditionaryforce {display:none !important;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Out of era content (OOE) - All dates are approximate */&lt;br /&gt;
/* || Treaures of Aht Urghan */&lt;br /&gt;
&lt;br /&gt;
.toau {display: none !important;}					/* Apr 2006 */&lt;br /&gt;
.recipeEra {width:275px;}&lt;br /&gt;
.recipeEra:has(span.toau) {display: none !important; }&lt;br /&gt;
&lt;br /&gt;
.besieged {display: none !important;}				/* Apr 2006 */&lt;br /&gt;
.isnm {display: none !important;}					/* Imperial Standing Notorious Monsters - Jul 2006 */&lt;br /&gt;
.raising {display: none !important;}				/* Chocobo Raising - Aug 2006 */&lt;br /&gt;
.salvage {display: none !important;}				/* Salvage - Dec 2006 */&lt;br /&gt;
.hotandcold {display: none !important;}				/* Chocobo Hot and Cold Game - Dec 2006 */&lt;br /&gt;
.nyzul {display: none !important;}					/* Nyzul Isle Investigation - Mar 2007 */&lt;br /&gt;
.racing {display: none !important;}				/* Chocobo Racing - Mar 2007 */&lt;br /&gt;
.pankration {display: none !important;}				/* Pankration - Sept 2007 */&lt;br /&gt;
.mythic {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.znm {display: none !important;}					/* Zeni Notorious Monsters - Jun 2008 */&lt;br /&gt;
.znm-tier1 {display: none !important;}&lt;br /&gt;
.znm-tier2 {display: none !important;}&lt;br /&gt;
.znm-tier3 {display: none !important;}&lt;br /&gt;
.znm-tier4 {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.assault {display: none !important;}				/* Assault - Apr 2006 */&lt;br /&gt;
.assault-psc {display: none !important;}&lt;br /&gt;
.assault-pfc {display: none !important;}&lt;br /&gt;
.assault-sp {display: none !important;}&lt;br /&gt;
.assault-lc {display: none !important;}&lt;br /&gt;
.assault-c {display: none !important;}&lt;br /&gt;
.assault-s {display: none !important;}&lt;br /&gt;
.assault-sm {display: none !important;}&lt;br /&gt;
.assault-cs {display: none !important;}				/* Chief Sergeant Rank - Mar 2007 */&lt;br /&gt;
.assault-sl {display: none !important;}				/* Second Lieutenant Rank - Jun 2007 */&lt;br /&gt;
.assault-fl {display: none !important;}				/* First Lieutenant Rank - Aug 2007 */&lt;br /&gt;
&lt;br /&gt;
.einherjar {display: none !important;}				/* Einherjar - Jun 2007 */&lt;br /&gt;
.einherjar-wingi {display: none !important;}		&lt;br /&gt;
.einherjar-wingii {display: none !important;}		&lt;br /&gt;
.einherjar-wingiii {display: none !important;}		&lt;br /&gt;
.einherjar-odin {display: none !important;}		&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Wings of the Goddess */&lt;br /&gt;
&lt;br /&gt;
.wotg {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.annm {display: none !important;}					/* Allied Notes Notorious Monsters - Apr 2009 */&lt;br /&gt;
.campaign {display: none !important;}				/* Campaign - Nov 2007 */&lt;br /&gt;
.ops,									/* Campaign Ops - Nov 2007 */&lt;br /&gt;
.c-ops {display: none !important;}&lt;br /&gt;
.scnm {display: none !important;}					/* Sealed Container Notorious Monsters - Sept 2008 */&lt;br /&gt;
.synergy {display: none !important;}				/* Synergy - Nov 2009 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || SoA */&lt;br /&gt;
&lt;br /&gt;
.soa {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.moggarden {display: none !important;}				/* Mog Garden - Jul 2013 */&lt;br /&gt;
.monsterrearing {display: none !important;}&lt;br /&gt;
.rearing,								/* Monster Rearing - July 2014 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Addon-on Scenarios */&lt;br /&gt;
&lt;br /&gt;
.acrystallineprophecy {display: none !important;}					/* March 2009 */&lt;br /&gt;
.acp {display: none;}		&lt;br /&gt;
.amooglekupodetat,&lt;br /&gt;
.amkd {display: none !important;}			/* Approx June 2009 */&lt;br /&gt;
.ashantottoascension,&lt;br /&gt;
.asa {display: none !important;}		/* Approx Nov 2009 */&lt;br /&gt;
.rhapsodiesofvanadiel,&lt;br /&gt;
.rov {display: none !important;}		/* May 2015 */&lt;br /&gt;
.thevoraciousresurgence,&lt;br /&gt;
.tvr {display: none !important;}	/* August 2020 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || No associated expansion */&lt;br /&gt;
&lt;br /&gt;
.abyssea {display: none !important;}&lt;br /&gt;
.ambuscade {display: none !important;}&lt;br /&gt;
.augment {display: none !important;}				/* Augments - Apr 2009 */&lt;br /&gt;
.casket, &lt;br /&gt;
.despoil {display:none !important;}/* treasure caskets - Dec 2008 */&lt;br /&gt;
.dominion {display: none !important;}				/* Dominion Ops - Dec 2010 */&lt;br /&gt;
.empyrean {display: none !important;}&lt;br /&gt;
.escutcheons {display: none !important;}            /* escutcheons - 2017 ? */&lt;br /&gt;
.evolith {display:none !important;}&lt;br /&gt;
.fieldsofvalor {display: none !important;}&lt;br /&gt;
.fov,				 					/* fields of valor - Nov 2009 */&lt;br /&gt;
.gobbiemysterybox {display: none !important;}      /* gobbie mystery box - end of 2011 */&lt;br /&gt;
.gov,				  					/* grounds of valor - May 2011 */&lt;br /&gt;
.groundsofvalor {display: none !important;}&lt;br /&gt;
.hkcnm {display: none !important;}					/* High Kindred Crest NM&#039;s - September 2011 */&lt;br /&gt;
.kcnm {display: none !important;}					/* Kindred Crest NM&#039;s - May 2011*/&lt;br /&gt;
.magiantrials {display: none !important;}          /* trials of the magians - ?? */&lt;br /&gt;
.mmm {display: none !important;}					/* Moblin Maze Mongers - Dec 2008 */&lt;br /&gt;
.portermooglelive {display: none !important;}          /* porter moogles to store gear - ?? */&lt;br /&gt;
.recordsofeminence,						/* records/sparks of eminence - Dec 2013 */&lt;br /&gt;
.reforgedrelic {display: none !important;}         /* reforged relic armor - ?? */&lt;br /&gt;
.reforgedartifact {display: none !important;}      /* reforged artifact armor - ?? */&lt;br /&gt;
.reforgedempyrean {display: none !important;}      /* reforged empyrean armor - ?? */&lt;br /&gt;
.roe,&lt;br /&gt;
.skcnm {display: none !important;}					/* Sacred Kindred Crest NM&#039;s - June 2014 */&lt;br /&gt;
.soe {display: none !important;}&lt;br /&gt;
.sparksofeminence,&lt;br /&gt;
.tenshodocoffer {display: none !important;}			/* Tenshodo Coffers - Apr 2009 */&lt;br /&gt;
.treasurecasket {display: none !important;}&lt;br /&gt;
.unity {display: none !important;}                /* unity - ?? */&lt;br /&gt;
.vnm {display: none !important;}&lt;br /&gt;
.voidwatch {display: none !important;}&lt;br /&gt;
.walkofechoes {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
/* || In-era Missing Content */&lt;br /&gt;
&lt;br /&gt;
.brenner {display: none !important;}&lt;br /&gt;
.burrowbore {display: none !important;}&lt;br /&gt;
.egghelmlive {display: none !important;}&lt;br /&gt;
.fellow {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* End of out of era content */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Main CSS class of the tooltip */&lt;br /&gt;
.main-tooltip {&lt;br /&gt;
    border: 1px solid #cac4b5;&lt;br /&gt;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);&lt;br /&gt;
    margin-bottom: 5px;&lt;br /&gt;
    padding: 2px 5px;&lt;br /&gt;
    background-color: #fbeecb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Adds padding to the wrapper to make space for a shadow */&lt;br /&gt;
#tooltip-wrapper {&lt;br /&gt;
    padding: 3px 7px 2px 3px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Hides tooltips with redlinks, not yet loaded ones and elements containing tooltip contents for advanced tooltips */&lt;br /&gt;
.has-redlinks, .tooltip-loading, .advanced-tooltip .tooltip-contents {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tooltips-init-complete {&lt;br /&gt;
    cursor: help;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Align images with text the same way it&#039;s in page content */&lt;br /&gt;
/* Was probably better to play with the classes but that would cause ton of side effects */&lt;br /&gt;
.main-tooltip img {&lt;br /&gt;
    vertical-align: middle;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* General purpose &amp;quot;pretty (data) tables&amp;quot; */&lt;br /&gt;
&lt;br /&gt;
table.job-header th,&lt;br /&gt;
table.job-header td,&lt;br /&gt;
table.job-header tr {&lt;br /&gt;
 width: 100%;&lt;br /&gt;
 height: 40;&lt;br /&gt;
 background-color: #eddce7;&lt;br /&gt;
 vertical-align: top;&lt;br /&gt;
 border: 2px solid #000000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable {&lt;br /&gt;
  background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable th,&lt;br /&gt;
table.datatable td {&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable th {&lt;br /&gt;
  text-align: left;&lt;br /&gt;
  background-color: #d87093;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable tr {&lt;br /&gt;
  background-color: #ccccff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable tr:hover {&lt;br /&gt;
  background-color: #e3e6ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
li #credits {&lt;br /&gt;
  white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.headbare h1,&lt;br /&gt;
.headbare h2 {&lt;br /&gt;
  border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-plusminus-pos {&lt;br /&gt;
  color: #006500;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-plusminus-neg {&lt;br /&gt;
  color: #8B0000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Lists with less indentation */&lt;br /&gt;
.compact-list dd {&lt;br /&gt;
  margin-left: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flush-list dd {&lt;br /&gt;
  margin-left: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Various common tables */&lt;br /&gt;
table.mission-table,&lt;br /&gt;
table.monster-table,&lt;br /&gt;
table.poi-table,&lt;br /&gt;
table.nm-table {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table,&lt;br /&gt;
table.crafting-table-small {&lt;br /&gt;
  max-width: 590px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafthobbies,&lt;br /&gt;
table.crafthobbies-clamming,&lt;br /&gt;
table.crafthobbies-digging,&lt;br /&gt;
table.crafthobbies-excavation,&lt;br /&gt;
table.crafthobbies-fishing,&lt;br /&gt;
table.crafthobbies-gardening,&lt;br /&gt;
table.crafthobbies-harvesting,&lt;br /&gt;
table.crafthobbies-logging,&lt;br /&gt;
table.crafthobbies-mining {&lt;br /&gt;
  max-width: 1180px;&lt;br /&gt;
}&lt;br /&gt;
	&lt;br /&gt;
table.mission-table,&lt;br /&gt;
table.monster-table,&lt;br /&gt;
table.nm-table,&lt;br /&gt;
table.helm-table,&lt;br /&gt;
table.crafting-table {&lt;br /&gt;
  border-spacing: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table {&lt;br /&gt;
  border-spacing: 0;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafthobbies,&lt;br /&gt;
table.crafthobbies-clamming,&lt;br /&gt;
table.crafthobbies-digging,&lt;br /&gt;
table.crafthobbies-excavation,&lt;br /&gt;
table.crafthobbies-fishing,&lt;br /&gt;
table.crafthobbies-gardening,&lt;br /&gt;
table.crafthobbies-harvesting,&lt;br /&gt;
table.crafthobbies-logging,&lt;br /&gt;
table.crafthobbies-mining {&lt;br /&gt;
  border-spacing: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  border: 2px ridge;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.nm-table td,&lt;br /&gt;
table.nm-table th,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table td,&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.spell-table td { &lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table td,&lt;br /&gt;
table.helm-table th,&lt;br /&gt;
table.crafting-table td,&lt;br /&gt;
table.crafting-table th,&lt;br /&gt;
table.crafthobbies td,&lt;br /&gt;
table.crafthobbies th,&lt;br /&gt;
table.crafthobbies-clamming td,&lt;br /&gt;
table.crafthobbies-clamming th,&lt;br /&gt;
table.crafthobbies-digging td,&lt;br /&gt;
table.crafthobbies-digging th,&lt;br /&gt;
table.crafthobbies-excavation td,&lt;br /&gt;
table.crafthobbies-excavation th,&lt;br /&gt;
table.crafthobbies-fishing td,&lt;br /&gt;
table.crafthobbies-fishing th,&lt;br /&gt;
table.crafthobbies-gardening td,&lt;br /&gt;
table.crafthobbies-gardening th,&lt;br /&gt;
table.crafthobbies-harvesting td,&lt;br /&gt;
table.crafthobbies-harvesting th,&lt;br /&gt;
table.crafthobbies-logging td,&lt;br /&gt;
table.crafthobbies-logging th,&lt;br /&gt;
table.crafthobbies-mining td, &lt;br /&gt;
table.crafthobbies-mining th {&lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table td {&lt;br /&gt;
  padding-left: 2ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  padding-left: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafting-table tr,&lt;br /&gt;
table.crafting-table td {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.mission-table td,&lt;br /&gt;
table.mission-table th,&lt;br /&gt;
table.poi-table td,&lt;br /&gt;
table.poi-table th,&lt;br /&gt;
table.monster-table td,&lt;br /&gt;
table.monster-table th,&lt;br /&gt;
table.monster-table tr.ffxi-footer td,&lt;br /&gt;
table.monster-table td.ffxi-footer {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.nm-table td {&lt;br /&gt;
  text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafting-table tr,&lt;br /&gt;
table.crafting-table td {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* weather box on zone pages colors (original colors, not changed yet!!!) */&lt;br /&gt;
.weather-table,&lt;br /&gt;
.weather-table th {&lt;br /&gt;
	background-color: #FFD86F;&lt;br /&gt;
}&lt;br /&gt;
.weather-table td {&lt;br /&gt;
	background-color: #F2EDC0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* colors for zone infobox */&lt;br /&gt;
.zone-infobox-header, .zone-infobox-table th {&lt;br /&gt;
	background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
.zone-infobox-body, .zone-infobox-table td {&lt;br /&gt;
	background-color: #eddce7&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* HELM and crafting table background colors */&lt;br /&gt;
.crafthobbies,&lt;br /&gt;
.crafthobbies th {&lt;br /&gt;
  background-color: #6699CC;&lt;br /&gt;
}&lt;br /&gt;
.crafthobbies tr {&lt;br /&gt;
  background-color: #e9f2fb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Clamming table background colours */&lt;br /&gt;
.clamming-table,&lt;br /&gt;
.clamming-table th,&lt;br /&gt;
.crafthobbies-clamming,&lt;br /&gt;
.crafthobbies-clamming th {&lt;br /&gt;
  background-color: #7fc5c2;&lt;br /&gt;
}&lt;br /&gt;
.clamming-table tr,&lt;br /&gt;
.crafthobbies-clamming tr {&lt;br /&gt;
  background-color: #d7e6e5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Digging table */&lt;br /&gt;
.digging-table,&lt;br /&gt;
.digging-table th,&lt;br /&gt;
.crafthobbies-digging,&lt;br /&gt;
.crafthobbies-digging th {&lt;br /&gt;
  background-color: #8FBC8F;&lt;br /&gt;
  border: 1px solid #609f60 !important;&lt;br /&gt;
}&lt;br /&gt;
.digging-table tr td,&lt;br /&gt;
.crafthobbies-digging tr td {&lt;br /&gt;
  background-color: #e6f0e6;&lt;br /&gt;
  border: 1px solid #609f60 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Excavating table background colours */&lt;br /&gt;
.excavating-table,&lt;br /&gt;
.excavating-table th,&lt;br /&gt;
.crafthobbies-excavation, &lt;br /&gt;
.crafthobbies-excavation th {&lt;br /&gt;
  background-color: #bcae5d;&lt;br /&gt;
}&lt;br /&gt;
.excavating-table tr,&lt;br /&gt;
.crafthobbies-excavation tr {&lt;br /&gt;
  background-color: #edeadc;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.crafthobbies-fishing, &lt;br /&gt;
.crafthobbies-fishing th {&lt;br /&gt;
  background-color: hsl(207, 69%, 60%);&lt;br /&gt;
}&lt;br /&gt;
.crafthobbies-fishing tr {&lt;br /&gt;
  background-color: hsl(235, 100%, 97%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Gardening table background colours */&lt;br /&gt;
.gardening-table,&lt;br /&gt;
.gardening-table th,&lt;br /&gt;
.crafthobbies-gardening, &lt;br /&gt;
.crafthobbies-gardening th {&lt;br /&gt;
  background-color: #836843;&lt;br /&gt;
}&lt;br /&gt;
.gardening-table tr,&lt;br /&gt;
.crafthobbies-gardening tr {&lt;br /&gt;
  background-color: #d9cfc2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Harvesting table background colours */&lt;br /&gt;
.harvesting-table,&lt;br /&gt;
.crafthobbies-harvesting,&lt;br /&gt;
.harvesting-table th,&lt;br /&gt;
.crafthobbies-harvesting th {&lt;br /&gt;
  background-color: #6fa112;&lt;br /&gt;
  border: 1px #838c73 solid !important;&lt;br /&gt;
}&lt;br /&gt;
.harvesting-table tr td,&lt;br /&gt;
.crafthobbies-harvesting tr td {&lt;br /&gt;
  background-color: #f0fbda;&lt;br /&gt;
  border: 1px #838c73 solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Logging table background colours */&lt;br /&gt;
.logging-table,&lt;br /&gt;
.logging-table th,&lt;br /&gt;
.crafthobbies-logging, &lt;br /&gt;
.crafthobbies-logging th {&lt;br /&gt;
  background-color: #857e6b;&lt;br /&gt;
}&lt;br /&gt;
.logging-table tr,&lt;br /&gt;
.crafthobbies-logging tr {&lt;br /&gt;
  background-color: #e2e0da;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Mining table background colours */&lt;br /&gt;
.mining-table,&lt;br /&gt;
.mining-table th,&lt;br /&gt;
.crafthobbies-mining, &lt;br /&gt;
.crafthobbies-mining th {&lt;br /&gt;
  background-color: #b7b7b7;&lt;br /&gt;
}&lt;br /&gt;
.mining-table tr,&lt;br /&gt;
.crafthobbies-mining tr {&lt;br /&gt;
  background-color: #ebebeb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Crafting table background colours */&lt;br /&gt;
table.crafting-table-color,&lt;br /&gt;
table.crafting-table-color th {&lt;br /&gt;
  background-color: #6699CC;&lt;br /&gt;
}&lt;br /&gt;
table.crafting-table-color tr {&lt;br /&gt;
  background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Various table background colors */&lt;br /&gt;
table.mission-table tr,&lt;br /&gt;
table.monster-table tr,&lt;br /&gt;
table tr.bg-blue,&lt;br /&gt;
.bg-blue tr,&lt;br /&gt;
.bg-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.bg-blue-alt tr,&lt;br /&gt;
table tr.bg-blue-alt,&lt;br /&gt;
.bg-blue-alt {&lt;br /&gt;
  background-color: #d5d9ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.monster-table th,&lt;br /&gt;
table.poi-table th,&lt;br /&gt;
table.itm-table th,&lt;br /&gt;
table.gtm-table th,&lt;br /&gt;
table.chocodig-table th,&lt;br /&gt;
table tr.bg-header,&lt;br /&gt;
.bg-header tr,&lt;br /&gt;
.bg-header {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table tr,&lt;br /&gt;
table tr.bg-bright-blue,&lt;br /&gt;
.bg-bright-blue tr,&lt;br /&gt;
.bg-bright-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-mauve,&lt;br /&gt;
.bg-mauve tr,&lt;br /&gt;
.bg-mauve {&lt;br /&gt;
  background-color: #fffcf5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-seablue,&lt;br /&gt;
.bg-seablue tr,&lt;br /&gt;
.bg-seablue {&lt;br /&gt;
  background-color: #66b2ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.chocodig-table tr,&lt;br /&gt;
table tr.bg-cream,&lt;br /&gt;
.bg-cream tr,&lt;br /&gt;
.bg-cream {&lt;br /&gt;
  background-color: #fffacd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spell-table tr,&lt;br /&gt;
table tr.bg-faint-blue,&lt;br /&gt;
.bg-faint-blue tr,&lt;br /&gt;
.bg-faint-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Job Page AF Tables */&lt;br /&gt;
&lt;br /&gt;
table.jobpageAF-table tr {&lt;br /&gt;
  background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.jobpageAF-table th {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
table.artifact-table tr,&lt;br /&gt;
table tr.bg-faint-red,&lt;br /&gt;
.bg-faint-red tr,&lt;br /&gt;
.bg-faint-red {&lt;br /&gt;
  background-color: #ffeaf0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table td,&lt;br /&gt;
table tr.bg-beige,&lt;br /&gt;
.bg-beige tr,&lt;br /&gt;
.bg-beige {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-beige tr,&lt;br /&gt;
.bg-beige {&lt;br /&gt;
  background-color: #4f0d44; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-blue tr,&lt;br /&gt;
.bg-header-blue {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.theme-fandomdesktop-light table.job-table th,&lt;br /&gt;
.theme-fandomdesktop-light table tr.bg-header-blue,&lt;br /&gt;
.bg-header-blue tr,&lt;br /&gt;
.bg-header-blue {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spell-table th,&lt;br /&gt;
table tr.bg-header-purple,&lt;br /&gt;
.bg-header-purple tr,&lt;br /&gt;
.bg-header-purple {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-purple tr,&lt;br /&gt;
.bg-header-purple {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table th,&lt;br /&gt;
table tr.bg-header-beige,&lt;br /&gt;
.bg-header-beige tr,&lt;br /&gt;
.bg-header-beige {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-beige tr,&lt;br /&gt;
.bg-header-beige {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.artifact-table th,&lt;br /&gt;
table tr.bg-header-red,&lt;br /&gt;
.bg-header-red tr,&lt;br /&gt;
.bg-header-red {&lt;br /&gt;
  background-color: #e87093;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.gtm-table tr,&lt;br /&gt;
table.spawn-table tr,&lt;br /&gt;
table.poi-table tr,&lt;br /&gt;
table tr.bg-green,&lt;br /&gt;
.bg-green tr,&lt;br /&gt;
.bg-green {&lt;br /&gt;
  background-color: #c8e6c9;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spawn-table th,&lt;br /&gt;
table tr.bg-dark-green,&lt;br /&gt;
.bg-dark-green tr,&lt;br /&gt;
.bg-dark-green {&lt;br /&gt;
  background-color: #6bf799;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-purple,&lt;br /&gt;
.bg-purple tr,&lt;br /&gt;
.bg-purple {&lt;br /&gt;
  background-color: #e1bee7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.itm-table tr,&lt;br /&gt;
table tr.bg-yellow,&lt;br /&gt;
.bg-yellow tr,&lt;br /&gt;
.bg-yellow {&lt;br /&gt;
  background-color: #f0f4c3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.mission-table th,&lt;br /&gt;
table th.pst-green,&lt;br /&gt;
.pst-green th,&lt;br /&gt;
.pst-green {&lt;br /&gt;
  background-color: #ceffc7;&lt;br /&gt;
}&lt;br /&gt;
.wide-table {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Item page sections and headers */&lt;br /&gt;
.item-header {&lt;br /&gt;
  margin-top: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.showhide {&lt;br /&gt;
  float: right;&lt;br /&gt;
  cursor: pointer;&lt;br /&gt;
  font-size: 67%;&lt;br /&gt;
  font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-header .showhide::before {&lt;br /&gt;
  content: &#039;[show/hide]&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-section .item-header,&lt;br /&gt;
.item-subsection .item-header {&lt;br /&gt;
  margin-right: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-section {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
  display: inline-block;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-subsection {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
  display: inline-block;&lt;br /&gt;
  width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Fix overflow issues on small screens */&lt;br /&gt;
@media screen and (max-width: 1024px) {&lt;br /&gt;
  .item-subsection {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Fix main page column font size */&lt;br /&gt;
.page-Main_Page div#column-one {&lt;br /&gt;
  font-size: 127%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Box with image border */&lt;br /&gt;
.ffxi-border-box {&lt;br /&gt;
  border: 8px solid transparent;&lt;br /&gt;
  border-image: url(https://vignette.wikia.nocookie.net/ffxi/images/f/f8/FFXIbox.png) 8 repeat;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Links that won&#039;t override text color */&lt;br /&gt;
.no-color-links a,&lt;br /&gt;
.no-color-links a:visited {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
}&lt;br /&gt;
/* New-style .js Tooltip appearance */&lt;br /&gt;
.main-tooltip {&lt;br /&gt;
    border: 1px solid #A3B1BF;&lt;br /&gt;
    -moz-border-radius: 10px;&lt;br /&gt;
    padding: 1em;&lt;br /&gt;
    background-color: rgba(163, 177, 191, .8);&lt;br /&gt;
    &lt;br /&gt;
    /* enforce full width for lazy-loaded image tooltips */&lt;br /&gt;
	width: max-content!important;&lt;br /&gt;
}&lt;br /&gt;
/* Hidden categories not hiding */&lt;br /&gt;
.mw-hidden-cats-ns-shown {display: none}&lt;br /&gt;
&lt;br /&gt;
/* would actually use these for sub headers and for the top header #cdccff*/&lt;br /&gt;
.navbox-default-color th {&lt;br /&gt;
	background-color: #ddddff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox-default-color td {&lt;br /&gt;
	background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*******************&lt;br /&gt;
 * LUA Navboxes (to replace existing broken Navbox template)&lt;br /&gt;
 *******************/&lt;br /&gt;
.navbox {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background: white;&lt;br /&gt;
    color: black;&lt;br /&gt;
    margin: 1em auto;&lt;br /&gt;
    font-size: 84%;&lt;br /&gt;
    clear: both;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
    border: 1px solid #AAA;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Merges navboxes that are directly under eachother */&lt;br /&gt;
.navbox + .navbox {&lt;br /&gt;
    margin-top: -11px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title {&lt;br /&gt;
    background: #CCF;&lt;br /&gt;
    color: black;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-vde {&lt;br /&gt;
    float:left;&lt;br /&gt;
    width:65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title-padright {&lt;br /&gt;
    padding-right: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title-padleft {&lt;br /&gt;
    padding-left: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-subgroup {&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-gutter {&lt;br /&gt;
    height: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-subgroup .navbox-gutter {&lt;br /&gt;
    background: white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-section-row &amp;gt; td {&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-section {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-above,&lt;br /&gt;
.navbox .navbox-below {&lt;br /&gt;
    background: #DDF;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-image {&lt;br /&gt;
    background: white;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group,&lt;br /&gt;
.navbox .navbox-header {&lt;br /&gt;
    background: #DDF;&lt;br /&gt;
    color: black;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    padding: 2px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-header-collapsible {&lt;br /&gt;
    padding-left: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group {&lt;br /&gt;
    text-align: right;&lt;br /&gt;
    padding-right: 1em;&lt;br /&gt;
    min-width: 150px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group,&lt;br /&gt;
.navbox .navbox-image-left {&lt;br /&gt;
    border-right: 2px solid white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox-image-right {&lt;br /&gt;
    border-left: 2px solid white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list {&lt;br /&gt;
    background: white;&lt;br /&gt;
    color: black;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .alt &amp;gt; .navbox-list {&lt;br /&gt;
    background: #F7F7F7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list div {&lt;br /&gt;
    padding: 0px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list.no-group {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-top: 2px;&lt;br /&gt;
    padding-bottom: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .mw-collapsible-toggle {&lt;br /&gt;
    width: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* hlist */&lt;br /&gt;
.hlist ul {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    list-style: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li, .hlist ul ul {&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li a {&lt;br /&gt;
    white-space: nowrap;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul:before {&lt;br /&gt;
    content: &amp;quot;(&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul:after {&lt;br /&gt;
    content: &amp;quot;)&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li:after {&lt;br /&gt;
    content: &amp;quot; • &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul li:after {&lt;br /&gt;
    content: &amp;quot;/&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li:last-child:after, .hlist ul ul li:last-child:after {&lt;br /&gt;
    content: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Item page sections and headers */&lt;br /&gt;
&lt;br /&gt;
.item-section, &lt;br /&gt;
.item-subsection {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.showhide {&lt;br /&gt;
  font-size: 13px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-header .showhide::before {&lt;br /&gt;
  content: &#039;show/hide&#039;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.compact-list dl,&lt;br /&gt;
.compact-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flush-list dl,&lt;br /&gt;
.flush-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.digging-table dl {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Infobox template style */&lt;br /&gt;
.infobox {&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
  background-color: #f9f9f9;&lt;br /&gt;
  color: black;&lt;br /&gt;
  margin-bottom: 0.5em;&lt;br /&gt;
  /* margin-left: 0.5em; */&lt;br /&gt;
  padding: 0.2em;&lt;br /&gt;
  float: right;&lt;br /&gt;
  clear: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox td,&lt;br /&gt;
.infobox th {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox caption {&lt;br /&gt;
  font-size: larger;&lt;br /&gt;
  margin-left: inherit;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered {&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered td,&lt;br /&gt;
.infobox.bordered th {&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered .borderless td,&lt;br /&gt;
.infobox.bordered .borderless th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.sisterproject {&lt;br /&gt;
  width: 20em;&lt;br /&gt;
  font-size: 90%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media print {&lt;br /&gt;
  .infobox.sisterproject {&lt;br /&gt;
    display: none;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Styles for bordered infobox with merged rows */&lt;br /&gt;
.infobox.bordered .mergedtoprow td,&lt;br /&gt;
.infobox.bordered .mergedtoprow th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  border-top: 1px solid #aaa;&lt;br /&gt;
  border-right: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered .mergedrow td,&lt;br /&gt;
.infobox.bordered .mergedrow th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  border-right: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Standard Navigations Documentation at [[Wikipedia:NavFrame]]. */&lt;br /&gt;
div.Boxmerge,&lt;br /&gt;
div.NavFrame {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  margin-left: 0em;&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
  border: 0px solid #aaa;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
  font-size: 95%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.Boxmerge div.NavFrame {&lt;br /&gt;
  border-style: none;&lt;br /&gt;
  border-style: hidden;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame + div.NavFrame {&lt;br /&gt;
  border-top-style: none;&lt;br /&gt;
  border-top-style: hidden;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavPic {&lt;br /&gt;
  background-color: #fff;&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 2px;&lt;br /&gt;
  float: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavHead {&lt;br /&gt;
  height: 1em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  background-color: #ccf;&lt;br /&gt;
  position:relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame p {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavContent {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavContent p {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavEnd {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 0px;&lt;br /&gt;
  line-height: 1px;&lt;br /&gt;
  clear: both;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.NavToggle {&lt;br /&gt;
  position:absolute;&lt;br /&gt;
  top:0px;&lt;br /&gt;
  right:3px;&lt;br /&gt;
  font-weight:normal;&lt;br /&gt;
  font-size:smaller;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.Boxmerge,&lt;br /&gt;
div.MainPageNavFrame {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
  border: 0px solid #aaa;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
  font-size: 95%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.MainPageNavFrame div.MainPageNavHead {&lt;br /&gt;
  height: 1.6em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  background-color: transparent;&lt;br /&gt;
  position:relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Template preloads */&lt;br /&gt;
.preload_table {&lt;br /&gt;
  text-align:center;&lt;br /&gt;
  padding:1px;&lt;br /&gt;
  border-spacing: 4px 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.preload_button,&lt;br /&gt;
.preload_button2 {&lt;br /&gt;
  background-color: #ddddee;&lt;br /&gt;
  border: 2px outset #9999bb;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 2px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.preload_button2 {&lt;br /&gt;
  font-size: 110%;&lt;br /&gt;
  background-color: #E0BF1C;&lt;br /&gt;
  border:2px outset #BFb428;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* elemental text templates for Dark Theme */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
span.light-elemental-text {&lt;br /&gt;
  color: #888888;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
span.dark-elemental-text {&lt;br /&gt;
  color: #000000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-bastok {&lt;br /&gt;
  background-color: #88ACE0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-bastok {&lt;br /&gt;
  background-color: #88ACE0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-sandoria {&lt;br /&gt;
  background-color: #FF6666;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-sandoria {&lt;br /&gt;
  background-color: #FF6666;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-windurst {&lt;br /&gt;
  background-color: #BCED91;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-windurst {&lt;br /&gt;
  background-color: #BCED91;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* this section seems to be long to the &amp;lt;infobox&amp;gt; element */&lt;br /&gt;
aside.portable-infobox ol,aside.portable-infobox ul{&lt;br /&gt;
    list-style-position:outside;&lt;br /&gt;
    margin:0 0 0 15px;&lt;br /&gt;
    text-align:initial&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox ol ol,aside.portable-infobox ol ul,aside.portable-infobox ul ol,aside.portable-infobox ul ul{&lt;br /&gt;
    margin-left:3px;&lt;br /&gt;
    margin-top:6px;&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox p,aside.portable-infobox section{&lt;br /&gt;
    margin-bottom:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox h2,aside.portable-infobox h3{&lt;br /&gt;
    border-bottom:0;&lt;br /&gt;
    font-family:inherit;&lt;br /&gt;
    font-weight:700;&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-title{&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:12px 9px;&lt;br /&gt;
    border-top:0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    border-color: rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
.mw-body .mw-parser-output h1:after, .mw-body .mw-parser-output aside.portable-infobox h2:after {&lt;br /&gt;
    border-bottom: 0 none;&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-title p{&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.skin-timeless #mw-content-text .pi-title {&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:12px 9px;&lt;br /&gt;
    border-top:0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.skin-timeless #mw-content-text .pi-title p{&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-body .mw-parser-output h1:after, .mw-body .mw-parser-output aside.portable-infobox h2:after {&lt;br /&gt;
    border-bottom: 0 none;&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-header{&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-data-label{&lt;br /&gt;
    font-size:12px;&lt;br /&gt;
    line-height:1.5&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox{&lt;br /&gt;
    border-radius:3px;&lt;br /&gt;
    border-style:solid;&lt;br /&gt;
    border-width:1px;&lt;br /&gt;
    clear:right;&lt;br /&gt;
    float:right;&lt;br /&gt;
    margin:0 0 18px 18px;&lt;br /&gt;
    width:270px;&lt;br /&gt;
    border-color: rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-item-spacing{&lt;br /&gt;
    padding-bottom:9px;&lt;br /&gt;
    padding-top:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-border-color{&lt;br /&gt;
    border-color:rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
.pi-background{&lt;br /&gt;
    background-color:#ffffff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background{&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+.pi-secondary-background{&lt;br /&gt;
    border-top:1px solid #ffffff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+*&amp;gt;.pi-data:first-child,.pi-secondary-background+.pi-data{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-secondary-background a{&lt;br /&gt;
    color:inherit&lt;br /&gt;
}&lt;br /&gt;
.pi-font{&lt;br /&gt;
    font-size:12px&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-font{&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    font-weight:700;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    margin-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-caption,.pi-data,.pi-header,.pi-navigation,.pi-title{&lt;br /&gt;
    padding-left:9px;&lt;br /&gt;
    padding-right:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-header,.pi-title{&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-data{&lt;br /&gt;
    -webkit-box-orient:horizontal;&lt;br /&gt;
    -webkit-box-direction:normal;&lt;br /&gt;
    grid-column-gap:9px;&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    border-bottom-width: 0;&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box;&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex;&lt;br /&gt;
    flex-direction:row;&lt;br /&gt;
    overflow:hidden&lt;br /&gt;
}&lt;br /&gt;
.pi-image+.pi-data,.pi-image-collection+.pi-data,.pi-secondary-background+.pi-data,aside.portable-infobox&amp;gt;.pi-data:first-child{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-layout-stacked .pi-data{&lt;br /&gt;
    display:block&lt;br /&gt;
}&lt;br /&gt;
.pi-data-label{&lt;br /&gt;
    flex-basis:90px;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    overflow:hidden&lt;br /&gt;
}&lt;br /&gt;
.pi-data-label,.pi-data-value{&lt;br /&gt;
    -webkit-hyphens:auto;&lt;br /&gt;
    hyphens:auto&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value{&lt;br /&gt;
    line-height:1.5;&lt;br /&gt;
    overflow-wrap:break-word&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value&amp;gt;*{&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value:not(:first-child){&lt;br /&gt;
    flex-basis:180px&lt;br /&gt;
}&lt;br /&gt;
.pi-image{&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-image img{&lt;br /&gt;
    height:auto;&lt;br /&gt;
    max-width:100%;&lt;br /&gt;
    vertical-align:middle&lt;br /&gt;
}&lt;br /&gt;
.pi-caption{&lt;br /&gt;
    word-wrap:break-word;&lt;br /&gt;
    color:rgba(58,58,58,.6);&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    font-style:italic;&lt;br /&gt;
    -webkit-hyphens:auto;&lt;br /&gt;
    hyphens:auto;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group{&lt;br /&gt;
    border-collapse:collapse;&lt;br /&gt;
    table-layout:fixed;&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    width:100%&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group .pi-header{&lt;br /&gt;
    display:table-caption;&lt;br /&gt;
    text-align:left&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group .pi-secondary-background+* .pi-horizontal-group-item{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item.pi-data-label{&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    padding:9px 9px 0&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item.pi-data-value{&lt;br /&gt;
    padding:0 9px 9px&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item:not(:first-child){&lt;br /&gt;
    border-left-style:solid;&lt;br /&gt;
    border-left-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group{&lt;br /&gt;
    -webkit-box-orient:vertical;&lt;br /&gt;
    -webkit-box-direction:normal;&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex;&lt;br /&gt;
    flex-direction:column;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-label{&lt;br /&gt;
    margin-bottom:0;&lt;br /&gt;
    padding-bottom:0&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value,.pi-smart-group h3.pi-smart-data-label{&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box;&lt;br /&gt;
    flex-basis:auto;&lt;br /&gt;
    margin:3px 0;&lt;br /&gt;
    padding:6px 9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:not(:first-child),.pi-smart-group h3.pi-smart-data-label:not(:first-child){&lt;br /&gt;
    border-left-style:solid;&lt;br /&gt;
    border-left-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:first-child,.pi-smart-group h3.pi-smart-data-label:first-child{&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:last-child,.pi-smart-group h3.pi-smart-data-label:last-child{&lt;br /&gt;
    padding-right:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group-body,.pi-smart-group-head{&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group-head+.pi-smart-group-body{&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+.pi-smart-group{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed{&lt;br /&gt;
    border-bottom:none&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed .pi-header:first-child:after{&lt;br /&gt;
    -webkit-transform:rotate(135deg);&lt;br /&gt;
    transform:rotate(135deg)&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed .pi-horizontal-group tbody,.pi-collapse.pi-collapse-closed .pi-horizontal-group thead,.pi-collapse.pi-collapse-closed&amp;gt;:nth-child(n+2){&lt;br /&gt;
    display:none&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse .pi-header:first-child{&lt;br /&gt;
    cursor:pointer;&lt;br /&gt;
    padding-right:40px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse .pi-header:first-child:after{&lt;br /&gt;
    border-color:currentcolor;&lt;br /&gt;
    border-style:solid;&lt;br /&gt;
    border-width:2px 2px 0 0;&lt;br /&gt;
    content:&amp;quot;&amp;quot;;&lt;br /&gt;
    display:inline-block;&lt;br /&gt;
    display:block;&lt;br /&gt;
    height:8px;&lt;br /&gt;
    margin-top:-6px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    position:absolute;&lt;br /&gt;
    right:0;&lt;br /&gt;
    right:16px;&lt;br /&gt;
    top:-1px;&lt;br /&gt;
    top:50%;&lt;br /&gt;
    -webkit-transform:rotate(-45deg);&lt;br /&gt;
    transform:rotate(-45deg);&lt;br /&gt;
    -webkit-transition:-webkit-transform .3s;&lt;br /&gt;
    transition:-webkit-transform .3s;&lt;br /&gt;
    transition:transform .3s;&lt;br /&gt;
    transition:transform .3s,-webkit-transform .3s;&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
    width:8px&lt;br /&gt;
}&lt;br /&gt;
.pi-error-info{&lt;br /&gt;
    background-color:var(--theme-alert-color);&lt;br /&gt;
    color:var(--theme-alert-label);&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:28px;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    padding:36px 50px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug{&lt;br /&gt;
    background-color:#f2f2f2;&lt;br /&gt;
    font-family:monospace;&lt;br /&gt;
    list-style-type:none;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    width:100%&lt;br /&gt;
}&lt;br /&gt;
.pi-debug li{&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
.pi-debug .error{&lt;br /&gt;
    font-size:inherit&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line{&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line-code,.pi-debug-line-number{&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line-number{&lt;br /&gt;
    flex-basis:50px;&lt;br /&gt;
    flex-shrink:0;&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message{&lt;br /&gt;
    background-color:#1e0c1b;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-family:Helvetica,Arial,sans-serif;&lt;br /&gt;
    margin:20px 0 10px 25px;&lt;br /&gt;
    padding:9px 13.5px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    width:400px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message:before{&lt;br /&gt;
    border-bottom:18px solid #1e0c1b;&lt;br /&gt;
    border-left:18px solid transparent;&lt;br /&gt;
    border-right:18px solid transparent;&lt;br /&gt;
    content:&amp;quot;&amp;quot;;&lt;br /&gt;
    display:block;&lt;br /&gt;
    height:0;&lt;br /&gt;
    left:25px;&lt;br /&gt;
    position:absolute;&lt;br /&gt;
    top:-18px;&lt;br /&gt;
    width:0&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message .pi-debug-error-message-item{&lt;br /&gt;
    margin:4.5px 0&lt;br /&gt;
}&lt;br /&gt;
.pi-item p {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* infobox magic rework classes */&lt;br /&gt;
.infobox-magic-container {&lt;br /&gt;
    background: #f8f9fa;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    float: right;&lt;br /&gt;
    margin: 0 0 16px 16px;&lt;br /&gt;
    width: 270px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-magic-title {&lt;br /&gt;
	background: #520044;&lt;br /&gt;
    color: #fff;&lt;br /&gt;
    font-size: 18px;&lt;br /&gt;
    line-height: 1.25;&lt;br /&gt;
    padding: 12px 9px;&lt;br /&gt;
    border-top: 0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
table.infobox-magic {&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	width: 100%&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic p {&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic th, &lt;br /&gt;
.infobox-magic td {&lt;br /&gt;
    background: #f8f9fa;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
    font-size: .8em;&lt;br /&gt;
    border: 1px rgba(82,0,68,0.5) solid;&lt;br /&gt;
    padding: 8px;&lt;br /&gt;
    hyphens: auto;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic th {&lt;br /&gt;
	border-right: none;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic td {&lt;br /&gt;
	border-left: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Vana&#039;diel Tribune II table */&lt;br /&gt;
.VTTable {&lt;br /&gt;
  background-color: #D3CEC3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/f/f6/VTBG.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
  background-position: right;&lt;br /&gt;
  background-size: contain;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.VTTitle {&lt;br /&gt;
  background-color: #D3CEC3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/1/12/VTHeaderBG.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Vana&#039;diel Tribune I table */&lt;br /&gt;
.VT1Table {&lt;br /&gt;
  background-color: #E4CDA3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/4/4f/VT1Bg.jpg);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
  background-position: right;&lt;br /&gt;
  background-size: contain;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.VT1Title {&lt;br /&gt;
  background-color: #E4CDA3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/1/12/VT1TableBG3.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.CodeMirror-line::selection, .CodeMirror-line &amp;gt; span::selection, .CodeMirror-line &amp;gt; span &amp;gt; span::selection {&lt;br /&gt;
    background: rgba(109,169,247,0.5);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#discord-chunk {&lt;br /&gt;
    display: none;&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 1100px) and (max-width: 1339px) {&lt;br /&gt;
    #discord-chunk {&lt;br /&gt;
        display: block;&lt;br /&gt;
        margin-top: 0;&lt;br /&gt;
    }&lt;br /&gt;
    #discord-widget {&lt;br /&gt;
    	width: 198px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 1340px) {&lt;br /&gt;
    #discord-chunk {&lt;br /&gt;
        display: block;&lt;br /&gt;
    }&lt;br /&gt;
    #discord-widget {&lt;br /&gt;
    	width: 228px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-modal-background {&lt;br /&gt;
  display: none;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 0;&lt;br /&gt;
  left: 0;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  opacity: .50;&lt;br /&gt;
  -webkit-opacity: .5;&lt;br /&gt;
  -moz-opacity: .5;&lt;br /&gt;
  filter: alpha(opacity=50);&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-modal-content {&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  color: black;&lt;br /&gt;
  border-radius: 10px;&lt;br /&gt;
  -webkit-border-radius: 10px;&lt;br /&gt;
  -moz-border-radius: 10px;&lt;br /&gt;
  box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  -webkit-box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  -moz-box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  display: none;&lt;br /&gt;
  left: 50%;&lt;br /&gt;
  margin: -120px 0 0 -160px;&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 50%;&lt;br /&gt;
  width: 320px;&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
  padding-bottom: 20px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-name-container {&lt;br /&gt;
  box-shadow: inset 0 2px 4px 0 rgba(0,0,0,0.05);&lt;br /&gt;
  background: #ffffff;&lt;br /&gt;
  width: 320px;&lt;br /&gt;
  border: solid 1px #c8ccd1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-name-input {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  margin: 0;&lt;br /&gt;
  height: 2.1em;&lt;br /&gt;
  padding: 0.3em 4.75em 0.2em 1em;&lt;br /&gt;
  box-shadow: none;&lt;br /&gt;
  background: transparent;&lt;br /&gt;
  min-height: 0;&lt;br /&gt;
  width: 233px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-button {&lt;br /&gt;
  border-radius: 0.375rem;&lt;br /&gt;
  background-color: rgb(255 255 255);&lt;br /&gt;
  padding: 0.625rem 0.875rem;&lt;br /&gt;
  font-size: 0.875rem;&lt;br /&gt;
  line-height: 1.25rem;&lt;br /&gt;
  font-weight: 600;&lt;br /&gt;
  color: rgb(17 24 39);&lt;br /&gt;
  filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05));&lt;br /&gt;
  box-shadow: inset 0 0 0 1px rgb(209 213 219);&lt;br /&gt;
  box-sizing: border-box;&lt;br /&gt;
  border-width: 0;&lt;br /&gt;
  border-style: solid;&lt;br /&gt;
  border-color: #e5e7eb;&lt;br /&gt;
  margin-top: 1em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-button:hover {&lt;br /&gt;
  background-color: rgb(249 250 251);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.cm-mw-template-name, .cm-mw-template-argument-name, .cm-mw-template-delimiter, .cm-mw-template-bracket, .cm-mw-template {&lt;br /&gt;
    color: #aa00ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.cm-mw-exttag-bracket, .cm-mw-exttag-attribute, .cm-mw-htmltag-bracket, .cm-mw-htmltag-attribute, .cm-mw-exttag-name, .cm-mw-htmltag-name {&lt;br /&gt;
    color: #10a213;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-container {&lt;br /&gt;
    background-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content {&lt;br /&gt;
    background: rgb(255,255,255,0.90);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#p-logo-text {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#p-logo-text a.long {&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 851px) and (max-width: 1099px) {&lt;br /&gt;
    #p-logo-text a.long {&lt;br /&gt;
        padding-right: 0.5em;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 850px) {&lt;br /&gt;
    #p-logo-text {&lt;br /&gt;
        padding-top: 0.6em;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-changes {&lt;br /&gt;
	display: inline-block;&lt;br /&gt;
	height: 16px;&lt;br /&gt;
	width: 16px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-changes a.image img,&lt;br /&gt;
.horizon-changes img {&lt;br /&gt;
	height: 16px;&lt;br /&gt;
	width: 16px;&lt;br /&gt;
	filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.25));&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-container {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-wrap: nowrap;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-left {&lt;br /&gt;
    flex: 3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-right {&lt;br /&gt;
    flex: 1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-left div.thumbinner {&lt;br /&gt;
	width: 100% !important;&lt;br /&gt;
	max-width: 750px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.stack-fix {&lt;br /&gt;
	position: relative;&lt;br /&gt;
	z-index: 1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* ------------------------------------- */&lt;br /&gt;
/* horizon herald frame code */&lt;br /&gt;
/* note: this frame is coded mobile first. &lt;br /&gt;
   so all these class definitions refer to mobile view&lt;br /&gt;
   desktop view is defined below the @media query min-width: 768px&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
/* Style for the outer container */&lt;br /&gt;
.hh-outer-container {&lt;br /&gt;
   background-color: #eff2f4; /* Light background color */&lt;br /&gt;
  border: 3px solid #78b077; &lt;br /&gt;
  padding: 48px 4px; /* Add padding to create space for the inner container */&lt;br /&gt;
  position: relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the second container */&lt;br /&gt;
.hh-inner-container {&lt;br /&gt;
  background-color: #394451; /* Dark background color */&lt;br /&gt;
  border: 3px solid #78b077; /* Green border */&lt;br /&gt;
  margin: 4px; /* Create space between the outer and inner containers */&lt;br /&gt;
  padding: 4px; /* Add padding to create space for the content container */&lt;br /&gt;
  position: relative;&lt;br /&gt;
  margin-top: 40px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the third container */&lt;br /&gt;
.hh-content-container {&lt;br /&gt;
  background-color: #eff2f4; /* Light background color */&lt;br /&gt;
  border: 3px solid #78b077; /* Green border */&lt;br /&gt;
  margin: 4px; /* Create space between the inner and content containers */&lt;br /&gt;
  padding: 8px; /* Add content padding */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the top right corner div */&lt;br /&gt;
.hh-horizon-signature-container {&lt;br /&gt;
  background-color: #394451; /* dark background */&lt;br /&gt;
  color: #ffffff; /* white Text color */&lt;br /&gt;
  padding: 4px; /* Add padding to the div */&lt;br /&gt;
  z-index: 1; /* Ensure it appears above the inner container */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* small devices */&lt;br /&gt;
/*@media (max-width: 768px) {&lt;br /&gt;
  .hh-horizon-signature-container::after {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    bottom: 0;&lt;br /&gt;
    left: 28px;&lt;br /&gt;
    right: 28px;&lt;br /&gt;
    height: 3px;&lt;br /&gt;
    background-color: #78b077;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-text-container {&lt;br /&gt;
  display: flex;&lt;br /&gt;
  justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-icon {&lt;br /&gt;
  height: 40px;&lt;br /&gt;
  width: 40px;&lt;br /&gt;
  margin: 4px;&lt;br /&gt;
  margin-top: auto;&lt;br /&gt;
  margin-bottom: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-text {&lt;br /&gt;
  margin: auto 8px;&lt;br /&gt;
  font-size: 1.5rem;&lt;br /&gt;
  font-family: hinted-highwind;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the SVG graphic */&lt;br /&gt;
.hh-mandy-svg-container {&lt;br /&gt;
  position: absolute;&lt;br /&gt;
  top: 0;&lt;br /&gt;
  left: 50%;&lt;br /&gt;
  transform: translate3d(-50%, -75%, 0);&lt;br /&gt;
  z-index: 2;&lt;br /&gt;
  min-width: 300px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* reduce top margin for heading */&lt;br /&gt;
.hh-content-heading {&lt;br /&gt;
	margin-top: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-content-author {&lt;br /&gt;
	min-height: 22px;&lt;br /&gt;
	text-align: right;&lt;br /&gt;
	margin-bottom: 0.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* styling for large devices (box to the side) */&lt;br /&gt;
@media (min-width: 768px) {&lt;br /&gt;
&lt;br /&gt;
  /* mode padding on outer container */&lt;br /&gt;
  .hh-outer-container {&lt;br /&gt;
    padding: 48px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* more padding on the inner container */&lt;br /&gt;
  .hh-inner-container {&lt;br /&gt;
	padding: 24px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* more padding on the content container */&lt;br /&gt;
  .hh-content-container {&lt;br /&gt;
  	padding: 16px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* box to the side */&lt;br /&gt;
  .hh-horizon-signature-container {&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    right: 0;&lt;br /&gt;
    padding: 4px 16px;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* draw missing border parts for the box */&lt;br /&gt;
  .hh-horizon-signature-container::before {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    top: 28px; /* padding of the dark container plus something */&lt;br /&gt;
    left: 0;&lt;br /&gt;
    bottom: 0;&lt;br /&gt;
    width: 3px; /* Border width */&lt;br /&gt;
    background-color: #78b077; /* Green color for the border */&lt;br /&gt;
  }&lt;br /&gt;
  .hh-horizon-signature-container::after {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    bottom: 0; /* Offset from the top */&lt;br /&gt;
    left: 0;&lt;br /&gt;
    right: 28px;  /* padding of the dark container plus something */&lt;br /&gt;
    height: 3px; /* Border width */&lt;br /&gt;
    background-color: #78b077; /* Green color for the border */&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* make text bigger and limit box in width */&lt;br /&gt;
  .hh-horizon-signature-text {&lt;br /&gt;
    max-width: 180px;&lt;br /&gt;
    font-size: 2.5rem;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* make icon bigger */&lt;br /&gt;
  .hh-horizon-signature-icon {&lt;br /&gt;
	height: 64px;&lt;br /&gt;
	width: 64px;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* calculate position: subtract half the box add padding back and lower */&lt;br /&gt;
  .hh-mandy-svg-container {&lt;br /&gt;
  	left: calc(50% - 150px + 16px);&lt;br /&gt;
  	transform: translate3d(-50%, -50%, 0);&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* adjust space for the heading to account for the box */&lt;br /&gt;
  .hh-content-heading {&lt;br /&gt;
    width: calc(100% - 300px + 4px + 24px);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* adjust space for author to account for the box */&lt;br /&gt;
  .hh-content-author {&lt;br /&gt;
  	width: calc(100% - 300px + 4px + 24px);&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* incease top padding for content slightly to dodge the box*/&lt;br /&gt;
  .hh-content-body {&lt;br /&gt;
  	padding-top: 8px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* ---------- end of horizon herald code --------- */&lt;br /&gt;
&lt;br /&gt;
/* class for flex container for responsive table code */&lt;br /&gt;
.flex-container {&lt;br /&gt;
	display: flex;&lt;br /&gt;
	flex-wrap: wrap;&lt;br /&gt;
	justify-content: space-between;&lt;br /&gt;
	gap: 32px; /* Gap between items replaces margins */&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-1 {&lt;br /&gt;
	flex-grow: 0;&lt;br /&gt;
	flex-basis: calc(100% - 8px);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-2, .flex-container-item-2-large {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(50% - 16px);  /* 1x 32px gap divided by 2 items: 32/2=16 */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-3 {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(33.33% - 22px); /* 2x 32px gap divided by 3 items: 64/3~21.3 */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-4 {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(25% - 24px);  /* 3x 32px gap divided by 4 items: 96/4=24*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 1024px) { /* 3 items side by side */&lt;br /&gt;
    .flex-container-item-4 {&lt;br /&gt;
	flex-basis: calc(33.33% - 22px); /* 2x 32px gap divided by 3 items: 64/3~21.3 */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 768px) { /* 2 items side by side */&lt;br /&gt;
    .flex-container-item-4, .flex-container-item-3 {&lt;br /&gt;
	flex-basis: calc(50% - 16px);  /* 1x 32px gap divided by 2 items: 32/2=16 */&lt;br /&gt;
    }&lt;br /&gt;
    .flex-container-item-2-large { /* stack all items in large containers */&lt;br /&gt;
        flex-basis: calc(100% - 0px);  /* no gap */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 480px) { /* On smaller screens, stack all items */&lt;br /&gt;
    .flex-container-item-4, .flex-container-item-3, .flex-container-item-2 {&lt;br /&gt;
        flex-basis: calc(100% - 0px);  /* no gap */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* float container for floating elements (also called clearfix) */&lt;br /&gt;
.float-container::after,&lt;br /&gt;
.clearfix::after {&lt;br /&gt;
	content: &amp;quot;&amp;quot;;&lt;br /&gt;
	clear: both;&lt;br /&gt;
	display: table;&lt;br /&gt;
}&lt;br /&gt;
.float-container .float-container-item-left,&lt;br /&gt;
.clearfix .float-container-item-left {&lt;br /&gt;
	float: left;&lt;br /&gt;
	margin-right: 1rem;&lt;br /&gt;
	margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.float-container .float-container-item-right,&lt;br /&gt;
.clearfix .float-container-item-right {&lt;br /&gt;
	float: right;&lt;br /&gt;
	margin-left: 1rem;&lt;br /&gt;
	margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
/* for screens below 400px: let float container items fill entire width */&lt;br /&gt;
@media screen and (max-width: 400px) {&lt;br /&gt;
	.float-container .float-container-item-right,&lt;br /&gt;
	.clearfix .float-container-item-right,&lt;br /&gt;
	.float-container .float-container-item-left,&lt;br /&gt;
	.clearfix .float-container-item-left {&lt;br /&gt;
		width: 100%;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to center content of columns of tables */&lt;br /&gt;
.center-col-1 td:nth-child(1), .center-col-1 th:nth-child(1),&lt;br /&gt;
.center-col-2 td:nth-child(2), .center-col-2 th:nth-child(2),&lt;br /&gt;
.center-col-3 td:nth-child(3), .center-col-3 th:nth-child(3),&lt;br /&gt;
.center-col-4 td:nth-child(4), .center-col-4 th:nth-child(4),&lt;br /&gt;
.center-col-5 td:nth-child(5), .center-col-5 th:nth-child(5), &lt;br /&gt;
.center-col-6 td:nth-child(6), .center-col-6 th:nth-child(6), &lt;br /&gt;
.center-col-7 td:nth-child(7), .center-col-7 th:nth-child(7),&lt;br /&gt;
.center-col-8 td:nth-child(8), .center-col-8 th:nth-child(8) {&lt;br /&gt;
	text-align: center !important; /* supposed to overwrite */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to left align content of columns of tables */&lt;br /&gt;
.left-col-1 td:nth-child(1), .left-col-1 th:nth-child(1),&lt;br /&gt;
.left-col-2 td:nth-child(2), .left-col-2 th:nth-child(2),&lt;br /&gt;
.left-col-3 td:nth-child(3), .left-col-3 th:nth-child(3),&lt;br /&gt;
.left-col-4 td:nth-child(4), .left-col-4 th:nth-child(4),&lt;br /&gt;
.left-col-5 td:nth-child(5), .left-col-5 th:nth-child(5),&lt;br /&gt;
.left-col-6 td:nth-child(6), .left-col-6 th:nth-child(6),&lt;br /&gt;
.left-col-7 td:nth-child(7), .left-col-7 th:nth-child(7),&lt;br /&gt;
.left-col-8 td:nth-child(8), .left-col-8 th:nth-child(8) {&lt;br /&gt;
	text-align: left !important; /* supposed to overwrite */&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to hide content of columns of tables */&lt;br /&gt;
/* headers */&lt;br /&gt;
.hide-col-1 th:nth-child(1) {display: none;}&lt;br /&gt;
.hide-col-2 th:nth-child(2) {display: none;}&lt;br /&gt;
.hide-col-3 th:nth-child(3) {display: none;}&lt;br /&gt;
.hide-col-4 th:nth-child(4) {display: none;}&lt;br /&gt;
.hide-col-5 th:nth-child(5) {display: none;}&lt;br /&gt;
.hide-col-6 th:nth-child(6) {display: none;}&lt;br /&gt;
.hide-col-7 th:nth-child(7) {display: none;}&lt;br /&gt;
.hide-col-8 th:nth-child(8) {display: none;}&lt;br /&gt;
/* cell contents */&lt;br /&gt;
.hide-col-1 td:nth-child(1) {display: none;}&lt;br /&gt;
.hide-col-2 td:nth-child(2) {display: none;}&lt;br /&gt;
.hide-col-3 td:nth-child(3) {display: none;}&lt;br /&gt;
.hide-col-4 td:nth-child(4) {display: none;}&lt;br /&gt;
.hide-col-5 td:nth-child(5) {display: none;}&lt;br /&gt;
.hide-col-6 td:nth-child(6) {display: none;}&lt;br /&gt;
.hide-col-7 td:nth-child(7) {display: none;}&lt;br /&gt;
.hide-col-8 td:nth-child(8) {display: none;}&lt;br /&gt;
&lt;br /&gt;
/* class to set borders on tables to none */&lt;br /&gt;
.no-borders th, &lt;br /&gt;
.no-borders td,&lt;br /&gt;
.no-borders tr,&lt;br /&gt;
.no-borders {&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-th th {&lt;br /&gt;
  border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-td td {&lt;br /&gt;
  border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-tr tr{&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* no borders just for the cells (can still set on table and row */&lt;br /&gt;
.no-borders-cells th, &lt;br /&gt;
.no-borders-cells td {&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* just a helper class to help set text to bold when explicitly using style is not a good option */&lt;br /&gt;
.text-bold {font-weight: bold;}&lt;br /&gt;
&lt;br /&gt;
/* a helper class to suppress the top and bottom margin of child paragraphs */&lt;br /&gt;
.suppress-p-margin p {&lt;br /&gt;
	margin-top: 0;&lt;br /&gt;
	margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* class to make lists take up less space inside tables - NOT WORKING ON SOME BROWSERS */&lt;br /&gt;
/* .tight-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
  padding: 0;&lt;br /&gt;
  list-style-position: inside;&lt;br /&gt;
} */&lt;br /&gt;
/* add a negative space before the element to make it stick tighter to the marker */&lt;br /&gt;
/* .tight-list li::before {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    margin-left: -0.5rem;&lt;br /&gt;
} */&lt;br /&gt;
&lt;br /&gt;
/* give list elements a little more space vertically*/&lt;br /&gt;
.spaced-list li {&lt;br /&gt;
  margin-bottom: 0.3rem;&lt;br /&gt;
  margin-top: 0.3rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.plain-list ul {&lt;br /&gt;
	margin: 0;&lt;br /&gt;
	list-style-type: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul {&lt;br /&gt;
  list-style-type: none; /* Removes default bullet points */&lt;br /&gt;
  margin: 0; /* Removes default margin */&lt;br /&gt;
  padding: 0; /* Removes default padding */&lt;br /&gt;
  overflow: hidden; /* Ensures the list wraps correctly */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li {&lt;br /&gt;
  display: inline-block; /* Makes list items sit next to each other */&lt;br /&gt;
  /* margin-left: 4px; */ /* Adds some space between the list items, adjust as needed */&lt;br /&gt;
  position: relative; /* Needed for positioning the pseudo-element */&lt;br /&gt;
  padding-right: 0.65em; /* Provides space for the custom bullet */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li::after {&lt;br /&gt;
  content: &#039;•&#039;; /* This is your custom bullet */&lt;br /&gt;
  position: absolute;&lt;br /&gt;
  right: 0; /* Adjust accordingly to align the bullet */&lt;br /&gt;
  top: 0; /* Adjust if needed to align vertically with the text */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li:last-child::after {&lt;br /&gt;
  content: none; /* Removes the bullet point from the last list item */&lt;br /&gt;
}&lt;br /&gt;
.horizontal-list ul li:last-child {&lt;br /&gt;
	padding-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* To Top button */&lt;br /&gt;
.mainpage-button-scrollToTop {&lt;br /&gt;
	right: 2%; &lt;br /&gt;
	background: #FFFFFF; &lt;br /&gt;
	opacity: 1; &lt;br /&gt;
	position: fixed; &lt;br /&gt;
	display: none; &lt;br /&gt;
	border-radius: 10px; &lt;br /&gt;
	border: 0.5px solid #a7a7a7; &lt;br /&gt;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* class for area pages where tables are put under headers so their top margin vanishes and they fit nicely */&lt;br /&gt;
.under-zone-section-header {&lt;br /&gt;
	margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.not-restocked,&lt;br /&gt;
tr.not-restocked td {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
}&lt;br /&gt;
tr.not-restocked a,&lt;br /&gt;
tr.not-restocked td {&lt;br /&gt;
	color: grey !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* strikethrough class set on row will show all text as strikethrough */&lt;br /&gt;
tr.strikethrough td {&lt;br /&gt;
    text-decoration: line-through;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.alternate-row-shades tr:nth-child(2n+3) td {&lt;br /&gt;
	filter: brightness(0.96);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* BEGIN DISCORD LOGIN */&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 851px) {&lt;br /&gt;
	#personal {&lt;br /&gt;
		padding-left: 1em;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Layout */&lt;br /&gt;
.flex { display: flex; }&lt;br /&gt;
.items-center { align-items: center; }&lt;br /&gt;
.justify-center { justify-content: center; }&lt;br /&gt;
.min-h-screen { min-height: 100vh; }&lt;br /&gt;
&lt;br /&gt;
/* Spacing */&lt;br /&gt;
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }&lt;br /&gt;
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }&lt;br /&gt;
.mr-2 { margin-right: 0.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* Sizing */&lt;br /&gt;
.h-6 { height: 1.5rem; }&lt;br /&gt;
.w-6 { width: 1.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* Colors */&lt;br /&gt;
.bg-gray-100 { background-color: #f3f4f6; }&lt;br /&gt;
.bg-white { background-color: #ffffff; }&lt;br /&gt;
.text-gray-800 { color: #1f2937; }&lt;br /&gt;
&lt;br /&gt;
/* Border */&lt;br /&gt;
.border { border-width: 1px; border-style: solid; }&lt;br /&gt;
.border-gray-300 { border-color: #d1d5db; }&lt;br /&gt;
.rounded-lg { border-radius: 0.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* Shadow */&lt;br /&gt;
.shadow-md {&lt;br /&gt;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Typography */&lt;br /&gt;
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }&lt;br /&gt;
.font-medium { font-weight: 500; }&lt;br /&gt;
&lt;br /&gt;
/* Hover */&lt;br /&gt;
.hover\:bg-gray-200:hover { background-color: #e5e7eb; }&lt;br /&gt;
&lt;br /&gt;
/* Focus */&lt;br /&gt;
.focus\:outline-none:focus { outline: none; }&lt;br /&gt;
.focus\:ring-2:focus {&lt;br /&gt;
  --ring-shadow: 0 0 0 calc(2px + var(--ring-offset-width, 0px)) var(--ring-color, #6b7280);&lt;br /&gt;
  box-shadow: var(--ring-offset-shadow, 0 0 0 var(--ring-offset-width, 0px) var(--ring-offset-color, #fff)), var(--ring-shadow);&lt;br /&gt;
}&lt;br /&gt;
.focus\:ring-offset-2:focus { --ring-offset-width: 2px; }&lt;br /&gt;
.focus\:ring-gray-500:focus { --ring-color: #6b7280; }&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.css&amp;diff=118975</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.css&amp;diff=118975"/>
		<updated>2026-04-13T18:24:11Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Added some styling for Discord login&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Importing FFXIMap extension associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:FFXIMap_Styles.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Classes for Colors */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:Colors.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Vanatime.js associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:VanaTime.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Special:ASBSearch associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:ASBSearch.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Importing Special:FFXIWeatherForecast associated CSS styling */&lt;br /&gt;
@import url(&amp;quot;/w/index.php?action=raw&amp;amp;ctype=text/css&amp;amp;title=MediaWiki:FFXIWeatherForecast.css&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Start of Table Class Categorisation */&lt;br /&gt;
&lt;br /&gt;
/* class that can be used on divs to mimick table cells for landing page styles */&lt;br /&gt;
.container {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Stylings */&lt;br /&gt;
&lt;br /&gt;
/* || Horizon Table */&lt;br /&gt;
.horizon-table,&lt;br /&gt;
.ffxi-table {&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
	background-color: #f9f9f9;&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	color: black;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table th,&lt;br /&gt;
.ffxi-table th {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table tr,&lt;br /&gt;
.ffxi-table tr {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table td,&lt;br /&gt;
.ffxi-table td {&lt;br /&gt;
	border: 1px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.horizon-table caption,&lt;br /&gt;
.ffxi-table caption {&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* subheader class, can be used in multi class rules to define alternative colors */&lt;br /&gt;
th.subheader, th.subheader-alt {&lt;br /&gt;
	font-weight: normal;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Horizon Table Without Borders */&lt;br /&gt;
.borderless-horizon-table {&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
	background-color: #f9f9f9;&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	color: black;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table th {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table tr {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table td {&lt;br /&gt;
	border: 0px #aaa solid;&lt;br /&gt;
	padding: 0.3em 0.4em;&lt;br /&gt;
}&lt;br /&gt;
.borderless-horizon-table caption {&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Battlefield Table Border Styling */&lt;br /&gt;
.battlefield-table-border table,&lt;br /&gt;
.battlefield-table-border th {&lt;br /&gt;
	border: 1px black solid !important; /* needs to overwrite default border */	&lt;br /&gt;
}&lt;br /&gt;
.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border,&lt;br /&gt;
.enm-table-border {&lt;br /&gt;
	border: 1px black solid; /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.bcnm-table-border th,&lt;br /&gt;
th.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border th,&lt;br /&gt;
th.ksnm-table-border,&lt;br /&gt;
.enm-table-border th,&lt;br /&gt;
th.enm-table-border {&lt;br /&gt;
	border: 1px black solid;  /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bcnm-table-border td, td.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border td, td.ksnm-table-border,&lt;br /&gt;
.enm-table-border td, td.enm-table-border,&lt;br /&gt;
.bcnm-table-border tr, tr.bcnm-table-border,&lt;br /&gt;
.ksnm-table-border tr, tr.ksnm-table-border,&lt;br /&gt;
.enm-table-border tr, tr.enm-table-border&lt;br /&gt;
{&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Table caption helper functions */&lt;br /&gt;
/* set class for caption on top as a big title */&lt;br /&gt;
.caption-title caption {&lt;br /&gt;
    caption-side: top;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* set class for caption at bottom as a footnote */&lt;br /&gt;
.caption-footnote caption {&lt;br /&gt;
    caption-side: bottom;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
    padding: 2px 1em;&lt;br /&gt;
    text-align: left;&lt;br /&gt;
    border: none !important;&lt;br /&gt;
    background-color: transparent !important;&lt;br /&gt;
    color: black !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Widths */&lt;br /&gt;
.table-xxl {&lt;br /&gt;
	max-width: none !important; /* as far as available */&lt;br /&gt;
}&lt;br /&gt;
.table-xl {&lt;br /&gt;
	max-width: 1198px !important;  /* available space of max width of the content container minus paddings */&lt;br /&gt;
}&lt;br /&gt;
.table-lg {&lt;br /&gt;
	max-width: 1018px !important;  /* available space after next breakpoint */&lt;br /&gt;
}&lt;br /&gt;
.table-md { /* THIS IS THE DEFAULT SIZE */&lt;br /&gt;
	max-width: 775px !important;  /* available space after next breakpoint */&lt;br /&gt;
}&lt;br /&gt;
.table-sm {&lt;br /&gt;
	max-width: 576px !important;&lt;br /&gt;
}&lt;br /&gt;
.table-xs {&lt;br /&gt;
	max-width: 400px !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.table-setSize {&lt;br /&gt;
	max-width:800px !important;&lt;br /&gt;
	max-height:600px !important;&lt;br /&gt;
	overflow-y: scroll !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Setting a table inside a cell of another table */&lt;br /&gt;
.inserted-table {&lt;br /&gt;
	margin-top: 0px;&lt;br /&gt;
	margin-bottom: 0px;&lt;br /&gt;
	border-style: hidden;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
	display: inline-table;&lt;br /&gt;
}&lt;br /&gt;
/*.inserted-table tr,&lt;br /&gt;
.inserted-table td {&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}*/&lt;br /&gt;
.inserted-table tr:first-child &amp;gt; td {&lt;br /&gt;
	padding-top: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table tr:last-child &amp;gt; td {&lt;br /&gt;
	padding-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table td:first-child {&lt;br /&gt;
	padding-left: 0;&lt;br /&gt;
}&lt;br /&gt;
.inserted-table td:last-child {&lt;br /&gt;
	padding-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Special Table for the Auction House Navigation */&lt;br /&gt;
.auction-house-navigation-table {&lt;br /&gt;
	margin-top: 0;&lt;br /&gt;
	margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td a {&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table td ul {&lt;br /&gt;
	list-style-type: none;&lt;br /&gt;
	margin: 0.3rem 0.5rem;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table-color th {&lt;br /&gt;
	background-color: #B0C4DE;&lt;br /&gt;
}&lt;br /&gt;
.auction-house-navigation-table-color td {&lt;br /&gt;
	background-color: #5F9EA0;&lt;br /&gt;
}&lt;br /&gt;
.active-category-link,&lt;br /&gt;
.active-category-link a {&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || &lt;br /&gt;
Template:Zone_Section_Header and Template:Zone_Infobox / Template:Zone/Infobox &lt;br /&gt;
use these for zone page designs */&lt;br /&gt;
&lt;br /&gt;
.zone-section-header, .zone-section-body {&lt;br /&gt;
	padding: 4px 8px;&lt;br /&gt;
}&lt;br /&gt;
.zone-section-header, .zone-section-header a {&lt;br /&gt;
	font-size: 1.2rem;&lt;br /&gt;
	font-weight: bold; &lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Global Template Format */&lt;br /&gt;
/* || Template:Quest Styling and Size */&lt;br /&gt;
/* || Horizon Infobox - standard infobox */&lt;br /&gt;
.horizon-infobox {&lt;br /&gt;
    margin: 1em 0;&lt;br /&gt;
    border: 1px #aaa solid;&lt;br /&gt;
    border-collapse: collapse;&lt;br /&gt;
    color: black;&lt;br /&gt;
    max-width: 400px;&lt;br /&gt;
    width: 100%;  /* try to fill the 400px unless the screen is too small */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-infobox th {&lt;br /&gt;
  border: 1px #aaa solid;&lt;br /&gt;
  padding: 0.3em 0.4em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  min-width: 100px; /* width controlled by infobox-xx-yy class but at least 100px to remain readable */&lt;br /&gt;
  text-align: right;&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-infobox td {&lt;br /&gt;
  border: 1px #aaa solid;&lt;br /&gt;
  padding: 0.3em 0.4em;&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* helper class since wiki tables seem not to accept this inline */&lt;br /&gt;
.no-min-width, &lt;br /&gt;
.no-min-width th,&lt;br /&gt;
.no-min-width td {&lt;br /&gt;
	min-width: unset !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.border-none-table,&lt;br /&gt;
.border-none-th th,&lt;br /&gt;
.border-none-td td {&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.align-left-th th {&lt;br /&gt;
	text-align: left !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-50-50 th {&lt;br /&gt;
	width: 50%; /* 50% of the .horizon-infobox size*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-34-66 th {&lt;br /&gt;
	width: 34%; /* 34% of the .horizon-infobox size*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
th.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-header {&lt;br /&gt;
  width:150px; text-align:right; vertical-align:top;&lt;br /&gt;
}&lt;br /&gt;
td.infobox-quest-field,&lt;br /&gt;
tr.infobox-quest-field {&lt;br /&gt;
  vertical-align:top;&lt;br /&gt;
}&lt;br /&gt;
tr.infobox-quest-cutscenes-header {&lt;br /&gt;
  width:150px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-mobs-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--mobs-color-dark);&lt;br /&gt;
	border-color: var(--mobs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-mobs th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--mobs-color-medium-light);&lt;br /&gt;
	border-color: var(--mobs-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs td {&lt;br /&gt;
	background-color: var(--mobs-color-light);&lt;br /&gt;
	border-color: var(--mobs-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs {&lt;br /&gt;
	border: 1px double var(--mobs-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-mobs-thick-border {&lt;br /&gt;
	border: 2px solid var(--mobs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-nms-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--nms-color-dark);&lt;br /&gt;
	border-color: var(--nms-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-nms th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--nms-color-medium-light);&lt;br /&gt;
	border-color: var(--nms-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms td {&lt;br /&gt;
	background-color: var(--nms-color-light);&lt;br /&gt;
	border-color: var(--nms-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms {&lt;br /&gt;
	border: 1px double var(--nms-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-nms-thick-border {&lt;br /&gt;
	border: 2px solid var(--nms-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.infobox-jugs-header th {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
	background-color: var(--jugs-color-dark);&lt;br /&gt;
	border-color: var(--jugs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
.infobox-jugs th {&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	background-color: var(--jugs-color-medium-light);&lt;br /&gt;
	border-color: var(--jugs-color-light);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs td {&lt;br /&gt;
	background-color: var(--jugs-color-light);&lt;br /&gt;
	border-color: var(--jugs-color-light);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs {&lt;br /&gt;
	border: 1px double var(--jugs-color-darkest);	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-jugs-thick-border {&lt;br /&gt;
	border: 2px solid var(--jugs-color-dark);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Simple border Classes */&lt;br /&gt;
&lt;br /&gt;
.border,&lt;br /&gt;
.border th, &lt;br /&gt;
.border tr,&lt;br /&gt;
.border td,&lt;br /&gt;
th.border,&lt;br /&gt;
tr.border, &lt;br /&gt;
td.border {&lt;br /&gt;
	border: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-left,&lt;br /&gt;
.border-left th, &lt;br /&gt;
.border-left tr, &lt;br /&gt;
.border-left td,&lt;br /&gt;
th.border-left,&lt;br /&gt;
tr.border-left, &lt;br /&gt;
td.border-left {&lt;br /&gt;
	border-left: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-right,&lt;br /&gt;
.border-right th,&lt;br /&gt;
.border-right tr, &lt;br /&gt;
.border-right td,&lt;br /&gt;
th.border-right,&lt;br /&gt;
tr.border-right, &lt;br /&gt;
td.border-right {&lt;br /&gt;
	border-right: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-top,&lt;br /&gt;
.border-top th,&lt;br /&gt;
.border-top tr, &lt;br /&gt;
.border-top td,&lt;br /&gt;
th.border-top,&lt;br /&gt;
tr.border-top, &lt;br /&gt;
td.border-top {&lt;br /&gt;
	border-top: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
.border-bottom,&lt;br /&gt;
.border-bottom th, &lt;br /&gt;
.border-bottom tr, &lt;br /&gt;
.border-bottom td,&lt;br /&gt;
th.border-bottom,&lt;br /&gt;
tr.border-bottom, &lt;br /&gt;
td.border-bottom {&lt;br /&gt;
	border-bottom: 1px black solid;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Various Table Colors */&lt;br /&gt;
&lt;br /&gt;
/* || Mission Table Colors */&lt;br /&gt;
&lt;br /&gt;
.infobox-mission th,&lt;br /&gt;
.horizonmissions th {&lt;br /&gt;
	background-color: hsl(319, 32%, 58%); /*#b773a2;*/&lt;br /&gt;
}&lt;br /&gt;
.infobox-mission td,&lt;br /&gt;
.horizonmissions td {&lt;br /&gt;
	background-color: hsl(317, 58%, 95%); /*#faecf6;*/&lt;br /&gt;
}&lt;br /&gt;
tr.infobox-mission.subheader th, &lt;br /&gt;
tr.infobox-mission-alt th,&lt;br /&gt;
tr.horizonmissions-alt th {&lt;br /&gt;
	background-color: hsl(314, 41%, 90%); /*#f0dbeb;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Bastok Missions */&lt;br /&gt;
.bastokmissions th,&lt;br /&gt;
.bastokmissions tr,&lt;br /&gt;
.bastokmissions td {&lt;br /&gt;
	border: 1px hsl(230, 50%, 40%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.bastokmissions th,&lt;br /&gt;
tr.bastokmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.bastokmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(236, 55%, 38%);*/ /*#2b3296;*/&lt;br /&gt;
	background-color: hsl(230, 50%, 40%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.bastokmissions td,&lt;br /&gt;
tr.bastokmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.bastokmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(236, 60%, 95%);*/ /*#ebecfa;*/&lt;br /&gt;
	background-color: hsl(230, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.bastokmissions.subheader th, &lt;br /&gt;
tr.bastokmissions-alt th,&lt;br /&gt;
table.tr.th.bastokmissions-alt {&lt;br /&gt;
	/*background-color: hsl(236, 56%, 70%);*/ /*#888edd;*/&lt;br /&gt;
	background-color: hsl(230, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || San d&#039;Oria Missions */&lt;br /&gt;
.sandoriamissions th,&lt;br /&gt;
.sandoriamissions tr,&lt;br /&gt;
.sandoriamissions td {&lt;br /&gt;
	border: 1px hsl(350, 50%, 40%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.sandoriamissions th,&lt;br /&gt;
tr.sandoriamissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.sandoriamissions { /* highest specificity when set on the th element */&lt;br /&gt;
	/*background-color: hsl(350, 99%, 42%);*/ /*#d60124;*/&lt;br /&gt;
	background-color: hsl(350, 50%, 40%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.sandoriamissions td,&lt;br /&gt;
tr.sandoriamissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.sandoriamissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(348, 100%, 95%);*/ /*#ffe5ea;*/&lt;br /&gt;
	background-color: hsl(350, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.sandoriamissions.subheader th,&lt;br /&gt;
tr.sandoriamissions-alt th,&lt;br /&gt;
table.tr.th.sandoriamissions-alt {&lt;br /&gt;
	/*background-color: hsl(350, 99%, 70%);*/ /*#fe6780;*/&lt;br /&gt;
	background-color: hsl(350, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Windurst Missions */&lt;br /&gt;
.windurstmissions th,&lt;br /&gt;
.windurstmissions tr,&lt;br /&gt;
.windurstmissions td {&lt;br /&gt;
	border: 1px hsl(110, 95%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.windurstmissions th,&lt;br /&gt;
tr.windurstmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.windurstmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(102, 95%, 25%);/* /*#287e03;*/&lt;br /&gt;
	background-color: hsl(110, 95%, 25%);&lt;br /&gt;
	color: white;&lt;br /&gt;
}&lt;br /&gt;
.windurstmissions td,&lt;br /&gt;
tr.windurstmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.windurstmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(103, 92%, 95%);*/ /*#edfee6;*/&lt;br /&gt;
	background-color: hsl(110, 95%, 95%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
tr.windurstmissions.subheader th,&lt;br /&gt;
tr.windurstmissions-alt th,&lt;br /&gt;
table.tr.th.windurstmissions-alt {&lt;br /&gt;
	/*background-color: hsl(102, 95%, 60%);*/ /*#72fa38;*/&lt;br /&gt;
	background-color: hsl(110, 50%, 80%);&lt;br /&gt;
	color: black;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Rise of the Zilart Missions */&lt;br /&gt;
.rotzmissions th,&lt;br /&gt;
tr.rotzmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.rotzmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(30, 48%, 59%); /*#c99866;*/&lt;br /&gt;
}&lt;br /&gt;
.rotzmissions td,&lt;br /&gt;
tr.rotzmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.rotzmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(30, 46%, 95%); /*#f8f2ec;*/&lt;br /&gt;
}&lt;br /&gt;
tr.rotzmissions.subheader th, &lt;br /&gt;
tr.rotzmissions-alt th,&lt;br /&gt;
table.tr.th.rotzmissions-alt {&lt;br /&gt;
	background-color: hsl(30, 48%, 78%); /*#e2c7ac;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Chains of Promathia Missions */&lt;br /&gt;
.copmissions th,&lt;br /&gt;
tr.copmissions th,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.th.copmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	background-color: hsl(206, 32%, 50%); /*#5785a8;*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*.copmissionschapter th {*/&lt;br /&gt;
/*	background-color: #9ab6cb !important;*/&lt;br /&gt;
/*}*/&lt;br /&gt;
&lt;br /&gt;
.copmissions td,&lt;br /&gt;
tr.copmissions td,  /* higher specificity when set on a row */&lt;br /&gt;
table.tr.td.copmissions { /* highest specificity when set on the td element */&lt;br /&gt;
	/*background-color: hsl(203, 31%, 95%);*/ /*#eef3f6;*/&lt;br /&gt;
	background-color: hsl(206, 32%, 95%);&lt;br /&gt;
}&lt;br /&gt;
tr.copmissions.subheader th, &lt;br /&gt;
tr.copmissions-alt th,&lt;br /&gt;
table.tr.th.copmissions-alt {&lt;br /&gt;
	/*background-color: hsl(206, 32%, 70%);*/ /*#9ab6cb;*/&lt;br /&gt;
	background-color: hsl(206, 32%, 70%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Quest Table Colors */&lt;br /&gt;
&lt;br /&gt;
/* || All Quests */&lt;br /&gt;
.quest-table th,&lt;br /&gt;
.infobox-quest th,&lt;br /&gt;
th.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-header,&lt;br /&gt;
tr.infobox-quest-cutscenes-header {&lt;br /&gt;
	background-color: #867ab8;&lt;br /&gt;
}&lt;br /&gt;
.quest-table tr,&lt;br /&gt;
.infobox-quest td,&lt;br /&gt;
td.infobox-quest-field,&lt;br /&gt;
tr.infobox-quest-field {&lt;br /&gt;
	background-color: #f0eef6;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.quest-table th.subheader {&lt;br /&gt;
	background-color: #E4D7E9;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || NPC Table Colors */&lt;br /&gt;
/* || ALL NPCs */&lt;br /&gt;
.npc-table th {&lt;br /&gt;
	background-color: #9acbcb;	&lt;br /&gt;
}&lt;br /&gt;
.npc-table tr {&lt;br /&gt;
	background-color: #eef6f6;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Jobs Abilities Spells */&lt;br /&gt;
.jobs-table th {&lt;br /&gt;
	background-color: #afc7cf;&lt;br /&gt;
}&lt;br /&gt;
.jobs-table td {&lt;br /&gt;
	background-color: #eff4f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Gear */&lt;br /&gt;
.gear-table th {&lt;br /&gt;
	background-color: #6bd0f2;&lt;br /&gt;
}&lt;br /&gt;
.gear-table td {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Monster Colors */&lt;br /&gt;
/* || Regular Mobs and Dropped By Table */&lt;br /&gt;
table tr.mobs, &lt;br /&gt;
.mobs tr,&lt;br /&gt;
.droppedby tr,&lt;br /&gt;
.stolenfrom tr {&lt;br /&gt;
	background-color: hsl(235, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.mobs th,&lt;br /&gt;
.droppedby th,&lt;br /&gt;
.stolenfrom th {&lt;br /&gt;
	background-color: hsl(235, 90%, 75%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Notorious Monsters */&lt;br /&gt;
table.nm-table tr,&lt;br /&gt;
table tr.bg-red,&lt;br /&gt;
table tr.bg-nm,&lt;br /&gt;
table tr.nms,&lt;br /&gt;
.bg-red tr,&lt;br /&gt;
.bg-nm tr,&lt;br /&gt;
.bg-red,&lt;br /&gt;
.bg-nm,&lt;br /&gt;
.nms,&lt;br /&gt;
.nms tr {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(0, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
table.nm-table th,&lt;br /&gt;
.bg-red th,&lt;br /&gt;
.bg-nm th,&lt;br /&gt;
.bg-nm .ffxi-header,&lt;br /&gt;
.bg-nm .ffxi-footer,&lt;br /&gt;
.nms th {&lt;br /&gt;
	background-color: hsl(0, 90%, 75%);&lt;br /&gt;
	border:1px hsl(0, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Mega Bosses */&lt;br /&gt;
table tr.megaboss, &lt;br /&gt;
.megaboss tr {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
.megaboss th {&lt;br /&gt;
	background-color: hsl(0, 90%, 60%) !important;&lt;br /&gt;
	border:1px hsl(235, 90%, 25%) solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Battlefield  */&lt;br /&gt;
/* colors for header elements, to be set on the table and on th cells */&lt;br /&gt;
.battlefield-table th,&lt;br /&gt;
th.bcnm-table, .bcnm-table th,&lt;br /&gt;
th.enm-table, .enm-table th,&lt;br /&gt;
th.ksnm-table, .ksnm-table th&lt;br /&gt;
{&lt;br /&gt;
	background-color: hsl(30, 50%, 65%) !important;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
th.bcnm-table-alt, .bcnm-table-alt th,&lt;br /&gt;
th.ksnm-table-alt, .ksnm-table-alt th,&lt;br /&gt;
th.enm-table-alt, .enm-table-alt th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;&lt;br /&gt;
	border: none;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
tr.battlefield-table.subheader th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;	&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
th.bcnm-table-alt-color, .bcnm-table-alt-color th {&lt;br /&gt;
	background-color: hsl(30, 50%, 90%) !important;	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.battlefield-table td,&lt;br /&gt;
.bcnm-table td,&lt;br /&gt;
.enm-table td,&lt;br /&gt;
.ksnm-table td {&lt;br /&gt;
	background-color: hsl(30, 50%, 95%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.battlefield-table-border td,&lt;br /&gt;
.battlefield-table-border tr,&lt;br /&gt;
.battlefield-table-border.subheader th {&lt;br /&gt;
	border: none !important; /* needs to overwrite default border */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.armorycrate-table {&lt;br /&gt;
	border-color:#678198;&lt;br /&gt;
}&lt;br /&gt;
.armorycrate-table th {&lt;br /&gt;
	background-color:#b3c0cb;&lt;br /&gt;
}&lt;br /&gt;
.armorycrate-table tr {&lt;br /&gt;
	background-color:#f0f2f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Chests/Coffers Tables */&lt;br /&gt;
.treasurecoffer th,&lt;br /&gt;
.treasurechest th {&lt;br /&gt;
	background-color: hsl(48, 9%, 58%) !important;&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
.treasurecoffer tr,&lt;br /&gt;
.treasurechest tr {&lt;br /&gt;
	background-color: hsl(48, 9%, 90%) !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* || Endgame Colors */&lt;br /&gt;
.limbus-color th {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color th.subheader {&lt;br /&gt;
	background-color: #e3f6fd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color th.subheader-alt {&lt;br /&gt;
	background-color: #f2f2f2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.limbus-color td {&lt;br /&gt;
	background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
/* || Page Header Colors */&lt;br /&gt;
.area-header th,&lt;br /&gt;
.bestiary-header th,&lt;br /&gt;
.ffxi-table th,&lt;br /&gt;
.ffxi-header,&lt;br /&gt;
.ffxi-footer,&lt;br /&gt;
.general-table th {&lt;br /&gt;
	background-color:#afc7cf !important;&lt;br /&gt;
}&lt;br /&gt;
.area-header tr,&lt;br /&gt;
.bestiary-header tr,&lt;br /&gt;
.ffxi-table tr,&lt;br /&gt;
.general-table tr {&lt;br /&gt;
	background-color:#eff4f5 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Miscellaneous Colors */&lt;br /&gt;
.editing-table {&lt;br /&gt;
	border-color:#678198;&lt;br /&gt;
}&lt;br /&gt;
.editing-table th {&lt;br /&gt;
	background-color:#b3c0cb;&lt;br /&gt;
}&lt;br /&gt;
.editing-table tr {&lt;br /&gt;
	background-color:#f0f2f5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.table-grey th {&lt;br /&gt;
	background-color: hsl(0, 0%, 80%);&lt;br /&gt;
}&lt;br /&gt;
.table-grey td {&lt;br /&gt;
	background-color: hsl(0, 0%, 95%);&lt;br /&gt;
}&lt;br /&gt;
tr.table-grey.subheader th, &lt;br /&gt;
tr.table-grey-alt th {&lt;br /&gt;
	background-color: hsl(0, 0%, 88%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Event Banner Classes */&lt;br /&gt;
/* For use on the https://horizonffxi.wiki/MediaWiki:Sitenotice page */&lt;br /&gt;
/* Simple wrapper to make images in sitenotice responsive */&lt;br /&gt;
.simple-event-banner-wrapper a &amp;gt; img {&lt;br /&gt;
	max-width: 100%;&lt;br /&gt;
	height: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* alternative, more involved use with a background image and text overlay */&lt;br /&gt;
.event-banner-link {&lt;br /&gt;
    display: block;&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
    color: inherit;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the picture */&lt;br /&gt;
.event-banner-container {&lt;br /&gt;
    background-image: url(https://horizonffxi.wiki/w/images/8/82/HorizonXI_Sun_breeze_2023.png);&lt;br /&gt;
    min-height: 300px; /* Set the minimum desired height for your image */&lt;br /&gt;
    background-repeat: no-repeat;&lt;br /&gt;
    background-size: cover;&lt;br /&gt;
    background-position: center;&lt;br /&gt;
    position: relative;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the overlay */&lt;br /&gt;
.event-banner-overlay {&lt;br /&gt;
    position: absolute;&lt;br /&gt;
        top: 5px; /* Adjust the vertical position as needed to align the overlay to the top */&lt;br /&gt;
        left: 5px; /* Adjust the horizontal position as needed */&lt;br /&gt;
        right: 35%; /* Adjust the horizontal position as needed */&lt;br /&gt;
        background-color: rgba(0, 0, 0, 0.3); /* Adjust the opacity here (0.3 means 30% transparent) */&lt;br /&gt;
        padding: 5px 20px; /* one number for same padding all sizes. two numbers for &amp;quot;y x&amp;quot;. four numbers for &amp;quot;top right bottom left&amp;quot;. see https://www.w3schools.com/css/css_padding.asp */&lt;br /&gt;
        text-align: center;&lt;br /&gt;
        color: #fff; /* Text color for the overlay */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the text */&lt;br /&gt;
.event-banner-text {&lt;br /&gt;
    font-size: 2.5rem;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    font-family: cursive;&lt;br /&gt;
    margin-top: 20px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* the underline comes from mediawiki styling h2. this container controls the size and position of the h2 inside */&lt;br /&gt;
.event-banner-underline-container {&lt;br /&gt;
    margin-left: auto;&lt;br /&gt;
    margin-right: auto;&lt;br /&gt;
    max-width: 700px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 768px) {&lt;br /&gt;
    /* Adjust the styles for screens with a maximum width of 768px */&lt;br /&gt;
    .event-banner-overlay {&lt;br /&gt;
        left: 10%;&lt;br /&gt;
        right: 10%;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 576px) {&lt;br /&gt;
    /* Adjust the styles for screens with a maximum width of 768px */&lt;br /&gt;
    .event-banner-overlay {&lt;br /&gt;
        top: 0;&lt;br /&gt;
        left: 0;&lt;br /&gt;
        right: 0;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.starlight {display: none;}&lt;br /&gt;
.sunbreeze {display: none;}&lt;br /&gt;
/* End of site notice banner */&lt;br /&gt;
&lt;br /&gt;
/* || Missing Content */&lt;br /&gt;
&lt;br /&gt;
.fellow,&lt;br /&gt;
.adventuringfellow {display:none !important;}&lt;br /&gt;
.mogsafetwo {display:none !important;}&lt;br /&gt;
.mogsack {display:none !important;}&lt;br /&gt;
.mogcase {display:none !important;}&lt;br /&gt;
.ballista {display:none !important;}&lt;br /&gt;
.grouptwomerits {display:none !important;}&lt;br /&gt;
.absolutevirtue {display:none !important;}&lt;br /&gt;
.expeditionaryforce {display:none !important;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Out of era content (OOE) - All dates are approximate */&lt;br /&gt;
/* || Treaures of Aht Urghan */&lt;br /&gt;
&lt;br /&gt;
.toau {display: none !important;}					/* Apr 2006 */&lt;br /&gt;
.recipeEra {width:275px;}&lt;br /&gt;
.recipeEra:has(span.toau) {display: none !important; }&lt;br /&gt;
&lt;br /&gt;
.besieged {display: none !important;}				/* Apr 2006 */&lt;br /&gt;
.isnm {display: none !important;}					/* Imperial Standing Notorious Monsters - Jul 2006 */&lt;br /&gt;
.raising {display: none !important;}				/* Chocobo Raising - Aug 2006 */&lt;br /&gt;
.salvage {display: none !important;}				/* Salvage - Dec 2006 */&lt;br /&gt;
.hotandcold {display: none !important;}				/* Chocobo Hot and Cold Game - Dec 2006 */&lt;br /&gt;
.nyzul {display: none !important;}					/* Nyzul Isle Investigation - Mar 2007 */&lt;br /&gt;
.racing {display: none !important;}				/* Chocobo Racing - Mar 2007 */&lt;br /&gt;
.pankration {display: none !important;}				/* Pankration - Sept 2007 */&lt;br /&gt;
.mythic {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.znm {display: none !important;}					/* Zeni Notorious Monsters - Jun 2008 */&lt;br /&gt;
.znm-tier1 {display: none !important;}&lt;br /&gt;
.znm-tier2 {display: none !important;}&lt;br /&gt;
.znm-tier3 {display: none !important;}&lt;br /&gt;
.znm-tier4 {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.assault {display: none !important;}				/* Assault - Apr 2006 */&lt;br /&gt;
.assault-psc {display: none !important;}&lt;br /&gt;
.assault-pfc {display: none !important;}&lt;br /&gt;
.assault-sp {display: none !important;}&lt;br /&gt;
.assault-lc {display: none !important;}&lt;br /&gt;
.assault-c {display: none !important;}&lt;br /&gt;
.assault-s {display: none !important;}&lt;br /&gt;
.assault-sm {display: none !important;}&lt;br /&gt;
.assault-cs {display: none !important;}				/* Chief Sergeant Rank - Mar 2007 */&lt;br /&gt;
.assault-sl {display: none !important;}				/* Second Lieutenant Rank - Jun 2007 */&lt;br /&gt;
.assault-fl {display: none !important;}				/* First Lieutenant Rank - Aug 2007 */&lt;br /&gt;
&lt;br /&gt;
.einherjar {display: none !important;}				/* Einherjar - Jun 2007 */&lt;br /&gt;
.einherjar-wingi {display: none !important;}		&lt;br /&gt;
.einherjar-wingii {display: none !important;}		&lt;br /&gt;
.einherjar-wingiii {display: none !important;}		&lt;br /&gt;
.einherjar-odin {display: none !important;}		&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Wings of the Goddess */&lt;br /&gt;
&lt;br /&gt;
.wotg {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.annm {display: none !important;}					/* Allied Notes Notorious Monsters - Apr 2009 */&lt;br /&gt;
.campaign {display: none !important;}				/* Campaign - Nov 2007 */&lt;br /&gt;
.ops,									/* Campaign Ops - Nov 2007 */&lt;br /&gt;
.c-ops {display: none !important;}&lt;br /&gt;
.scnm {display: none !important;}					/* Sealed Container Notorious Monsters - Sept 2008 */&lt;br /&gt;
.synergy {display: none !important;}				/* Synergy - Nov 2009 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || SoA */&lt;br /&gt;
&lt;br /&gt;
.soa {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
.moggarden {display: none !important;}				/* Mog Garden - Jul 2013 */&lt;br /&gt;
.monsterrearing {display: none !important;}&lt;br /&gt;
.rearing,								/* Monster Rearing - July 2014 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || Addon-on Scenarios */&lt;br /&gt;
&lt;br /&gt;
.acrystallineprophecy {display: none !important;}					/* March 2009 */&lt;br /&gt;
.acp {display: none;}		&lt;br /&gt;
.amooglekupodetat,&lt;br /&gt;
.amkd {display: none !important;}			/* Approx June 2009 */&lt;br /&gt;
.ashantottoascension,&lt;br /&gt;
.asa {display: none !important;}		/* Approx Nov 2009 */&lt;br /&gt;
.rhapsodiesofvanadiel,&lt;br /&gt;
.rov {display: none !important;}		/* May 2015 */&lt;br /&gt;
.thevoraciousresurgence,&lt;br /&gt;
.tvr {display: none !important;}	/* August 2020 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* || No associated expansion */&lt;br /&gt;
&lt;br /&gt;
.abyssea {display: none !important;}&lt;br /&gt;
.ambuscade {display: none !important;}&lt;br /&gt;
.augment {display: none !important;}				/* Augments - Apr 2009 */&lt;br /&gt;
.casket, &lt;br /&gt;
.despoil {display:none !important;}/* treasure caskets - Dec 2008 */&lt;br /&gt;
.dominion {display: none !important;}				/* Dominion Ops - Dec 2010 */&lt;br /&gt;
.empyrean {display: none !important;}&lt;br /&gt;
.escutcheons {display: none !important;}            /* escutcheons - 2017 ? */&lt;br /&gt;
.evolith {display:none !important;}&lt;br /&gt;
.fieldsofvalor {display: none !important;}&lt;br /&gt;
.fov,				 					/* fields of valor - Nov 2009 */&lt;br /&gt;
.gobbiemysterybox {display: none !important;}      /* gobbie mystery box - end of 2011 */&lt;br /&gt;
.gov,				  					/* grounds of valor - May 2011 */&lt;br /&gt;
.groundsofvalor {display: none !important;}&lt;br /&gt;
.hkcnm {display: none !important;}					/* High Kindred Crest NM&#039;s - September 2011 */&lt;br /&gt;
.kcnm {display: none !important;}					/* Kindred Crest NM&#039;s - May 2011*/&lt;br /&gt;
.magiantrials {display: none !important;}          /* trials of the magians - ?? */&lt;br /&gt;
.mmm {display: none !important;}					/* Moblin Maze Mongers - Dec 2008 */&lt;br /&gt;
.portermooglelive {display: none !important;}          /* porter moogles to store gear - ?? */&lt;br /&gt;
.recordsofeminence,						/* records/sparks of eminence - Dec 2013 */&lt;br /&gt;
.reforgedrelic {display: none !important;}         /* reforged relic armor - ?? */&lt;br /&gt;
.reforgedartifact {display: none !important;}      /* reforged artifact armor - ?? */&lt;br /&gt;
.reforgedempyrean {display: none !important;}      /* reforged empyrean armor - ?? */&lt;br /&gt;
.roe,&lt;br /&gt;
.skcnm {display: none !important;}					/* Sacred Kindred Crest NM&#039;s - June 2014 */&lt;br /&gt;
.soe {display: none !important;}&lt;br /&gt;
.sparksofeminence,&lt;br /&gt;
.tenshodocoffer {display: none !important;}			/* Tenshodo Coffers - Apr 2009 */&lt;br /&gt;
.treasurecasket {display: none !important;}&lt;br /&gt;
.unity {display: none !important;}                /* unity - ?? */&lt;br /&gt;
.vnm {display: none !important;}&lt;br /&gt;
.voidwatch {display: none !important;}&lt;br /&gt;
.walkofechoes {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
/* || In-era Missing Content */&lt;br /&gt;
&lt;br /&gt;
.brenner {display: none !important;}&lt;br /&gt;
.burrowbore {display: none !important;}&lt;br /&gt;
.egghelmlive {display: none !important;}&lt;br /&gt;
.fellow {display: none !important;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* End of out of era content */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Main CSS class of the tooltip */&lt;br /&gt;
.main-tooltip {&lt;br /&gt;
    border: 1px solid #cac4b5;&lt;br /&gt;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);&lt;br /&gt;
    margin-bottom: 5px;&lt;br /&gt;
    padding: 2px 5px;&lt;br /&gt;
    background-color: #fbeecb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Adds padding to the wrapper to make space for a shadow */&lt;br /&gt;
#tooltip-wrapper {&lt;br /&gt;
    padding: 3px 7px 2px 3px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Hides tooltips with redlinks, not yet loaded ones and elements containing tooltip contents for advanced tooltips */&lt;br /&gt;
.has-redlinks, .tooltip-loading, .advanced-tooltip .tooltip-contents {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tooltips-init-complete {&lt;br /&gt;
    cursor: help;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Align images with text the same way it&#039;s in page content */&lt;br /&gt;
/* Was probably better to play with the classes but that would cause ton of side effects */&lt;br /&gt;
.main-tooltip img {&lt;br /&gt;
    vertical-align: middle;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* General purpose &amp;quot;pretty (data) tables&amp;quot; */&lt;br /&gt;
&lt;br /&gt;
table.job-header th,&lt;br /&gt;
table.job-header td,&lt;br /&gt;
table.job-header tr {&lt;br /&gt;
 width: 100%;&lt;br /&gt;
 height: 40;&lt;br /&gt;
 background-color: #eddce7;&lt;br /&gt;
 vertical-align: top;&lt;br /&gt;
 border: 2px solid #000000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable {&lt;br /&gt;
  background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable th,&lt;br /&gt;
table.datatable td {&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable th {&lt;br /&gt;
  text-align: left;&lt;br /&gt;
  background-color: #d87093;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable tr {&lt;br /&gt;
  background-color: #ccccff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.datatable tr:hover {&lt;br /&gt;
  background-color: #e3e6ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
li #credits {&lt;br /&gt;
  white-space: normal;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.headbare h1,&lt;br /&gt;
.headbare h2 {&lt;br /&gt;
  border-bottom: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-plusminus-pos {&lt;br /&gt;
  color: #006500;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.mw-plusminus-neg {&lt;br /&gt;
  color: #8B0000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Lists with less indentation */&lt;br /&gt;
.compact-list dd {&lt;br /&gt;
  margin-left: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flush-list dd {&lt;br /&gt;
  margin-left: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Various common tables */&lt;br /&gt;
table.mission-table,&lt;br /&gt;
table.monster-table,&lt;br /&gt;
table.poi-table,&lt;br /&gt;
table.nm-table {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table,&lt;br /&gt;
table.crafting-table-small {&lt;br /&gt;
  max-width: 590px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafthobbies,&lt;br /&gt;
table.crafthobbies-clamming,&lt;br /&gt;
table.crafthobbies-digging,&lt;br /&gt;
table.crafthobbies-excavation,&lt;br /&gt;
table.crafthobbies-fishing,&lt;br /&gt;
table.crafthobbies-gardening,&lt;br /&gt;
table.crafthobbies-harvesting,&lt;br /&gt;
table.crafthobbies-logging,&lt;br /&gt;
table.crafthobbies-mining {&lt;br /&gt;
  max-width: 1180px;&lt;br /&gt;
}&lt;br /&gt;
	&lt;br /&gt;
table.mission-table,&lt;br /&gt;
table.monster-table,&lt;br /&gt;
table.nm-table,&lt;br /&gt;
table.helm-table,&lt;br /&gt;
table.crafting-table {&lt;br /&gt;
  border-spacing: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table {&lt;br /&gt;
  border-spacing: 0;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafthobbies,&lt;br /&gt;
table.crafthobbies-clamming,&lt;br /&gt;
table.crafthobbies-digging,&lt;br /&gt;
table.crafthobbies-excavation,&lt;br /&gt;
table.crafthobbies-fishing,&lt;br /&gt;
table.crafthobbies-gardening,&lt;br /&gt;
table.crafthobbies-harvesting,&lt;br /&gt;
table.crafthobbies-logging,&lt;br /&gt;
table.crafthobbies-mining {&lt;br /&gt;
  border-spacing: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  border: 2px ridge;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.nm-table td,&lt;br /&gt;
table.nm-table th,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table td,&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.spell-table td { &lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table td,&lt;br /&gt;
table.helm-table th,&lt;br /&gt;
table.crafting-table td,&lt;br /&gt;
table.crafting-table th,&lt;br /&gt;
table.crafthobbies td,&lt;br /&gt;
table.crafthobbies th,&lt;br /&gt;
table.crafthobbies-clamming td,&lt;br /&gt;
table.crafthobbies-clamming th,&lt;br /&gt;
table.crafthobbies-digging td,&lt;br /&gt;
table.crafthobbies-digging th,&lt;br /&gt;
table.crafthobbies-excavation td,&lt;br /&gt;
table.crafthobbies-excavation th,&lt;br /&gt;
table.crafthobbies-fishing td,&lt;br /&gt;
table.crafthobbies-fishing th,&lt;br /&gt;
table.crafthobbies-gardening td,&lt;br /&gt;
table.crafthobbies-gardening th,&lt;br /&gt;
table.crafthobbies-harvesting td,&lt;br /&gt;
table.crafthobbies-harvesting th,&lt;br /&gt;
table.crafthobbies-logging td,&lt;br /&gt;
table.crafthobbies-logging th,&lt;br /&gt;
table.crafthobbies-mining td, &lt;br /&gt;
table.crafthobbies-mining th {&lt;br /&gt;
  padding: 5px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.helm-table td {&lt;br /&gt;
  padding-left: 2ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td,&lt;br /&gt;
table.job-table th {&lt;br /&gt;
  padding-left: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table td {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafting-table tr,&lt;br /&gt;
table.crafting-table td {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.mission-table td,&lt;br /&gt;
table.mission-table th,&lt;br /&gt;
table.poi-table td,&lt;br /&gt;
table.poi-table th,&lt;br /&gt;
table.monster-table td,&lt;br /&gt;
table.monster-table th,&lt;br /&gt;
table.monster-table tr.ffxi-footer td,&lt;br /&gt;
table.monster-table td.ffxi-footer {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.nm-table td {&lt;br /&gt;
  text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.crafting-table tr,&lt;br /&gt;
table.crafting-table td {&lt;br /&gt;
  text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* weather box on zone pages colors (original colors, not changed yet!!!) */&lt;br /&gt;
.weather-table,&lt;br /&gt;
.weather-table th {&lt;br /&gt;
	background-color: #FFD86F;&lt;br /&gt;
}&lt;br /&gt;
.weather-table td {&lt;br /&gt;
	background-color: #F2EDC0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* colors for zone infobox */&lt;br /&gt;
.zone-infobox-header, .zone-infobox-table th {&lt;br /&gt;
	background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
.zone-infobox-body, .zone-infobox-table td {&lt;br /&gt;
	background-color: #eddce7&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* HELM and crafting table background colors */&lt;br /&gt;
.crafthobbies,&lt;br /&gt;
.crafthobbies th {&lt;br /&gt;
  background-color: #6699CC;&lt;br /&gt;
}&lt;br /&gt;
.crafthobbies tr {&lt;br /&gt;
  background-color: #e9f2fb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Clamming table background colours */&lt;br /&gt;
.clamming-table,&lt;br /&gt;
.clamming-table th,&lt;br /&gt;
.crafthobbies-clamming,&lt;br /&gt;
.crafthobbies-clamming th {&lt;br /&gt;
  background-color: #7fc5c2;&lt;br /&gt;
}&lt;br /&gt;
.clamming-table tr,&lt;br /&gt;
.crafthobbies-clamming tr {&lt;br /&gt;
  background-color: #d7e6e5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Digging table */&lt;br /&gt;
.digging-table,&lt;br /&gt;
.digging-table th,&lt;br /&gt;
.crafthobbies-digging,&lt;br /&gt;
.crafthobbies-digging th {&lt;br /&gt;
  background-color: #8FBC8F;&lt;br /&gt;
  border: 1px solid #609f60 !important;&lt;br /&gt;
}&lt;br /&gt;
.digging-table tr td,&lt;br /&gt;
.crafthobbies-digging tr td {&lt;br /&gt;
  background-color: #e6f0e6;&lt;br /&gt;
  border: 1px solid #609f60 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Excavating table background colours */&lt;br /&gt;
.excavating-table,&lt;br /&gt;
.excavating-table th,&lt;br /&gt;
.crafthobbies-excavation, &lt;br /&gt;
.crafthobbies-excavation th {&lt;br /&gt;
  background-color: #bcae5d;&lt;br /&gt;
}&lt;br /&gt;
.excavating-table tr,&lt;br /&gt;
.crafthobbies-excavation tr {&lt;br /&gt;
  background-color: #edeadc;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.crafthobbies-fishing, &lt;br /&gt;
.crafthobbies-fishing th {&lt;br /&gt;
  background-color: hsl(207, 69%, 60%);&lt;br /&gt;
}&lt;br /&gt;
.crafthobbies-fishing tr {&lt;br /&gt;
  background-color: hsl(235, 100%, 97%);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Gardening table background colours */&lt;br /&gt;
.gardening-table,&lt;br /&gt;
.gardening-table th,&lt;br /&gt;
.crafthobbies-gardening, &lt;br /&gt;
.crafthobbies-gardening th {&lt;br /&gt;
  background-color: #836843;&lt;br /&gt;
}&lt;br /&gt;
.gardening-table tr,&lt;br /&gt;
.crafthobbies-gardening tr {&lt;br /&gt;
  background-color: #d9cfc2;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Harvesting table background colours */&lt;br /&gt;
.harvesting-table,&lt;br /&gt;
.crafthobbies-harvesting,&lt;br /&gt;
.harvesting-table th,&lt;br /&gt;
.crafthobbies-harvesting th {&lt;br /&gt;
  background-color: #6fa112;&lt;br /&gt;
  border: 1px #838c73 solid !important;&lt;br /&gt;
}&lt;br /&gt;
.harvesting-table tr td,&lt;br /&gt;
.crafthobbies-harvesting tr td {&lt;br /&gt;
  background-color: #f0fbda;&lt;br /&gt;
  border: 1px #838c73 solid !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Logging table background colours */&lt;br /&gt;
.logging-table,&lt;br /&gt;
.logging-table th,&lt;br /&gt;
.crafthobbies-logging, &lt;br /&gt;
.crafthobbies-logging th {&lt;br /&gt;
  background-color: #857e6b;&lt;br /&gt;
}&lt;br /&gt;
.logging-table tr,&lt;br /&gt;
.crafthobbies-logging tr {&lt;br /&gt;
  background-color: #e2e0da;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Mining table background colours */&lt;br /&gt;
.mining-table,&lt;br /&gt;
.mining-table th,&lt;br /&gt;
.crafthobbies-mining, &lt;br /&gt;
.crafthobbies-mining th {&lt;br /&gt;
  background-color: #b7b7b7;&lt;br /&gt;
}&lt;br /&gt;
.mining-table tr,&lt;br /&gt;
.crafthobbies-mining tr {&lt;br /&gt;
  background-color: #ebebeb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Crafting table background colours */&lt;br /&gt;
table.crafting-table-color,&lt;br /&gt;
table.crafting-table-color th {&lt;br /&gt;
  background-color: #6699CC;&lt;br /&gt;
}&lt;br /&gt;
table.crafting-table-color tr {&lt;br /&gt;
  background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Various table background colors */&lt;br /&gt;
table.mission-table tr,&lt;br /&gt;
table.monster-table tr,&lt;br /&gt;
table tr.bg-blue,&lt;br /&gt;
.bg-blue tr,&lt;br /&gt;
.bg-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.bg-blue-alt tr,&lt;br /&gt;
table tr.bg-blue-alt,&lt;br /&gt;
.bg-blue-alt {&lt;br /&gt;
  background-color: #d5d9ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.monster-table th,&lt;br /&gt;
table.poi-table th,&lt;br /&gt;
table.itm-table th,&lt;br /&gt;
table.gtm-table th,&lt;br /&gt;
table.chocodig-table th,&lt;br /&gt;
table tr.bg-header,&lt;br /&gt;
.bg-header tr,&lt;br /&gt;
.bg-header {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.job-table tr,&lt;br /&gt;
table tr.bg-bright-blue,&lt;br /&gt;
.bg-bright-blue tr,&lt;br /&gt;
.bg-bright-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-mauve,&lt;br /&gt;
.bg-mauve tr,&lt;br /&gt;
.bg-mauve {&lt;br /&gt;
  background-color: #fffcf5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-seablue,&lt;br /&gt;
.bg-seablue tr,&lt;br /&gt;
.bg-seablue {&lt;br /&gt;
  background-color: #66b2ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.chocodig-table tr,&lt;br /&gt;
table tr.bg-cream,&lt;br /&gt;
.bg-cream tr,&lt;br /&gt;
.bg-cream {&lt;br /&gt;
  background-color: #fffacd;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spell-table tr,&lt;br /&gt;
table tr.bg-faint-blue,&lt;br /&gt;
.bg-faint-blue tr,&lt;br /&gt;
.bg-faint-blue {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Job Page AF Tables */&lt;br /&gt;
&lt;br /&gt;
table.jobpageAF-table tr {&lt;br /&gt;
  background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.jobpageAF-table th {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
table.artifact-table tr,&lt;br /&gt;
table tr.bg-faint-red,&lt;br /&gt;
.bg-faint-red tr,&lt;br /&gt;
.bg-faint-red {&lt;br /&gt;
  background-color: #ffeaf0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table td,&lt;br /&gt;
table tr.bg-beige,&lt;br /&gt;
.bg-beige tr,&lt;br /&gt;
.bg-beige {&lt;br /&gt;
  background-color: #eddce7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-beige tr,&lt;br /&gt;
.bg-beige {&lt;br /&gt;
  background-color: #4f0d44; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-blue tr,&lt;br /&gt;
.bg-header-blue {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.theme-fandomdesktop-light table.job-table th,&lt;br /&gt;
.theme-fandomdesktop-light table tr.bg-header-blue,&lt;br /&gt;
.bg-header-blue tr,&lt;br /&gt;
.bg-header-blue {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spell-table th,&lt;br /&gt;
table tr.bg-header-purple,&lt;br /&gt;
.bg-header-purple tr,&lt;br /&gt;
.bg-header-purple {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-purple tr,&lt;br /&gt;
.bg-header-purple {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.skill-table th,&lt;br /&gt;
table tr.bg-header-beige,&lt;br /&gt;
.bg-header-beige tr,&lt;br /&gt;
.bg-header-beige {&lt;br /&gt;
  background-color: #bc73a1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.bg-header-beige tr,&lt;br /&gt;
.bg-header-beige {&lt;br /&gt;
  background-color: #3d0b34; color:white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.artifact-table th,&lt;br /&gt;
table tr.bg-header-red,&lt;br /&gt;
.bg-header-red tr,&lt;br /&gt;
.bg-header-red {&lt;br /&gt;
  background-color: #e87093;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.gtm-table tr,&lt;br /&gt;
table.spawn-table tr,&lt;br /&gt;
table.poi-table tr,&lt;br /&gt;
table tr.bg-green,&lt;br /&gt;
.bg-green tr,&lt;br /&gt;
.bg-green {&lt;br /&gt;
  background-color: #c8e6c9;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.spawn-table th,&lt;br /&gt;
table tr.bg-dark-green,&lt;br /&gt;
.bg-dark-green tr,&lt;br /&gt;
.bg-dark-green {&lt;br /&gt;
  background-color: #6bf799;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table tr.bg-purple,&lt;br /&gt;
.bg-purple tr,&lt;br /&gt;
.bg-purple {&lt;br /&gt;
  background-color: #e1bee7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.itm-table tr,&lt;br /&gt;
table tr.bg-yellow,&lt;br /&gt;
.bg-yellow tr,&lt;br /&gt;
.bg-yellow {&lt;br /&gt;
  background-color: #f0f4c3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.mission-table th,&lt;br /&gt;
table th.pst-green,&lt;br /&gt;
.pst-green th,&lt;br /&gt;
.pst-green {&lt;br /&gt;
  background-color: #ceffc7;&lt;br /&gt;
}&lt;br /&gt;
.wide-table {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Item page sections and headers */&lt;br /&gt;
.item-header {&lt;br /&gt;
  margin-top: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.showhide {&lt;br /&gt;
  float: right;&lt;br /&gt;
  cursor: pointer;&lt;br /&gt;
  font-size: 67%;&lt;br /&gt;
  font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-header .showhide::before {&lt;br /&gt;
  content: &#039;[show/hide]&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-section .item-header,&lt;br /&gt;
.item-subsection .item-header {&lt;br /&gt;
  margin-right: 1ex;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-section {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
  display: inline-block;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-subsection {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
  display: inline-block;&lt;br /&gt;
  width: 50%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Fix overflow issues on small screens */&lt;br /&gt;
@media screen and (max-width: 1024px) {&lt;br /&gt;
  .item-subsection {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Fix main page column font size */&lt;br /&gt;
.page-Main_Page div#column-one {&lt;br /&gt;
  font-size: 127%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Box with image border */&lt;br /&gt;
.ffxi-border-box {&lt;br /&gt;
  border: 8px solid transparent;&lt;br /&gt;
  border-image: url(https://vignette.wikia.nocookie.net/ffxi/images/f/f8/FFXIbox.png) 8 repeat;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Links that won&#039;t override text color */&lt;br /&gt;
.no-color-links a,&lt;br /&gt;
.no-color-links a:visited {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
}&lt;br /&gt;
/* New-style .js Tooltip appearance */&lt;br /&gt;
.main-tooltip {&lt;br /&gt;
    border: 1px solid #A3B1BF;&lt;br /&gt;
    -moz-border-radius: 10px;&lt;br /&gt;
    padding: 1em;&lt;br /&gt;
    background-color: rgba(163, 177, 191, .8);&lt;br /&gt;
    &lt;br /&gt;
    /* enforce full width for lazy-loaded image tooltips */&lt;br /&gt;
	width: max-content!important;&lt;br /&gt;
}&lt;br /&gt;
/* Hidden categories not hiding */&lt;br /&gt;
.mw-hidden-cats-ns-shown {display: none}&lt;br /&gt;
&lt;br /&gt;
/* would actually use these for sub headers and for the top header #cdccff*/&lt;br /&gt;
.navbox-default-color th {&lt;br /&gt;
	background-color: #ddddff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox-default-color td {&lt;br /&gt;
	background-color: #ffffff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*******************&lt;br /&gt;
 * LUA Navboxes (to replace existing broken Navbox template)&lt;br /&gt;
 *******************/&lt;br /&gt;
.navbox {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background: white;&lt;br /&gt;
    color: black;&lt;br /&gt;
    margin: 1em auto;&lt;br /&gt;
    font-size: 84%;&lt;br /&gt;
    clear: both;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
    border: 1px solid #AAA;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Merges navboxes that are directly under eachother */&lt;br /&gt;
.navbox + .navbox {&lt;br /&gt;
    margin-top: -11px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title {&lt;br /&gt;
    background: #CCF;&lt;br /&gt;
    color: black;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-vde {&lt;br /&gt;
    float:left;&lt;br /&gt;
    width:65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title-padright {&lt;br /&gt;
    padding-right: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-title-padleft {&lt;br /&gt;
    padding-left: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-subgroup {&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-gutter {&lt;br /&gt;
    height: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-subgroup .navbox-gutter {&lt;br /&gt;
    background: white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-section-row &amp;gt; td {&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-section {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    border-spacing: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-above,&lt;br /&gt;
.navbox .navbox-below {&lt;br /&gt;
    background: #DDF;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-image {&lt;br /&gt;
    background: white;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group,&lt;br /&gt;
.navbox .navbox-header {&lt;br /&gt;
    background: #DDF;&lt;br /&gt;
    color: black;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    padding: 2px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-header-collapsible {&lt;br /&gt;
    padding-left: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group {&lt;br /&gt;
    text-align: right;&lt;br /&gt;
    padding-right: 1em;&lt;br /&gt;
    min-width: 150px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-group,&lt;br /&gt;
.navbox .navbox-image-left {&lt;br /&gt;
    border-right: 2px solid white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox-image-right {&lt;br /&gt;
    border-left: 2px solid white;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list {&lt;br /&gt;
    background: white;&lt;br /&gt;
    color: black;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    height: 100%;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .alt &amp;gt; .navbox-list {&lt;br /&gt;
    background: #F7F7F7;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list div {&lt;br /&gt;
    padding: 0px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .navbox-list.no-group {&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    padding-top: 2px;&lt;br /&gt;
    padding-bottom: 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbox .mw-collapsible-toggle {&lt;br /&gt;
    width: 65px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* hlist */&lt;br /&gt;
.hlist ul {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    list-style: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li, .hlist ul ul {&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li a {&lt;br /&gt;
    white-space: nowrap;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul:before {&lt;br /&gt;
    content: &amp;quot;(&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul:after {&lt;br /&gt;
    content: &amp;quot;)&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li:after {&lt;br /&gt;
    content: &amp;quot; • &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist ul ul li:after {&lt;br /&gt;
    content: &amp;quot;/&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hlist li:last-child:after, .hlist ul ul li:last-child:after {&lt;br /&gt;
    content: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Item page sections and headers */&lt;br /&gt;
&lt;br /&gt;
.item-section, &lt;br /&gt;
.item-subsection {&lt;br /&gt;
  width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.showhide {&lt;br /&gt;
  font-size: 13px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.item-header .showhide::before {&lt;br /&gt;
  content: &#039;show/hide&#039;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.compact-list dl,&lt;br /&gt;
.compact-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flush-list dl,&lt;br /&gt;
.flush-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.digging-table dl {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Infobox template style */&lt;br /&gt;
.infobox {&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
  background-color: #f9f9f9;&lt;br /&gt;
  color: black;&lt;br /&gt;
  margin-bottom: 0.5em;&lt;br /&gt;
  /* margin-left: 0.5em; */&lt;br /&gt;
  padding: 0.2em;&lt;br /&gt;
  float: right;&lt;br /&gt;
  clear: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox td,&lt;br /&gt;
.infobox th {&lt;br /&gt;
  vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox caption {&lt;br /&gt;
  font-size: larger;&lt;br /&gt;
  margin-left: inherit;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered {&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered td,&lt;br /&gt;
.infobox.bordered th {&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered .borderless td,&lt;br /&gt;
.infobox.bordered .borderless th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.sisterproject {&lt;br /&gt;
  width: 20em;&lt;br /&gt;
  font-size: 90%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media print {&lt;br /&gt;
  .infobox.sisterproject {&lt;br /&gt;
    display: none;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Styles for bordered infobox with merged rows */&lt;br /&gt;
.infobox.bordered .mergedtoprow td,&lt;br /&gt;
.infobox.bordered .mergedtoprow th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  border-top: 1px solid #aaa;&lt;br /&gt;
  border-right: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.bordered .mergedrow td,&lt;br /&gt;
.infobox.bordered .mergedrow th {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  border-right: 1px solid #aaa;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Standard Navigations Documentation at [[Wikipedia:NavFrame]]. */&lt;br /&gt;
div.Boxmerge,&lt;br /&gt;
div.NavFrame {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  margin-left: 0em;&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
  border: 0px solid #aaa;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
  font-size: 95%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.Boxmerge div.NavFrame {&lt;br /&gt;
  border-style: none;&lt;br /&gt;
  border-style: hidden;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame + div.NavFrame {&lt;br /&gt;
  border-top-style: none;&lt;br /&gt;
  border-top-style: hidden;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavPic {&lt;br /&gt;
  background-color: #fff;&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 2px;&lt;br /&gt;
  float: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavHead {&lt;br /&gt;
  height: 1em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  background-color: #ccf;&lt;br /&gt;
  position:relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame p {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavContent {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavFrame div.NavContent p {&lt;br /&gt;
  font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.NavEnd {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 0px;&lt;br /&gt;
  line-height: 1px;&lt;br /&gt;
  clear: both;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.NavToggle {&lt;br /&gt;
  position:absolute;&lt;br /&gt;
  top:0px;&lt;br /&gt;
  right:3px;&lt;br /&gt;
  font-weight:normal;&lt;br /&gt;
  font-size:smaller;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.Boxmerge,&lt;br /&gt;
div.MainPageNavFrame {&lt;br /&gt;
  margin: 0px;&lt;br /&gt;
  padding: 4px;&lt;br /&gt;
  border: 0px solid #aaa;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
  font-size: 95%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
div.MainPageNavFrame div.MainPageNavHead {&lt;br /&gt;
  height: 1.6em;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  background-color: transparent;&lt;br /&gt;
  position:relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Template preloads */&lt;br /&gt;
.preload_table {&lt;br /&gt;
  text-align:center;&lt;br /&gt;
  padding:1px;&lt;br /&gt;
  border-spacing: 4px 2px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.preload_button,&lt;br /&gt;
.preload_button2 {&lt;br /&gt;
  background-color: #ddddee;&lt;br /&gt;
  border: 2px outset #9999bb;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 2px 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.preload_button2 {&lt;br /&gt;
  font-size: 110%;&lt;br /&gt;
  background-color: #E0BF1C;&lt;br /&gt;
  border:2px outset #BFb428;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* elemental text templates for Dark Theme */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
span.light-elemental-text {&lt;br /&gt;
  color: #888888;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
span.dark-elemental-text {&lt;br /&gt;
  color: #000000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-bastok {&lt;br /&gt;
  background-color: #88ACE0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-bastok {&lt;br /&gt;
  background-color: #88ACE0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-sandoria {&lt;br /&gt;
  background-color: #FF6666;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-sandoria {&lt;br /&gt;
  background-color: #FF6666;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
td.nation-color-highlight-windurst {&lt;br /&gt;
  background-color: #BCED91;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
span.nation-color-highlight-windurst {&lt;br /&gt;
  background-color: #BCED91;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* this section seems to be long to the &amp;lt;infobox&amp;gt; element */&lt;br /&gt;
aside.portable-infobox ol,aside.portable-infobox ul{&lt;br /&gt;
    list-style-position:outside;&lt;br /&gt;
    margin:0 0 0 15px;&lt;br /&gt;
    text-align:initial&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox ol ol,aside.portable-infobox ol ul,aside.portable-infobox ul ol,aside.portable-infobox ul ul{&lt;br /&gt;
    margin-left:3px;&lt;br /&gt;
    margin-top:6px;&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox p,aside.portable-infobox section{&lt;br /&gt;
    margin-bottom:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox h2,aside.portable-infobox h3{&lt;br /&gt;
    border-bottom:0;&lt;br /&gt;
    font-family:inherit;&lt;br /&gt;
    font-weight:700;&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-title{&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:12px 9px;&lt;br /&gt;
    border-top:0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    border-color: rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
.mw-body .mw-parser-output h1:after, .mw-body .mw-parser-output aside.portable-infobox h2:after {&lt;br /&gt;
    border-bottom: 0 none;&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-title p{&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.skin-timeless #mw-content-text .pi-title {&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:12px 9px;&lt;br /&gt;
    border-top:0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.skin-timeless #mw-content-text .pi-title p{&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.mw-body .mw-parser-output h1:after, .mw-body .mw-parser-output aside.portable-infobox h2:after {&lt;br /&gt;
    border-bottom: 0 none;&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-header{&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    padding:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-data-label{&lt;br /&gt;
    font-size:12px;&lt;br /&gt;
    line-height:1.5&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox{&lt;br /&gt;
    border-radius:3px;&lt;br /&gt;
    border-style:solid;&lt;br /&gt;
    border-width:1px;&lt;br /&gt;
    clear:right;&lt;br /&gt;
    float:right;&lt;br /&gt;
    margin:0 0 18px 18px;&lt;br /&gt;
    width:270px;&lt;br /&gt;
    border-color: rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-item-spacing{&lt;br /&gt;
    padding-bottom:9px;&lt;br /&gt;
    padding-top:9px&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-border-color{&lt;br /&gt;
    border-color:rgba(82,0,68,0.5);&lt;br /&gt;
}&lt;br /&gt;
.pi-background{&lt;br /&gt;
    background-color:#ffffff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background{&lt;br /&gt;
    background:#520044;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+.pi-secondary-background{&lt;br /&gt;
    border-top:1px solid #ffffff;&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+*&amp;gt;.pi-data:first-child,.pi-secondary-background+.pi-data{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
aside.portable-infobox .pi-secondary-background a{&lt;br /&gt;
    color:inherit&lt;br /&gt;
}&lt;br /&gt;
.pi-font{&lt;br /&gt;
    font-size:12px&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-font{&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    font-weight:700;&lt;br /&gt;
    line-height:1.25;&lt;br /&gt;
    margin-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-caption,.pi-data,.pi-header,.pi-navigation,.pi-title{&lt;br /&gt;
    padding-left:9px;&lt;br /&gt;
    padding-right:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-header,.pi-title{&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-data{&lt;br /&gt;
    -webkit-box-orient:horizontal;&lt;br /&gt;
    -webkit-box-direction:normal;&lt;br /&gt;
    grid-column-gap:9px;&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    border-bottom-width: 0;&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box;&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex;&lt;br /&gt;
    flex-direction:row;&lt;br /&gt;
    overflow:hidden&lt;br /&gt;
}&lt;br /&gt;
.pi-image+.pi-data,.pi-image-collection+.pi-data,.pi-secondary-background+.pi-data,aside.portable-infobox&amp;gt;.pi-data:first-child{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-layout-stacked .pi-data{&lt;br /&gt;
    display:block&lt;br /&gt;
}&lt;br /&gt;
.pi-data-label{&lt;br /&gt;
    flex-basis:90px;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    overflow:hidden&lt;br /&gt;
}&lt;br /&gt;
.pi-data-label,.pi-data-value{&lt;br /&gt;
    -webkit-hyphens:auto;&lt;br /&gt;
    hyphens:auto&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value{&lt;br /&gt;
    line-height:1.5;&lt;br /&gt;
    overflow-wrap:break-word&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value&amp;gt;*{&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
.pi-data-value:not(:first-child){&lt;br /&gt;
    flex-basis:180px&lt;br /&gt;
}&lt;br /&gt;
.pi-image{&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-image img{&lt;br /&gt;
    height:auto;&lt;br /&gt;
    max-width:100%;&lt;br /&gt;
    vertical-align:middle&lt;br /&gt;
}&lt;br /&gt;
.pi-caption{&lt;br /&gt;
    word-wrap:break-word;&lt;br /&gt;
    color:rgba(58,58,58,.6);&lt;br /&gt;
    font-size:14px;&lt;br /&gt;
    font-style:italic;&lt;br /&gt;
    -webkit-hyphens:auto;&lt;br /&gt;
    hyphens:auto;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group{&lt;br /&gt;
    border-collapse:collapse;&lt;br /&gt;
    table-layout:fixed;&lt;br /&gt;
    text-align:center;&lt;br /&gt;
    width:100%&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group .pi-header{&lt;br /&gt;
    display:table-caption;&lt;br /&gt;
    text-align:left&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group .pi-secondary-background+* .pi-horizontal-group-item{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item.pi-data-label{&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    padding:9px 9px 0&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item.pi-data-value{&lt;br /&gt;
    padding:0 9px 9px&lt;br /&gt;
}&lt;br /&gt;
.pi-horizontal-group-item:not(:first-child){&lt;br /&gt;
    border-left-style:solid;&lt;br /&gt;
    border-left-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group{&lt;br /&gt;
    -webkit-box-orient:vertical;&lt;br /&gt;
    -webkit-box-direction:normal;&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px;&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex;&lt;br /&gt;
    flex-direction:column;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-label{&lt;br /&gt;
    margin-bottom:0;&lt;br /&gt;
    padding-bottom:0&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value,.pi-smart-group h3.pi-smart-data-label{&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box;&lt;br /&gt;
    flex-basis:auto;&lt;br /&gt;
    margin:3px 0;&lt;br /&gt;
    padding:6px 9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:not(:first-child),.pi-smart-group h3.pi-smart-data-label:not(:first-child){&lt;br /&gt;
    border-left-style:solid;&lt;br /&gt;
    border-left-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:first-child,.pi-smart-group h3.pi-smart-data-label:first-child{&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group .pi-smart-data-value:last-child,.pi-smart-group h3.pi-smart-data-label:last-child{&lt;br /&gt;
    padding-right:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group-body,.pi-smart-group-head{&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex&lt;br /&gt;
}&lt;br /&gt;
.pi-smart-group-head+.pi-smart-group-body{&lt;br /&gt;
    border-top-style:solid;&lt;br /&gt;
    border-top-width:1px&lt;br /&gt;
}&lt;br /&gt;
.pi-secondary-background+.pi-smart-group{&lt;br /&gt;
    border-top:0&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed{&lt;br /&gt;
    border-bottom:none&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed .pi-header:first-child:after{&lt;br /&gt;
    -webkit-transform:rotate(135deg);&lt;br /&gt;
    transform:rotate(135deg)&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse.pi-collapse-closed .pi-horizontal-group tbody,.pi-collapse.pi-collapse-closed .pi-horizontal-group thead,.pi-collapse.pi-collapse-closed&amp;gt;:nth-child(n+2){&lt;br /&gt;
    display:none&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse .pi-header:first-child{&lt;br /&gt;
    cursor:pointer;&lt;br /&gt;
    padding-right:40px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    text-align:center&lt;br /&gt;
}&lt;br /&gt;
.pi-collapse .pi-header:first-child:after{&lt;br /&gt;
    border-color:currentcolor;&lt;br /&gt;
    border-style:solid;&lt;br /&gt;
    border-width:2px 2px 0 0;&lt;br /&gt;
    content:&amp;quot;&amp;quot;;&lt;br /&gt;
    display:inline-block;&lt;br /&gt;
    display:block;&lt;br /&gt;
    height:8px;&lt;br /&gt;
    margin-top:-6px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    position:absolute;&lt;br /&gt;
    right:0;&lt;br /&gt;
    right:16px;&lt;br /&gt;
    top:-1px;&lt;br /&gt;
    top:50%;&lt;br /&gt;
    -webkit-transform:rotate(-45deg);&lt;br /&gt;
    transform:rotate(-45deg);&lt;br /&gt;
    -webkit-transition:-webkit-transform .3s;&lt;br /&gt;
    transition:-webkit-transform .3s;&lt;br /&gt;
    transition:transform .3s;&lt;br /&gt;
    transition:transform .3s,-webkit-transform .3s;&lt;br /&gt;
    vertical-align:middle;&lt;br /&gt;
    width:8px&lt;br /&gt;
}&lt;br /&gt;
.pi-error-info{&lt;br /&gt;
    background-color:var(--theme-alert-color);&lt;br /&gt;
    color:var(--theme-alert-label);&lt;br /&gt;
    font-size:18px;&lt;br /&gt;
    line-height:28px;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    padding:36px 50px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug{&lt;br /&gt;
    background-color:#f2f2f2;&lt;br /&gt;
    font-family:monospace;&lt;br /&gt;
    list-style-type:none;&lt;br /&gt;
    margin:0;&lt;br /&gt;
    width:100%&lt;br /&gt;
}&lt;br /&gt;
.pi-debug li{&lt;br /&gt;
    margin:0&lt;br /&gt;
}&lt;br /&gt;
.pi-debug .error{&lt;br /&gt;
    font-size:inherit&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line{&lt;br /&gt;
    display:-webkit-box;&lt;br /&gt;
    display:flex&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line-code,.pi-debug-line-number{&lt;br /&gt;
    -webkit-box-sizing:border-box;&lt;br /&gt;
    box-sizing:border-box&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-line-number{&lt;br /&gt;
    flex-basis:50px;&lt;br /&gt;
    flex-shrink:0;&lt;br /&gt;
    padding-left:9px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message{&lt;br /&gt;
    background-color:#1e0c1b;&lt;br /&gt;
    color:#fff;&lt;br /&gt;
    font-family:Helvetica,Arial,sans-serif;&lt;br /&gt;
    margin:20px 0 10px 25px;&lt;br /&gt;
    padding:9px 13.5px;&lt;br /&gt;
    position:relative;&lt;br /&gt;
    width:400px&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message:before{&lt;br /&gt;
    border-bottom:18px solid #1e0c1b;&lt;br /&gt;
    border-left:18px solid transparent;&lt;br /&gt;
    border-right:18px solid transparent;&lt;br /&gt;
    content:&amp;quot;&amp;quot;;&lt;br /&gt;
    display:block;&lt;br /&gt;
    height:0;&lt;br /&gt;
    left:25px;&lt;br /&gt;
    position:absolute;&lt;br /&gt;
    top:-18px;&lt;br /&gt;
    width:0&lt;br /&gt;
}&lt;br /&gt;
.pi-debug-error-message .pi-debug-error-message-item{&lt;br /&gt;
    margin:4.5px 0&lt;br /&gt;
}&lt;br /&gt;
.pi-item p {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* infobox magic rework classes */&lt;br /&gt;
.infobox-magic-container {&lt;br /&gt;
    background: #f8f9fa;&lt;br /&gt;
    clear: right;&lt;br /&gt;
    float: right;&lt;br /&gt;
    margin: 0 0 16px 16px;&lt;br /&gt;
    width: 270px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-magic-title {&lt;br /&gt;
	background: #520044;&lt;br /&gt;
    color: #fff;&lt;br /&gt;
    font-size: 18px;&lt;br /&gt;
    line-height: 1.25;&lt;br /&gt;
    padding: 12px 9px;&lt;br /&gt;
    border-top: 0;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
table.infobox-magic {&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	width: 100%&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic p {&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic th, &lt;br /&gt;
.infobox-magic td {&lt;br /&gt;
    background: #f8f9fa;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
    font-size: .8em;&lt;br /&gt;
    border: 1px rgba(82,0,68,0.5) solid;&lt;br /&gt;
    padding: 8px;&lt;br /&gt;
    hyphens: auto;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic th {&lt;br /&gt;
	border-right: none;&lt;br /&gt;
}&lt;br /&gt;
.infobox-magic td {&lt;br /&gt;
	border-left: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Vana&#039;diel Tribune II table */&lt;br /&gt;
.VTTable {&lt;br /&gt;
  background-color: #D3CEC3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/f/f6/VTBG.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
  background-position: right;&lt;br /&gt;
  background-size: contain;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.VTTitle {&lt;br /&gt;
  background-color: #D3CEC3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/1/12/VTHeaderBG.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Vana&#039;diel Tribune I table */&lt;br /&gt;
.VT1Table {&lt;br /&gt;
  background-color: #E4CDA3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/4/4f/VT1Bg.jpg);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
  background-position: right;&lt;br /&gt;
  background-size: contain;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.VT1Title {&lt;br /&gt;
  background-color: #E4CDA3;&lt;br /&gt;
  background-image: url(https://images.wikia.nocookie.net/ffxi/images/1/12/VT1TableBG3.PNG);&lt;br /&gt;
  background-repeat: repeat-y;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.CodeMirror-line::selection, .CodeMirror-line &amp;gt; span::selection, .CodeMirror-line &amp;gt; span &amp;gt; span::selection {&lt;br /&gt;
    background: rgba(109,169,247,0.5);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#discord-chunk {&lt;br /&gt;
    display: none;&lt;br /&gt;
	margin: 1em 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 1100px) and (max-width: 1339px) {&lt;br /&gt;
    #discord-chunk {&lt;br /&gt;
        display: block;&lt;br /&gt;
        margin-top: 0;&lt;br /&gt;
    }&lt;br /&gt;
    #discord-widget {&lt;br /&gt;
    	width: 198px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 1340px) {&lt;br /&gt;
    #discord-chunk {&lt;br /&gt;
        display: block;&lt;br /&gt;
    }&lt;br /&gt;
    #discord-widget {&lt;br /&gt;
    	width: 228px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-modal-background {&lt;br /&gt;
  display: none;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 0;&lt;br /&gt;
  left: 0;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  opacity: .50;&lt;br /&gt;
  -webkit-opacity: .5;&lt;br /&gt;
  -moz-opacity: .5;&lt;br /&gt;
  filter: alpha(opacity=50);&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-modal-content {&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  color: black;&lt;br /&gt;
  border-radius: 10px;&lt;br /&gt;
  -webkit-border-radius: 10px;&lt;br /&gt;
  -moz-border-radius: 10px;&lt;br /&gt;
  box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  -webkit-box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  -moz-box-shadow: 0 0 20px 0 #222;&lt;br /&gt;
  display: none;&lt;br /&gt;
  left: 50%;&lt;br /&gt;
  margin: -120px 0 0 -160px;&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 50%;&lt;br /&gt;
  width: 320px;&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
  padding-bottom: 20px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-name-container {&lt;br /&gt;
  box-shadow: inset 0 2px 4px 0 rgba(0,0,0,0.05);&lt;br /&gt;
  background: #ffffff;&lt;br /&gt;
  width: 320px;&lt;br /&gt;
  border: solid 1px #c8ccd1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-name-input {&lt;br /&gt;
  border: 0;&lt;br /&gt;
  margin: 0;&lt;br /&gt;
  height: 2.1em;&lt;br /&gt;
  padding: 0.3em 4.75em 0.2em 1em;&lt;br /&gt;
  box-shadow: none;&lt;br /&gt;
  background: transparent;&lt;br /&gt;
  min-height: 0;&lt;br /&gt;
  width: 233px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-button {&lt;br /&gt;
  border-radius: 0.375rem;&lt;br /&gt;
  background-color: rgb(255 255 255);&lt;br /&gt;
  padding: 0.625rem 0.875rem;&lt;br /&gt;
  font-size: 0.875rem;&lt;br /&gt;
  line-height: 1.25rem;&lt;br /&gt;
  font-weight: 600;&lt;br /&gt;
  color: rgb(17 24 39);&lt;br /&gt;
  filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05));&lt;br /&gt;
  box-shadow: inset 0 0 0 1px rgb(209 213 219);&lt;br /&gt;
  box-sizing: border-box;&lt;br /&gt;
  border-width: 0;&lt;br /&gt;
  border-style: solid;&lt;br /&gt;
  border-color: #e5e7eb;&lt;br /&gt;
  margin-top: 1em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#new-page-create-button:hover {&lt;br /&gt;
  background-color: rgb(249 250 251);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.cm-mw-template-name, .cm-mw-template-argument-name, .cm-mw-template-delimiter, .cm-mw-template-bracket, .cm-mw-template {&lt;br /&gt;
    color: #aa00ff;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.cm-mw-exttag-bracket, .cm-mw-exttag-attribute, .cm-mw-htmltag-bracket, .cm-mw-htmltag-attribute, .cm-mw-exttag-name, .cm-mw-htmltag-name {&lt;br /&gt;
    color: #10a213;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content-container {&lt;br /&gt;
    background-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#mw-content {&lt;br /&gt;
    background: rgb(255,255,255,0.90);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#p-logo-text {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    align-items: center;&lt;br /&gt;
    justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#p-logo-text a.long {&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (min-width: 851px) and (max-width: 1099px) {&lt;br /&gt;
    #p-logo-text a.long {&lt;br /&gt;
        padding-right: 0.5em;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 850px) {&lt;br /&gt;
    #p-logo-text {&lt;br /&gt;
        padding-top: 0.6em;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-changes {&lt;br /&gt;
	display: inline-block;&lt;br /&gt;
	height: 16px;&lt;br /&gt;
	width: 16px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizon-changes a.image img,&lt;br /&gt;
.horizon-changes img {&lt;br /&gt;
	height: 16px;&lt;br /&gt;
	width: 16px;&lt;br /&gt;
	filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.25));&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-container {&lt;br /&gt;
    display: flex;&lt;br /&gt;
    flex-wrap: nowrap;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-left {&lt;br /&gt;
    flex: 3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-right {&lt;br /&gt;
    flex: 1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.main-page-top-left div.thumbinner {&lt;br /&gt;
	width: 100% !important;&lt;br /&gt;
	max-width: 750px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.stack-fix {&lt;br /&gt;
	position: relative;&lt;br /&gt;
	z-index: 1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* ------------------------------------- */&lt;br /&gt;
/* horizon herald frame code */&lt;br /&gt;
/* note: this frame is coded mobile first. &lt;br /&gt;
   so all these class definitions refer to mobile view&lt;br /&gt;
   desktop view is defined below the @media query min-width: 768px&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
/* Style for the outer container */&lt;br /&gt;
.hh-outer-container {&lt;br /&gt;
   background-color: #eff2f4; /* Light background color */&lt;br /&gt;
  border: 3px solid #78b077; &lt;br /&gt;
  padding: 48px 4px; /* Add padding to create space for the inner container */&lt;br /&gt;
  position: relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the second container */&lt;br /&gt;
.hh-inner-container {&lt;br /&gt;
  background-color: #394451; /* Dark background color */&lt;br /&gt;
  border: 3px solid #78b077; /* Green border */&lt;br /&gt;
  margin: 4px; /* Create space between the outer and inner containers */&lt;br /&gt;
  padding: 4px; /* Add padding to create space for the content container */&lt;br /&gt;
  position: relative;&lt;br /&gt;
  margin-top: 40px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the third container */&lt;br /&gt;
.hh-content-container {&lt;br /&gt;
  background-color: #eff2f4; /* Light background color */&lt;br /&gt;
  border: 3px solid #78b077; /* Green border */&lt;br /&gt;
  margin: 4px; /* Create space between the inner and content containers */&lt;br /&gt;
  padding: 8px; /* Add content padding */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the top right corner div */&lt;br /&gt;
.hh-horizon-signature-container {&lt;br /&gt;
  background-color: #394451; /* dark background */&lt;br /&gt;
  color: #ffffff; /* white Text color */&lt;br /&gt;
  padding: 4px; /* Add padding to the div */&lt;br /&gt;
  z-index: 1; /* Ensure it appears above the inner container */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* small devices */&lt;br /&gt;
/*@media (max-width: 768px) {&lt;br /&gt;
  .hh-horizon-signature-container::after {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    bottom: 0;&lt;br /&gt;
    left: 28px;&lt;br /&gt;
    right: 28px;&lt;br /&gt;
    height: 3px;&lt;br /&gt;
    background-color: #78b077;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-text-container {&lt;br /&gt;
  display: flex;&lt;br /&gt;
  justify-content: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-icon {&lt;br /&gt;
  height: 40px;&lt;br /&gt;
  width: 40px;&lt;br /&gt;
  margin: 4px;&lt;br /&gt;
  margin-top: auto;&lt;br /&gt;
  margin-bottom: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-horizon-signature-text {&lt;br /&gt;
  margin: auto 8px;&lt;br /&gt;
  font-size: 1.5rem;&lt;br /&gt;
  font-family: hinted-highwind;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Style for the SVG graphic */&lt;br /&gt;
.hh-mandy-svg-container {&lt;br /&gt;
  position: absolute;&lt;br /&gt;
  top: 0;&lt;br /&gt;
  left: 50%;&lt;br /&gt;
  transform: translate3d(-50%, -75%, 0);&lt;br /&gt;
  z-index: 2;&lt;br /&gt;
  min-width: 300px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* reduce top margin for heading */&lt;br /&gt;
.hh-content-heading {&lt;br /&gt;
	margin-top: 0.5em !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.hh-content-author {&lt;br /&gt;
	min-height: 22px;&lt;br /&gt;
	text-align: right;&lt;br /&gt;
	margin-bottom: 0.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* styling for large devices (box to the side) */&lt;br /&gt;
@media (min-width: 768px) {&lt;br /&gt;
&lt;br /&gt;
  /* mode padding on outer container */&lt;br /&gt;
  .hh-outer-container {&lt;br /&gt;
    padding: 48px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* more padding on the inner container */&lt;br /&gt;
  .hh-inner-container {&lt;br /&gt;
	padding: 24px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* more padding on the content container */&lt;br /&gt;
  .hh-content-container {&lt;br /&gt;
  	padding: 16px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* box to the side */&lt;br /&gt;
  .hh-horizon-signature-container {&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    top: 0;&lt;br /&gt;
    right: 0;&lt;br /&gt;
    padding: 4px 16px;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* draw missing border parts for the box */&lt;br /&gt;
  .hh-horizon-signature-container::before {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    top: 28px; /* padding of the dark container plus something */&lt;br /&gt;
    left: 0;&lt;br /&gt;
    bottom: 0;&lt;br /&gt;
    width: 3px; /* Border width */&lt;br /&gt;
    background-color: #78b077; /* Green color for the border */&lt;br /&gt;
  }&lt;br /&gt;
  .hh-horizon-signature-container::after {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    position: absolute;&lt;br /&gt;
    bottom: 0; /* Offset from the top */&lt;br /&gt;
    left: 0;&lt;br /&gt;
    right: 28px;  /* padding of the dark container plus something */&lt;br /&gt;
    height: 3px; /* Border width */&lt;br /&gt;
    background-color: #78b077; /* Green color for the border */&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* make text bigger and limit box in width */&lt;br /&gt;
  .hh-horizon-signature-text {&lt;br /&gt;
    max-width: 180px;&lt;br /&gt;
    font-size: 2.5rem;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* make icon bigger */&lt;br /&gt;
  .hh-horizon-signature-icon {&lt;br /&gt;
	height: 64px;&lt;br /&gt;
	width: 64px;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* calculate position: subtract half the box add padding back and lower */&lt;br /&gt;
  .hh-mandy-svg-container {&lt;br /&gt;
  	left: calc(50% - 150px + 16px);&lt;br /&gt;
  	transform: translate3d(-50%, -50%, 0);&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  /* adjust space for the heading to account for the box */&lt;br /&gt;
  .hh-content-heading {&lt;br /&gt;
    width: calc(100% - 300px + 4px + 24px);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* adjust space for author to account for the box */&lt;br /&gt;
  .hh-content-author {&lt;br /&gt;
  	width: calc(100% - 300px + 4px + 24px);&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /* incease top padding for content slightly to dodge the box*/&lt;br /&gt;
  .hh-content-body {&lt;br /&gt;
  	padding-top: 8px;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* ---------- end of horizon herald code --------- */&lt;br /&gt;
&lt;br /&gt;
/* class for flex container for responsive table code */&lt;br /&gt;
.flex-container {&lt;br /&gt;
	display: flex;&lt;br /&gt;
	flex-wrap: wrap;&lt;br /&gt;
	justify-content: space-between;&lt;br /&gt;
	gap: 32px; /* Gap between items replaces margins */&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-1 {&lt;br /&gt;
	flex-grow: 0;&lt;br /&gt;
	flex-basis: calc(100% - 8px);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-2, .flex-container-item-2-large {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(50% - 16px);  /* 1x 32px gap divided by 2 items: 32/2=16 */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-3 {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(33.33% - 22px); /* 2x 32px gap divided by 3 items: 64/3~21.3 */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.flex-container-item-4 {&lt;br /&gt;
	flex-grow: 0; /* Allow items to grow and take up available space equally */&lt;br /&gt;
	flex-basis: calc(25% - 24px);  /* 3x 32px gap divided by 4 items: 96/4=24*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 1024px) { /* 3 items side by side */&lt;br /&gt;
    .flex-container-item-4 {&lt;br /&gt;
	flex-basis: calc(33.33% - 22px); /* 2x 32px gap divided by 3 items: 64/3~21.3 */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 768px) { /* 2 items side by side */&lt;br /&gt;
    .flex-container-item-4, .flex-container-item-3 {&lt;br /&gt;
	flex-basis: calc(50% - 16px);  /* 1x 32px gap divided by 2 items: 32/2=16 */&lt;br /&gt;
    }&lt;br /&gt;
    .flex-container-item-2-large { /* stack all items in large containers */&lt;br /&gt;
        flex-basis: calc(100% - 0px);  /* no gap */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (max-width: 480px) { /* On smaller screens, stack all items */&lt;br /&gt;
    .flex-container-item-4, .flex-container-item-3, .flex-container-item-2 {&lt;br /&gt;
        flex-basis: calc(100% - 0px);  /* no gap */&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* float container for floating elements (also called clearfix) */&lt;br /&gt;
.float-container::after,&lt;br /&gt;
.clearfix::after {&lt;br /&gt;
	content: &amp;quot;&amp;quot;;&lt;br /&gt;
	clear: both;&lt;br /&gt;
	display: table;&lt;br /&gt;
}&lt;br /&gt;
.float-container .float-container-item-left,&lt;br /&gt;
.clearfix .float-container-item-left {&lt;br /&gt;
	float: left;&lt;br /&gt;
	margin-right: 1rem;&lt;br /&gt;
	margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
.float-container .float-container-item-right,&lt;br /&gt;
.clearfix .float-container-item-right {&lt;br /&gt;
	float: right;&lt;br /&gt;
	margin-left: 1rem;&lt;br /&gt;
	margin-bottom: 1rem;&lt;br /&gt;
}&lt;br /&gt;
/* for screens below 400px: let float container items fill entire width */&lt;br /&gt;
@media screen and (max-width: 400px) {&lt;br /&gt;
	.float-container .float-container-item-right,&lt;br /&gt;
	.clearfix .float-container-item-right,&lt;br /&gt;
	.float-container .float-container-item-left,&lt;br /&gt;
	.clearfix .float-container-item-left {&lt;br /&gt;
		width: 100%;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to center content of columns of tables */&lt;br /&gt;
.center-col-1 td:nth-child(1), .center-col-1 th:nth-child(1),&lt;br /&gt;
.center-col-2 td:nth-child(2), .center-col-2 th:nth-child(2),&lt;br /&gt;
.center-col-3 td:nth-child(3), .center-col-3 th:nth-child(3),&lt;br /&gt;
.center-col-4 td:nth-child(4), .center-col-4 th:nth-child(4),&lt;br /&gt;
.center-col-5 td:nth-child(5), .center-col-5 th:nth-child(5), &lt;br /&gt;
.center-col-6 td:nth-child(6), .center-col-6 th:nth-child(6), &lt;br /&gt;
.center-col-7 td:nth-child(7), .center-col-7 th:nth-child(7),&lt;br /&gt;
.center-col-8 td:nth-child(8), .center-col-8 th:nth-child(8) {&lt;br /&gt;
	text-align: center !important; /* supposed to overwrite */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to left align content of columns of tables */&lt;br /&gt;
.left-col-1 td:nth-child(1), .left-col-1 th:nth-child(1),&lt;br /&gt;
.left-col-2 td:nth-child(2), .left-col-2 th:nth-child(2),&lt;br /&gt;
.left-col-3 td:nth-child(3), .left-col-3 th:nth-child(3),&lt;br /&gt;
.left-col-4 td:nth-child(4), .left-col-4 th:nth-child(4),&lt;br /&gt;
.left-col-5 td:nth-child(5), .left-col-5 th:nth-child(5),&lt;br /&gt;
.left-col-6 td:nth-child(6), .left-col-6 th:nth-child(6),&lt;br /&gt;
.left-col-7 td:nth-child(7), .left-col-7 th:nth-child(7),&lt;br /&gt;
.left-col-8 td:nth-child(8), .left-col-8 th:nth-child(8) {&lt;br /&gt;
	text-align: left !important; /* supposed to overwrite */&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* classes to hide content of columns of tables */&lt;br /&gt;
/* headers */&lt;br /&gt;
.hide-col-1 th:nth-child(1) {display: none;}&lt;br /&gt;
.hide-col-2 th:nth-child(2) {display: none;}&lt;br /&gt;
.hide-col-3 th:nth-child(3) {display: none;}&lt;br /&gt;
.hide-col-4 th:nth-child(4) {display: none;}&lt;br /&gt;
.hide-col-5 th:nth-child(5) {display: none;}&lt;br /&gt;
.hide-col-6 th:nth-child(6) {display: none;}&lt;br /&gt;
.hide-col-7 th:nth-child(7) {display: none;}&lt;br /&gt;
.hide-col-8 th:nth-child(8) {display: none;}&lt;br /&gt;
/* cell contents */&lt;br /&gt;
.hide-col-1 td:nth-child(1) {display: none;}&lt;br /&gt;
.hide-col-2 td:nth-child(2) {display: none;}&lt;br /&gt;
.hide-col-3 td:nth-child(3) {display: none;}&lt;br /&gt;
.hide-col-4 td:nth-child(4) {display: none;}&lt;br /&gt;
.hide-col-5 td:nth-child(5) {display: none;}&lt;br /&gt;
.hide-col-6 td:nth-child(6) {display: none;}&lt;br /&gt;
.hide-col-7 td:nth-child(7) {display: none;}&lt;br /&gt;
.hide-col-8 td:nth-child(8) {display: none;}&lt;br /&gt;
&lt;br /&gt;
/* class to set borders on tables to none */&lt;br /&gt;
.no-borders th, &lt;br /&gt;
.no-borders td,&lt;br /&gt;
.no-borders tr,&lt;br /&gt;
.no-borders {&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-th th {&lt;br /&gt;
  border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-td td {&lt;br /&gt;
  border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.no-borders-tr tr{&lt;br /&gt;
	border: none !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* no borders just for the cells (can still set on table and row */&lt;br /&gt;
.no-borders-cells th, &lt;br /&gt;
.no-borders-cells td {&lt;br /&gt;
	border: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* just a helper class to help set text to bold when explicitly using style is not a good option */&lt;br /&gt;
.text-bold {font-weight: bold;}&lt;br /&gt;
&lt;br /&gt;
/* a helper class to suppress the top and bottom margin of child paragraphs */&lt;br /&gt;
.suppress-p-margin p {&lt;br /&gt;
	margin-top: 0;&lt;br /&gt;
	margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* class to make lists take up less space inside tables - NOT WORKING ON SOME BROWSERS */&lt;br /&gt;
/* .tight-list ul {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
  padding: 0;&lt;br /&gt;
  list-style-position: inside;&lt;br /&gt;
} */&lt;br /&gt;
/* add a negative space before the element to make it stick tighter to the marker */&lt;br /&gt;
/* .tight-list li::before {&lt;br /&gt;
    content: &amp;quot;&amp;quot;;&lt;br /&gt;
    margin-left: -0.5rem;&lt;br /&gt;
} */&lt;br /&gt;
&lt;br /&gt;
/* give list elements a little more space vertically*/&lt;br /&gt;
.spaced-list li {&lt;br /&gt;
  margin-bottom: 0.3rem;&lt;br /&gt;
  margin-top: 0.3rem;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.plain-list ul {&lt;br /&gt;
	margin: 0;&lt;br /&gt;
	list-style-type: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul {&lt;br /&gt;
  list-style-type: none; /* Removes default bullet points */&lt;br /&gt;
  margin: 0; /* Removes default margin */&lt;br /&gt;
  padding: 0; /* Removes default padding */&lt;br /&gt;
  overflow: hidden; /* Ensures the list wraps correctly */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li {&lt;br /&gt;
  display: inline-block; /* Makes list items sit next to each other */&lt;br /&gt;
  /* margin-left: 4px; */ /* Adds some space between the list items, adjust as needed */&lt;br /&gt;
  position: relative; /* Needed for positioning the pseudo-element */&lt;br /&gt;
  padding-right: 0.65em; /* Provides space for the custom bullet */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li::after {&lt;br /&gt;
  content: &#039;•&#039;; /* This is your custom bullet */&lt;br /&gt;
  position: absolute;&lt;br /&gt;
  right: 0; /* Adjust accordingly to align the bullet */&lt;br /&gt;
  top: 0; /* Adjust if needed to align vertically with the text */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.horizontal-list ul li:last-child::after {&lt;br /&gt;
  content: none; /* Removes the bullet point from the last list item */&lt;br /&gt;
}&lt;br /&gt;
.horizontal-list ul li:last-child {&lt;br /&gt;
	padding-right: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* To Top button */&lt;br /&gt;
.mainpage-button-scrollToTop {&lt;br /&gt;
	right: 2%; &lt;br /&gt;
	background: #FFFFFF; &lt;br /&gt;
	opacity: 1; &lt;br /&gt;
	position: fixed; &lt;br /&gt;
	display: none; &lt;br /&gt;
	border-radius: 10px; &lt;br /&gt;
	border: 0.5px solid #a7a7a7; &lt;br /&gt;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* class for area pages where tables are put under headers so their top margin vanishes and they fit nicely */&lt;br /&gt;
.under-zone-section-header {&lt;br /&gt;
	margin-top: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.not-restocked,&lt;br /&gt;
tr.not-restocked td {&lt;br /&gt;
	background-color: hsl(0, 90%, 95%) !important;&lt;br /&gt;
}&lt;br /&gt;
tr.not-restocked a,&lt;br /&gt;
tr.not-restocked td {&lt;br /&gt;
	color: grey !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* strikethrough class set on row will show all text as strikethrough */&lt;br /&gt;
tr.strikethrough td {&lt;br /&gt;
    text-decoration: line-through;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.alternate-row-shades tr:nth-child(2n+3) td {&lt;br /&gt;
	filter: brightness(0.96);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
  /* Layout */&lt;br /&gt;
  .flex { display: flex; }&lt;br /&gt;
  .items-center { align-items: center; }&lt;br /&gt;
  .justify-center { justify-content: center; }&lt;br /&gt;
  .min-h-screen { min-height: 100vh; }&lt;br /&gt;
&lt;br /&gt;
  /* Spacing */&lt;br /&gt;
  .px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }&lt;br /&gt;
  .py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }&lt;br /&gt;
  .mr-2 { margin-right: 0.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* BEGIN DISCORD LOGIN */&lt;br /&gt;
&lt;br /&gt;
/* Sizing */&lt;br /&gt;
.h-6 { height: 1.5rem; }&lt;br /&gt;
.w-6 { width: 1.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* Colors */&lt;br /&gt;
.bg-gray-100 { background-color: #f3f4f6; }&lt;br /&gt;
.bg-white { background-color: #ffffff; }&lt;br /&gt;
.text-gray-800 { color: #1f2937; }&lt;br /&gt;
&lt;br /&gt;
/* Border */&lt;br /&gt;
.border { border-width: 1px; border-style: solid; }&lt;br /&gt;
.border-gray-300 { border-color: #d1d5db; }&lt;br /&gt;
.rounded-lg { border-radius: 0.5rem; }&lt;br /&gt;
&lt;br /&gt;
/* Shadow */&lt;br /&gt;
.shadow-md {&lt;br /&gt;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Typography */&lt;br /&gt;
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }&lt;br /&gt;
.font-medium { font-weight: 500; }&lt;br /&gt;
&lt;br /&gt;
/* Hover */&lt;br /&gt;
.hover\:bg-gray-200:hover { background-color: #e5e7eb; }&lt;br /&gt;
&lt;br /&gt;
/* Focus */&lt;br /&gt;
.focus\:outline-none:focus { outline: none; }&lt;br /&gt;
.focus\:ring-2:focus {&lt;br /&gt;
  --ring-shadow: 0 0 0 calc(2px + var(--ring-offset-width, 0px)) var(--ring-color, #6b7280);&lt;br /&gt;
  box-shadow: var(--ring-offset-shadow, 0 0 0 var(--ring-offset-width, 0px) var(--ring-offset-color, #fff)), var(--ring-shadow);&lt;br /&gt;
}&lt;br /&gt;
.focus\:ring-offset-2:focus { --ring-offset-width: 2px; }&lt;br /&gt;
.focus\:ring-gray-500:focus { --ring-color: #6b7280; }&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118883</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118883"/>
		<updated>2026-04-10T18:01:42Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: UI tweak&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;mw.loader.getScript( &#039;https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:VanaTime.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:ASBSearch.js&#039; );&lt;br /&gt;
//mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:FFXIWeatherForecast.js&#039; );&lt;br /&gt;
&lt;br /&gt;
var tooltips = {&lt;br /&gt;
    debug: false,&lt;br /&gt;
    &lt;br /&gt;
    api: false,&lt;br /&gt;
    types: [],&lt;br /&gt;
    classes: [&#039;basic-tooltip&#039;, &#039;advanced-tooltip&#039;],&lt;br /&gt;
    advancedCounter: 1,&lt;br /&gt;
    &lt;br /&gt;
    events: [],&lt;br /&gt;
    timeouts: [],&lt;br /&gt;
    &lt;br /&gt;
    offsetX: 20,&lt;br /&gt;
    offsetY: 20,&lt;br /&gt;
    waitForImages: true,&lt;br /&gt;
    noCSS: false,&lt;br /&gt;
    &lt;br /&gt;
    flip: false,&lt;br /&gt;
    &lt;br /&gt;
    init: function() {&lt;br /&gt;
        if($(document.body).hasClass(&#039;mw-special-InfoboxBuilder&#039;)) return;&lt;br /&gt;
        if(location.search.search(/ttdebug=(1|[Tt]rue)/) != -1 || (typeof tooltips_debug != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips_debug)) tooltips.debug = true;&lt;br /&gt;
&lt;br /&gt;
        url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
&lt;br /&gt;
        if(typeof url == &#039;undefined&#039; || !url) {&lt;br /&gt;
            console.log(&#039;Tooltips: script couldn\&#039;t find required  link[rel=&amp;quot;canonical&amp;quot;]  tag&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        tooltips.api = url.host+&#039;/api.php?format=json&amp;amp;action=parse&amp;amp;disablelimitreport=true&amp;amp;prop=text&amp;amp;title=&#039;+url.pathname;&lt;br /&gt;
        if(mw.util.getParamValue(&#039;uselang&#039;)) tooltips.api += &#039;&amp;amp;uselang=&#039;+mw.util.getParamValue(&#039;uselang&#039;);&lt;br /&gt;
		// Cache tooltip contents on the CDN for 10 minutes for anonymous users&lt;br /&gt;
		tooltips.api += &#039;&amp;amp;maxage=600&amp;amp;smaxage=600&#039;&lt;br /&gt;
        tooltips.api += &#039;&amp;amp;text=&#039;;&lt;br /&gt;
        &lt;br /&gt;
        tooltips.types[&#039;basic-tooltip&#039;] = {};&lt;br /&gt;
        tooltips.types[&#039;advanced-tooltip&#039;] = {};&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.config()) {&lt;br /&gt;
            console.log(&#039;Tooltips: missing config&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        var content = $(&#039;#WikiaMainContent&#039;);&lt;br /&gt;
        if(!content.length) content = $(&#039;#mw-content-text&#039;);&lt;br /&gt;
                &lt;br /&gt;
        if($(&#039;#tooltip-wrapper&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-wrapper&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).appendTo(document.body);&lt;br /&gt;
        if($(&#039;#tooltip-storage&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-storage&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).append(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-basic-tooltip&amp;quot; id=&amp;quot;tooltip-basic-tooltip&amp;quot;&amp;gt;Lorem ipsum dolor sit amet&amp;lt;/div&amp;gt;&#039;).appendTo(content);&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-wrapper&#039;)&lt;br /&gt;
            .css({&#039;margin&#039;:&#039;0px&#039;,&#039;position&#039;:&#039;fixed&#039;,&#039;height&#039;:&#039;auto&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;z-index&#039;: 6000000,&#039;font-size&#039;:&#039;14px&#039;})&lt;br /&gt;
            .hide();&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-storage&#039;)&lt;br /&gt;
            .css({&#039;height&#039;:&#039;0px&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;visibility&#039;:&#039;hidden&#039;,&#039;overflow&#039;:&#039;hidden&#039;,&#039;position&#039;:&#039;static&#039;,&#039;font-size&#039;:&#039;14px&#039;});&lt;br /&gt;
&lt;br /&gt;
        $(&#039;#tooltip-basic-tooltip&#039;).data(&#039;type&#039;, &#039;basic-tooltip&#039;);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.applyTooltips(document);&lt;br /&gt;
        &lt;br /&gt;
        mw.hook(&#039;wikipage.content&#039;).add(function(elem) {&lt;br /&gt;
            tooltips.applyTooltips($(elem));&lt;br /&gt;
        });&lt;br /&gt;
        &lt;br /&gt;
        if(typeof tooltips.events == &#039;string&#039;) tooltips.events = [tooltips.events];&lt;br /&gt;
        for(var x=0; x&amp;lt;tooltips.events.length; x++) { $(window).on(tooltips.events[x], function(ev, elem) { tooltips.applyTooltips(elem || this) }) }&lt;br /&gt;
        &lt;br /&gt;
        if(tooltips.debug) {&lt;br /&gt;
            $(&#039;#tooltip-wrapper&#039;).css({&#039;background-color&#039;:&#039;rgba(255,0,0,0.2)&#039;});&lt;br /&gt;
            $(&#039;#tooltip-storage&#039;).css({&#039;background-color&#039;:&#039;rgba(0,255,0,0.2)&#039;,&#039;height&#039;:&#039;500px&#039;,&#039;overflow-y&#039;:&#039;scroll&#039;,&#039;visibility&#039;:&#039;visible&#039;});&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    config: function() {&lt;br /&gt;
        if(typeof tooltips_list != &#039;undefined&#039;) {&lt;br /&gt;
            $(tooltips_list).each(function(i, v) { tooltips.addType(v) });&lt;br /&gt;
        }&lt;br /&gt;
        if(typeof tooltips_config == &#039;object&#039;) {&lt;br /&gt;
            tooltips.offsetX = tooltips_config.offsetX || tooltips.offsetX;&lt;br /&gt;
            tooltips.offsetY = tooltips_config.offsetY || tooltips.offsetY;&lt;br /&gt;
            tooltips.waitForImages = (tooltips_config.waitForImages || tooltips.waitForImages) &amp;amp;&amp;amp; true;&lt;br /&gt;
            tooltips.noCSS = tooltips_config.noCSS || tooltips.noCSS;&lt;br /&gt;
            tooltips.events = tooltips_config.events || tooltips.events;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        return true;&lt;br /&gt;
    },&lt;br /&gt;
    applyTooltips: function(elem) {&lt;br /&gt;
        $(elem).find(&#039;.&#039;+tooltips.classes.join(&#039;, .&#039;)).each(function() {&lt;br /&gt;
            $this = $(this);&lt;br /&gt;
            if($this.hasClass(&#039;tooltips-init-complete&#039;)) return;&lt;br /&gt;
            &lt;br /&gt;
            $this.find(&#039;*&#039;).removeAttr(&#039;title&#039;);&lt;br /&gt;
            $this.mouseover(tooltips.handlers.mouseOver);&lt;br /&gt;
            $this.mouseout(tooltips.handlers.mouseOut);&lt;br /&gt;
            $this.mousemove(tooltips.handlers.mouseMove);&lt;br /&gt;
            &lt;br /&gt;
            $this.data(&#039;tooltip-contents&#039;, $(this).attr(&#039;title&#039;));&lt;br /&gt;
            $this.removeAttr(&#039;title&#039;);&lt;br /&gt;
            &lt;br /&gt;
            tooltips.advancedTooltip($this);&lt;br /&gt;
            &lt;br /&gt;
            $(this).addClass(&#039;tooltips-init-complete&#039;);&lt;br /&gt;
        });&lt;br /&gt;
    },&lt;br /&gt;
    advancedTooltip: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(!elem.hasClass(&#039;advanced-tooltip&#039;)) return;&lt;br /&gt;
        var tips = elem.find(&#039;.tooltip-contents&#039;);&lt;br /&gt;
        if(!tips.length) return;&lt;br /&gt;
        var tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-advanced-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-advanced-tooltip-&#039;+tooltips.advancedCounter).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, &#039;advanced-tooltip&#039;).append($(tips[0]).contents()).each(tooltips.calcSize);&lt;br /&gt;
        tips.remove();&lt;br /&gt;
        elem.data(&#039;tooltip-id-advanced-tooltip&#039;, tooltips.advancedCounter);&lt;br /&gt;
        tooltips.advancedCounter++;&lt;br /&gt;
    },&lt;br /&gt;
    addType: function(tt) {&lt;br /&gt;
        if(typeof tooltips.types[tt.classname] == &#039;undefined&#039;) {&lt;br /&gt;
            var obj = {};&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.parse == &#039;string&#039; || typeof tt.parse == &#039;function&#039;) var parse = tt.parse; else var parse = false;&lt;br /&gt;
            if(typeof tt.text == &#039;string&#039; || typeof tt.text == &#039;function&#039;) var text = tt.text; else var text = false;&lt;br /&gt;
            &lt;br /&gt;
            if(parse) {&lt;br /&gt;
                obj.text = parse;&lt;br /&gt;
                obj.parse = true;&lt;br /&gt;
            } else if(text) {&lt;br /&gt;
                obj.text = text;&lt;br /&gt;
                obj.parse = false;&lt;br /&gt;
            } else return;&lt;br /&gt;
            &lt;br /&gt;
            if(typeof obj.text == &#039;string&#039;) obj.parameters = tooltips.getParameters(obj.text); else obj.parameters = [];&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) obj.delay = parseInt(tt.delay); else obj.delay = false;&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) obj.onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) obj.onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) obj.onHide = tt.onHide;&lt;br /&gt;
            &lt;br /&gt;
            tooltips.types[tt.classname] = obj;&lt;br /&gt;
            if(tooltips.classes.indexOf(tt.classname) == -1) tooltips.classes.push(tt.classname);&lt;br /&gt;
        } else {&lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) tooltips.types[tt.classname].delay = parseInt(tt.delay);&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) tooltips.types[tt.classname].onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) tooltips.types[tt.classname].onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) tooltips.types[tt.classname].onHide = tt.onHide;&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    getParameters: function(text) {&lt;br /&gt;
        var list = [];&lt;br /&gt;
        var matches = text.match(/&amp;lt;#\s*[a-z0-9_\-]+?\s*#&amp;gt;/gi);&lt;br /&gt;
        if(matches) {&lt;br /&gt;
            for(var x=0; x&amp;lt;matches.length; x++) {&lt;br /&gt;
                list.push(/&amp;lt;#\s*([a-z0-9_\-]+?)\s*#&amp;gt;/i.exec(matches[x])[1]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return list;&lt;br /&gt;
    },&lt;br /&gt;
    getAPI: function(text) {&lt;br /&gt;
        return tooltips.api+encodeURIComponent(text);&lt;br /&gt;
    },&lt;br /&gt;
    getText: function(type, elem) {&lt;br /&gt;
        if(typeof tooltips.types[type].text == &#039;function&#039;) {&lt;br /&gt;
            var text = tooltips.types[type].text($(elem)[0]);&lt;br /&gt;
        } else {&lt;br /&gt;
            var text = tooltips.types[type].text;&lt;br /&gt;
            for(var x=0; x&amp;lt;tooltips.types[type].parameters.length; x++) {&lt;br /&gt;
                var param = tooltips.types[type].parameters[x];&lt;br /&gt;
                var value = $(elem).data(param);&lt;br /&gt;
                if(typeof value == &#039;undefined&#039;) value = &#039;&#039;;&lt;br /&gt;
                var rx = new RegExp(&#039;&amp;lt;#\\s*&#039;+param.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, &amp;quot;\\$&amp;amp;&amp;quot;)+&#039;\\s*#&amp;gt;&#039;, &#039;g&#039;);&lt;br /&gt;
                text = text.replace(rx, value);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return text;&lt;br /&gt;
    },&lt;br /&gt;
    getTooltip: function(type, elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(elem.data(&#039;tooltip-id-&#039;+type)) return $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        &lt;br /&gt;
        var text = tooltips.getText(type, elem);&lt;br /&gt;
        var id = tooltips.hash(text);&lt;br /&gt;
        elem.data(&#039;tooltip-id-&#039;+type, id);&lt;br /&gt;
        &lt;br /&gt;
        var tip = $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        if(tip.length) return tip;&lt;br /&gt;
        &lt;br /&gt;
        tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-&#039;+type+&#039;-&#039;+id).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, type).addClass(&#039;tt-&#039;+type);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
        tooltips.sameWidth();&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.types[type].parse) {&lt;br /&gt;
            tip.html(text).each(tooltips.calcSize);&lt;br /&gt;
            tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
        } else {&lt;br /&gt;
            tip.addClass(&#039;tooltip-loading&#039;);&lt;br /&gt;
            var api = tooltips.getAPI(text);&lt;br /&gt;
            if(tooltips.debug) tip.html(&#039;&amp;lt;pre style=&amp;quot;padding:2px 3px;font-size:11px;&amp;quot;&amp;gt;&#039;+api+&#039;&amp;lt;/pre&amp;gt;&#039;);&lt;br /&gt;
            tip.attr(&#039;title&#039;, api);&lt;br /&gt;
            $.ajax({&lt;br /&gt;
                url: api,&lt;br /&gt;
                dataType: &#039;json&#039;,&lt;br /&gt;
                context: tip,&lt;br /&gt;
                success: function(data, textStatus, jqXHR) {&lt;br /&gt;
                    $(this).html(data[&#039;parse&#039;][&#039;text&#039;][&#039;*&#039;]).each(tooltips.calcSize);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                    var images = $(this).find(&#039;img&#039;);&lt;br /&gt;
                    images.fadeTo(0, 0).one(&#039;load&#039;, function() {&lt;br /&gt;
                        if(tooltips.waitForImages) {&lt;br /&gt;
                            $(this).fadeTo(0,1);&lt;br /&gt;
                            $(this).addClass(&#039;image-loaded&#039;);&lt;br /&gt;
                            tip = $(this).closest(&#039;.main-tooltip&#039;);&lt;br /&gt;
                            if(tip.find(&#039;img&#039;).length == tip.find(&#039;img.image-loaded&#039;).length) {&lt;br /&gt;
                                tip.removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                                tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                                tooltips.sameWidth();&lt;br /&gt;
                            }&lt;br /&gt;
                        } else $(this).fadeTo(100,1);&lt;br /&gt;
                    });&lt;br /&gt;
                    if(tooltips.waitForImages) {&lt;br /&gt;
                        if(images.length === 0) {&lt;br /&gt;
                            $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                        }&lt;br /&gt;
                    } else {&lt;br /&gt;
                        $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                    if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onParsed == &#039;function&#039;) {&lt;br /&gt;
                        tooltips.types[type].onParsed.call(this);&lt;br /&gt;
                        tip.each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    if($(this).find(&#039;a.new&#039;).length &amp;gt; 0) $(this).addClass(&#039;has-redlinks&#039;);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                }&lt;br /&gt;
            });&lt;br /&gt;
        }&lt;br /&gt;
        return tip;&lt;br /&gt;
    },&lt;br /&gt;
    getBasicTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-basic-tooltip&amp;quot;).html(mw.html.escape($(elem).data(&#039;tooltip-contents&#039;)).replace(/\\n/g,&#039;&amp;lt;br /&amp;gt;&#039;)).each(tooltips.calcSize);&lt;br /&gt;
    },&lt;br /&gt;
    getAdvancedTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-advanced-tooltip-&amp;quot;+$(elem).data(&#039;tooltip-id-advanced-tooltip&#039;));&lt;br /&gt;
    },&lt;br /&gt;
    getTooltips: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        var classes = elem.attr(&#039;class&#039;).split(&#039; &#039;);&lt;br /&gt;
        var tips = [];&lt;br /&gt;
        for(var i=0;i&amp;lt;classes.length;i++) {&lt;br /&gt;
            var tip = false;&lt;br /&gt;
            if(classes[i] == &#039;advanced-tooltip&#039;) tip = tooltips.getAdvancedTooltip(elem);&lt;br /&gt;
            else if(classes[i] == &#039;basic-tooltip&#039;) tip = tooltips.getBasicTooltip(elem);&lt;br /&gt;
            else if(typeof tooltips.types[classes[i]] != &#039;undefined&#039;) tip = tooltips.getTooltip(classes[i], elem);&lt;br /&gt;
            if(tip) tips.push(tip[0]);&lt;br /&gt;
        }&lt;br /&gt;
        return $(tips);&lt;br /&gt;
    },&lt;br /&gt;
    setOwnWidth: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        if(typeof $this.data(&#039;width&#039;) != &#039;undefined&#039;) $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        else $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
    },&lt;br /&gt;
    calcSize: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;absolute&#039;);&lt;br /&gt;
        var temp = $this.css(&#039;width&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
        $this.data(&#039;width&#039;, parseFloat(window.getComputedStyle($this[0]).width));&lt;br /&gt;
        $this.data(&#039;height&#039;, parseFloat(window.getComputedStyle($this[0]).height));&lt;br /&gt;
        $this.data(&#039;outerwidth&#039;, $this.outerWidth(true));&lt;br /&gt;
        $this.data(&#039;outerheight&#039;, $this.outerHeight(true));&lt;br /&gt;
        $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, temp);&lt;br /&gt;
    },&lt;br /&gt;
    sameWidth: function() {&lt;br /&gt;
        if($(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).length == 1) {&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(tooltips.setOwnWidth);&lt;br /&gt;
        } else {&lt;br /&gt;
            var width = 0;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { width = Math.max(width, $(this).data(&#039;width&#039;) || 0); });&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { $(this).css(&#039;width&#039;, width+&#039;px&#039;); });&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    wrapperPosition: function(mouseX, mouseY) {&lt;br /&gt;
        var tipH = parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-top&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-bottom&#039;));&lt;br /&gt;
        var tipW = 0;&lt;br /&gt;
       &lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerheight&#039;) != &#039;undefined&#039;) tipH += $(this).data(&#039;outerheight&#039;); });&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerwidth&#039;) != &#039;undefined&#039;) tipW = Math.max(tipW, $(this).data(&#039;outerwidth&#039;) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-left&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-right&#039;))); });&lt;br /&gt;
        &lt;br /&gt;
        var spaceTop = mouseY - tooltips.offsetY;&lt;br /&gt;
        var spaceLeft = mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceRight = $(window).width() - mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceBottom = $(window).height() - mouseY - tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        var coordX = mouseX + tooltips.offsetX;&lt;br /&gt;
        var coordY = mouseY + tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        if(spaceRight &amp;lt; tipW &amp;amp;&amp;amp; spaceBottom &amp;lt; tipH) {&lt;br /&gt;
            if(spaceLeft &amp;gt;= tipW &amp;amp;&amp;amp; tooltips.flip != &#039;h&#039;) {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                tooltips.flip = &#039;v&#039;;&lt;br /&gt;
            } else if(spaceTop &amp;gt;= tipH) {&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;h&#039;;&lt;br /&gt;
            } else {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;vh&#039;;&lt;br /&gt;
            }&lt;br /&gt;
        } else {&lt;br /&gt;
            tooltips.flip = false;&lt;br /&gt;
        }&lt;br /&gt;
        if ($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;position&#039;) == &#039;fixed&#039;) {&lt;br /&gt;
            coordX = coordX-$(window).scrollLeft();&lt;br /&gt;
            coordY = coordY-$(window).scrollTop();&lt;br /&gt;
            &lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH);&lt;br /&gt;
        } else {&lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH + $(window).scrollTop());&lt;br /&gt;
        }&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).css({left: coordX + &#039;px&#039;, top: coordY + &#039;px&#039;});&lt;br /&gt;
    },&lt;br /&gt;
    handlers: {&lt;br /&gt;
        mouseOver: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var tips = tooltips.getTooltips(this);&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).prepend(tips).show();&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            tips.each(function() {&lt;br /&gt;
                var $this = $(this);&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                &lt;br /&gt;
                $this.show();&lt;br /&gt;
                $(window).trigger(&#039;scroll&#039;);// trigger image lazy loader&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type] != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips.types[type].delay) {&lt;br /&gt;
                    $this.hide();&lt;br /&gt;
                    tooltips.timeouts[$(this).attr(&#039;id&#039;)] = setTimeout(function(){&lt;br /&gt;
                        $this.show();&lt;br /&gt;
                        if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call($this[0], handle);&lt;br /&gt;
                    }, tooltips.types[type].delay);&lt;br /&gt;
                } else if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call(this, handle);&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseOut: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).hide();&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).appendTo(&#039;#tooltip-storage&#039;).each(function() {&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onHide == &#039;function&#039;) tooltips.types[type].onHide.call(this, handle);&lt;br /&gt;
                $(this).show();&lt;br /&gt;
                clearTimeout(tooltips.timeouts[$(this).attr(&#039;id&#039;)]);&lt;br /&gt;
                delete tooltips.timeouts[$(this).attr(&#039;id&#039;)];&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseMove: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
        },&lt;br /&gt;
    },&lt;br /&gt;
    hash: function(text) {&lt;br /&gt;
        /* Source: https://archive.is/nq2F9 */&lt;br /&gt;
        var hash = 0, i, char;&lt;br /&gt;
        if (text.length === 0) return hash;&lt;br /&gt;
        for (i = 0, l = text.length; i &amp;lt; l; i++) {&lt;br /&gt;
            char  = text.charCodeAt(i);&lt;br /&gt;
            hash  = ((hash&amp;lt;&amp;lt;5)-hash)+char;&lt;br /&gt;
            hash |= 0; // Convert to 32bit integer&lt;br /&gt;
        }&lt;br /&gt;
        return hash;&lt;br /&gt;
    },&lt;br /&gt;
};&lt;br /&gt;
$(tooltips.init);&lt;br /&gt;
&lt;br /&gt;
$(document).keydown(function() {&lt;br /&gt;
  var nothingIsFocused = document.activeElement === document.body;&lt;br /&gt;
  if (nothingIsFocused) {&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;Slash&#039;) {&lt;br /&gt;
      $(&#039;#searchInput&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyE&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;e&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // if(event.code == &#039;KeyF&#039;) {&lt;br /&gt;
    //   window.location.href = &#039;https://test.vana.wiki/Special:Upload&#039;;&lt;br /&gt;
    // }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyH&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;h&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyM&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;m&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;KeyN&#039;) {&lt;br /&gt;
      $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeIn(200);&lt;br /&gt;
      $(&#039;#new-page-create-name-input&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;Escape&#039;) {&lt;br /&gt;
       $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
  }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-modal-background&amp;quot;).click(function () {&lt;br /&gt;
  $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-create-button&amp;quot;).click(function () {&lt;br /&gt;
  url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
  window.location.href = &#039;https://&#039;+url.host+&#039;/w/index.php?title=&#039; + $(&#039;#new-page-create-name-input&#039;).val() + &#039;&amp;amp;action=edit&#039;;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
///////     Move to Top: Button   //////&lt;br /&gt;
const button_scrollToTop = document.createElement(&#039;button&#039;);&lt;br /&gt;
button_scrollToTop.className = &amp;quot;mainpage-button-scrollToTop&amp;quot;;&lt;br /&gt;
button_scrollToTop.innerHTML = &#039;&amp;lt;img src=&amp;quot;https://horizonffxi.wiki/w/images/0/06/Up_arrow.png&amp;quot; style=&amp;quot;width: 25px; height: 25px;&amp;quot;/&amp;gt;&#039;;&lt;br /&gt;
//button_scrollToTop.style = &amp;quot;right: 2%; background: #FFFFFF; opacity: 1; position: fixed; display: none; border-radius: 10px; border: 0.5px solid #a7a7a7; box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);  z-index: 1000;&amp;quot;&lt;br /&gt;
document.body.appendChild(button_scrollToTop);&lt;br /&gt;
&lt;br /&gt;
button_scrollToTop.addEventListener(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
  $(&amp;quot;html, body&amp;quot;).animate({ scrollTop: 0 }, &amp;quot;slow&amp;quot;);&lt;br /&gt;
  return false;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// //https://stackoverflow.com/questions/31223341/detecting-scroll-direction&lt;br /&gt;
// function scrollEventThrottle(fn) {&lt;br /&gt;
//   var last_known_scroll_position = 0;&lt;br /&gt;
//   var ticking = false;&lt;br /&gt;
//   window.addEventListener(&amp;quot;scroll&amp;quot;, function () {&lt;br /&gt;
//     var previous_known_scroll_position = last_known_scroll_position;&lt;br /&gt;
//     last_known_scroll_position = window.scrollY;&lt;br /&gt;
//     if (!ticking) {&lt;br /&gt;
//       window.requestAnimationFrame(function () {&lt;br /&gt;
//         fn(last_known_scroll_position, previous_known_scroll_position);&lt;br /&gt;
//         ticking = false;&lt;br /&gt;
//       });&lt;br /&gt;
//       ticking = true;&lt;br /&gt;
//     }&lt;br /&gt;
//   });&lt;br /&gt;
// }&lt;br /&gt;
&lt;br /&gt;
// scrollEventThrottle(function(scrollPos, previousScrollPos) {&lt;br /&gt;
//     if (previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt;= 400) {&lt;br /&gt;
// 		if(window.getComputedStyle(button_scrollToTop).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
// 			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
// 			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
// 			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
// 		}&lt;br /&gt;
//     } else {&lt;br /&gt;
//       button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
//     }&lt;br /&gt;
// });&lt;br /&gt;
&lt;br /&gt;
var previousScrollPos = 0;&lt;br /&gt;
var lastScrollPos = 0;&lt;br /&gt;
var performing = false;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * show the button #scroll-to-top only&lt;br /&gt;
 * on bottom part of the page &lt;br /&gt;
 */&lt;br /&gt;
const b = document.querySelector(&#039;.mainpage-button-scrollToTop&#039;);&lt;br /&gt;
//console.log(document.querySelector(&#039;.mainpage-button-scrollToTop&#039;));&lt;br /&gt;
function toggleVisibility(scrollPos, buttonId) {&lt;br /&gt;
	//console.log(previousScrollPos, scrollPos);&lt;br /&gt;
  if(previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt; 500) {&lt;br /&gt;
  	//console.log(&amp;quot;showing&amp;quot; + $(buttonId));&lt;br /&gt;
    	if(window.getComputedStyle(b).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
	button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
document.addEventListener(&#039;scroll&#039;, function(evt) {&lt;br /&gt;
  //console.log(performance.now())&lt;br /&gt;
	previousScrollPos = lastScrollPos;&lt;br /&gt;
	lastScrollPos = window.scrollY;&lt;br /&gt;
  if(!performing) {&lt;br /&gt;
    setTimeout(function () {&lt;br /&gt;
      toggleVisibility(lastScrollPos, &#039;mainpage-button-scrollToTop&#039;);&lt;br /&gt;
      performing = false;&lt;br /&gt;
    }, 100);&lt;br /&gt;
  }&lt;br /&gt;
  performing = true;&lt;br /&gt;
}, {passive: true}) ;&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
// function that sorts a table on page load&lt;br /&gt;
// based on the column header which has one of the classes sort-col-1, sort-col-2, ...&lt;br /&gt;
&lt;br /&gt;
window.addEventListener(&#039;load&#039;, function() {&lt;br /&gt;
    // Add a small delay to ensure everything is loaded, especially on slower mobile networks&lt;br /&gt;
    setTimeout(function() {&lt;br /&gt;
        // Select all tables with classes that match &amp;quot;sort-col-1&amp;quot; through &amp;quot;sort-col-6&amp;quot;&lt;br /&gt;
        var tables = document.querySelectorAll(&#039;.sortable.sort-col-1, .sortable.sort-col-2, .sortable.sort-col-3, .sortable.sort-col-4, .sortable.sort-col-5, .sortable.sort-col-6&#039;);&lt;br /&gt;
&lt;br /&gt;
        // Loop through each table and determine the column to sort by based on its class&lt;br /&gt;
        Array.prototype.forEach.call(tables, function(table) {&lt;br /&gt;
            // Find which &amp;quot;sort-col-X&amp;quot; class is applied to the table&lt;br /&gt;
            var classList = Array.prototype.slice.call(table.classList);&lt;br /&gt;
            var sortClass = null;&lt;br /&gt;
&lt;br /&gt;
            for (var i = 0; i &amp;lt; classList.length; i++) {&lt;br /&gt;
                if (classList[i].indexOf(&#039;sort-col-&#039;) === 0) {&lt;br /&gt;
                    sortClass = classList[i];&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            if (sortClass) {&lt;br /&gt;
                // Extract the column number from the class name (e.g., &amp;quot;sort-col-3&amp;quot; =&amp;gt; 3)&lt;br /&gt;
                var columnIndex = parseInt(sortClass.replace(&#039;sort-col-&#039;, &#039;&#039;), 10) - 1;  // Convert to 0-based index&lt;br /&gt;
                &lt;br /&gt;
                // Find the header cell for the specified column index&lt;br /&gt;
                var headerCell = table.querySelectorAll(&#039;th&#039;)[columnIndex];&lt;br /&gt;
                &lt;br /&gt;
                // If the header cell exists, simulate a click on it to trigger sorting&lt;br /&gt;
                if (headerCell) {&lt;br /&gt;
                    headerCell.click()&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    }, 500); // 500ms delay to help on slower devices&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// OAuth Popup&lt;br /&gt;
$(&#039;div#personal&#039;).click(function(){&lt;br /&gt;
	articlePath = mw.config.get(&#039;wgArticlePath&#039;);&lt;br /&gt;
	url = articlePath.replace(&#039;$1&#039;, &#039;Special:OAuth2Client/redirect?returnto=Special:OAuth2Client/close&#039;);&lt;br /&gt;
	var left = (screen.width/2) - 200;&lt;br /&gt;
	var above = (screen.height/2) - 200;&lt;br /&gt;
	newwindow = window.open(url, &amp;quot;_blank&amp;quot;, &amp;quot;resizable=yes, scrollbars=yes, titlebar=yes, width=400, top=&amp;quot;+above+&amp;quot;, left=&amp;quot;+left);&lt;br /&gt;
	return false;&lt;br /&gt;
})&lt;br /&gt;
if (mw.config.get(&#039;wgTitle&#039;) == &#039;OAuth2Client/close&#039;) {&lt;br /&gt;
	window.opener.location.reload();&lt;br /&gt;
	window.close();&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118882</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Common.js&amp;diff=118882"/>
		<updated>2026-04-10T17:53:11Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Fixed hook for Discord login&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;mw.loader.getScript( &#039;https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:VanaTime.js&#039; );&lt;br /&gt;
mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:ASBSearch.js&#039; );&lt;br /&gt;
//mw.loader.getScript( &#039;/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=MediaWiki:FFXIWeatherForecast.js&#039; );&lt;br /&gt;
&lt;br /&gt;
var tooltips = {&lt;br /&gt;
    debug: false,&lt;br /&gt;
    &lt;br /&gt;
    api: false,&lt;br /&gt;
    types: [],&lt;br /&gt;
    classes: [&#039;basic-tooltip&#039;, &#039;advanced-tooltip&#039;],&lt;br /&gt;
    advancedCounter: 1,&lt;br /&gt;
    &lt;br /&gt;
    events: [],&lt;br /&gt;
    timeouts: [],&lt;br /&gt;
    &lt;br /&gt;
    offsetX: 20,&lt;br /&gt;
    offsetY: 20,&lt;br /&gt;
    waitForImages: true,&lt;br /&gt;
    noCSS: false,&lt;br /&gt;
    &lt;br /&gt;
    flip: false,&lt;br /&gt;
    &lt;br /&gt;
    init: function() {&lt;br /&gt;
        if($(document.body).hasClass(&#039;mw-special-InfoboxBuilder&#039;)) return;&lt;br /&gt;
        if(location.search.search(/ttdebug=(1|[Tt]rue)/) != -1 || (typeof tooltips_debug != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips_debug)) tooltips.debug = true;&lt;br /&gt;
&lt;br /&gt;
        url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
&lt;br /&gt;
        if(typeof url == &#039;undefined&#039; || !url) {&lt;br /&gt;
            console.log(&#039;Tooltips: script couldn\&#039;t find required  link[rel=&amp;quot;canonical&amp;quot;]  tag&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        tooltips.api = url.host+&#039;/api.php?format=json&amp;amp;action=parse&amp;amp;disablelimitreport=true&amp;amp;prop=text&amp;amp;title=&#039;+url.pathname;&lt;br /&gt;
        if(mw.util.getParamValue(&#039;uselang&#039;)) tooltips.api += &#039;&amp;amp;uselang=&#039;+mw.util.getParamValue(&#039;uselang&#039;);&lt;br /&gt;
		// Cache tooltip contents on the CDN for 10 minutes for anonymous users&lt;br /&gt;
		tooltips.api += &#039;&amp;amp;maxage=600&amp;amp;smaxage=600&#039;&lt;br /&gt;
        tooltips.api += &#039;&amp;amp;text=&#039;;&lt;br /&gt;
        &lt;br /&gt;
        tooltips.types[&#039;basic-tooltip&#039;] = {};&lt;br /&gt;
        tooltips.types[&#039;advanced-tooltip&#039;] = {};&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.config()) {&lt;br /&gt;
            console.log(&#039;Tooltips: missing config&#039;);&lt;br /&gt;
            tooltips.disabled = true;&lt;br /&gt;
            return false;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        var content = $(&#039;#WikiaMainContent&#039;);&lt;br /&gt;
        if(!content.length) content = $(&#039;#mw-content-text&#039;);&lt;br /&gt;
                &lt;br /&gt;
        if($(&#039;#tooltip-wrapper&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-wrapper&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).appendTo(document.body);&lt;br /&gt;
        if($(&#039;#tooltip-storage&#039;).length === 0) $(&#039;&amp;lt;div id=&amp;quot;tooltip-storage&amp;quot; class=&amp;quot;WikiaArticle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).append(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-basic-tooltip&amp;quot; id=&amp;quot;tooltip-basic-tooltip&amp;quot;&amp;gt;Lorem ipsum dolor sit amet&amp;lt;/div&amp;gt;&#039;).appendTo(content);&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-wrapper&#039;)&lt;br /&gt;
            .css({&#039;margin&#039;:&#039;0px&#039;,&#039;position&#039;:&#039;fixed&#039;,&#039;height&#039;:&#039;auto&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;z-index&#039;: 6000000,&#039;font-size&#039;:&#039;14px&#039;})&lt;br /&gt;
            .hide();&lt;br /&gt;
        &lt;br /&gt;
        $(&#039;#tooltip-storage&#039;)&lt;br /&gt;
            .css({&#039;height&#039;:&#039;0px&#039;,&#039;min-height&#039;:&#039;0&#039;,&#039;visibility&#039;:&#039;hidden&#039;,&#039;overflow&#039;:&#039;hidden&#039;,&#039;position&#039;:&#039;static&#039;,&#039;font-size&#039;:&#039;14px&#039;});&lt;br /&gt;
&lt;br /&gt;
        $(&#039;#tooltip-basic-tooltip&#039;).data(&#039;type&#039;, &#039;basic-tooltip&#039;);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.applyTooltips(document);&lt;br /&gt;
        &lt;br /&gt;
        mw.hook(&#039;wikipage.content&#039;).add(function(elem) {&lt;br /&gt;
            tooltips.applyTooltips($(elem));&lt;br /&gt;
        });&lt;br /&gt;
        &lt;br /&gt;
        if(typeof tooltips.events == &#039;string&#039;) tooltips.events = [tooltips.events];&lt;br /&gt;
        for(var x=0; x&amp;lt;tooltips.events.length; x++) { $(window).on(tooltips.events[x], function(ev, elem) { tooltips.applyTooltips(elem || this) }) }&lt;br /&gt;
        &lt;br /&gt;
        if(tooltips.debug) {&lt;br /&gt;
            $(&#039;#tooltip-wrapper&#039;).css({&#039;background-color&#039;:&#039;rgba(255,0,0,0.2)&#039;});&lt;br /&gt;
            $(&#039;#tooltip-storage&#039;).css({&#039;background-color&#039;:&#039;rgba(0,255,0,0.2)&#039;,&#039;height&#039;:&#039;500px&#039;,&#039;overflow-y&#039;:&#039;scroll&#039;,&#039;visibility&#039;:&#039;visible&#039;});&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    config: function() {&lt;br /&gt;
        if(typeof tooltips_list != &#039;undefined&#039;) {&lt;br /&gt;
            $(tooltips_list).each(function(i, v) { tooltips.addType(v) });&lt;br /&gt;
        }&lt;br /&gt;
        if(typeof tooltips_config == &#039;object&#039;) {&lt;br /&gt;
            tooltips.offsetX = tooltips_config.offsetX || tooltips.offsetX;&lt;br /&gt;
            tooltips.offsetY = tooltips_config.offsetY || tooltips.offsetY;&lt;br /&gt;
            tooltips.waitForImages = (tooltips_config.waitForImages || tooltips.waitForImages) &amp;amp;&amp;amp; true;&lt;br /&gt;
            tooltips.noCSS = tooltips_config.noCSS || tooltips.noCSS;&lt;br /&gt;
            tooltips.events = tooltips_config.events || tooltips.events;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        return true;&lt;br /&gt;
    },&lt;br /&gt;
    applyTooltips: function(elem) {&lt;br /&gt;
        $(elem).find(&#039;.&#039;+tooltips.classes.join(&#039;, .&#039;)).each(function() {&lt;br /&gt;
            $this = $(this);&lt;br /&gt;
            if($this.hasClass(&#039;tooltips-init-complete&#039;)) return;&lt;br /&gt;
            &lt;br /&gt;
            $this.find(&#039;*&#039;).removeAttr(&#039;title&#039;);&lt;br /&gt;
            $this.mouseover(tooltips.handlers.mouseOver);&lt;br /&gt;
            $this.mouseout(tooltips.handlers.mouseOut);&lt;br /&gt;
            $this.mousemove(tooltips.handlers.mouseMove);&lt;br /&gt;
            &lt;br /&gt;
            $this.data(&#039;tooltip-contents&#039;, $(this).attr(&#039;title&#039;));&lt;br /&gt;
            $this.removeAttr(&#039;title&#039;);&lt;br /&gt;
            &lt;br /&gt;
            tooltips.advancedTooltip($this);&lt;br /&gt;
            &lt;br /&gt;
            $(this).addClass(&#039;tooltips-init-complete&#039;);&lt;br /&gt;
        });&lt;br /&gt;
    },&lt;br /&gt;
    advancedTooltip: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(!elem.hasClass(&#039;advanced-tooltip&#039;)) return;&lt;br /&gt;
        var tips = elem.find(&#039;.tooltip-contents&#039;);&lt;br /&gt;
        if(!tips.length) return;&lt;br /&gt;
        var tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip tt-advanced-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-advanced-tooltip-&#039;+tooltips.advancedCounter).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, &#039;advanced-tooltip&#039;).append($(tips[0]).contents()).each(tooltips.calcSize);&lt;br /&gt;
        tips.remove();&lt;br /&gt;
        elem.data(&#039;tooltip-id-advanced-tooltip&#039;, tooltips.advancedCounter);&lt;br /&gt;
        tooltips.advancedCounter++;&lt;br /&gt;
    },&lt;br /&gt;
    addType: function(tt) {&lt;br /&gt;
        if(typeof tooltips.types[tt.classname] == &#039;undefined&#039;) {&lt;br /&gt;
            var obj = {};&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.parse == &#039;string&#039; || typeof tt.parse == &#039;function&#039;) var parse = tt.parse; else var parse = false;&lt;br /&gt;
            if(typeof tt.text == &#039;string&#039; || typeof tt.text == &#039;function&#039;) var text = tt.text; else var text = false;&lt;br /&gt;
            &lt;br /&gt;
            if(parse) {&lt;br /&gt;
                obj.text = parse;&lt;br /&gt;
                obj.parse = true;&lt;br /&gt;
            } else if(text) {&lt;br /&gt;
                obj.text = text;&lt;br /&gt;
                obj.parse = false;&lt;br /&gt;
            } else return;&lt;br /&gt;
            &lt;br /&gt;
            if(typeof obj.text == &#039;string&#039;) obj.parameters = tooltips.getParameters(obj.text); else obj.parameters = [];&lt;br /&gt;
            &lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) obj.delay = parseInt(tt.delay); else obj.delay = false;&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) obj.onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) obj.onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) obj.onHide = tt.onHide;&lt;br /&gt;
            &lt;br /&gt;
            tooltips.types[tt.classname] = obj;&lt;br /&gt;
            if(tooltips.classes.indexOf(tt.classname) == -1) tooltips.classes.push(tt.classname);&lt;br /&gt;
        } else {&lt;br /&gt;
            if(typeof tt.delay == &#039;string&#039; || typeof tt.delay == &#039;number&#039;) tooltips.types[tt.classname].delay = parseInt(tt.delay);&lt;br /&gt;
            if(typeof tt.onParsed == &#039;function&#039;) tooltips.types[tt.classname].onParsed = tt.onParsed;&lt;br /&gt;
            if(typeof tt.onShow == &#039;function&#039;) tooltips.types[tt.classname].onShow = tt.onShow;&lt;br /&gt;
            if(typeof tt.onHide == &#039;function&#039;) tooltips.types[tt.classname].onHide = tt.onHide;&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    getParameters: function(text) {&lt;br /&gt;
        var list = [];&lt;br /&gt;
        var matches = text.match(/&amp;lt;#\s*[a-z0-9_\-]+?\s*#&amp;gt;/gi);&lt;br /&gt;
        if(matches) {&lt;br /&gt;
            for(var x=0; x&amp;lt;matches.length; x++) {&lt;br /&gt;
                list.push(/&amp;lt;#\s*([a-z0-9_\-]+?)\s*#&amp;gt;/i.exec(matches[x])[1]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return list;&lt;br /&gt;
    },&lt;br /&gt;
    getAPI: function(text) {&lt;br /&gt;
        return tooltips.api+encodeURIComponent(text);&lt;br /&gt;
    },&lt;br /&gt;
    getText: function(type, elem) {&lt;br /&gt;
        if(typeof tooltips.types[type].text == &#039;function&#039;) {&lt;br /&gt;
            var text = tooltips.types[type].text($(elem)[0]);&lt;br /&gt;
        } else {&lt;br /&gt;
            var text = tooltips.types[type].text;&lt;br /&gt;
            for(var x=0; x&amp;lt;tooltips.types[type].parameters.length; x++) {&lt;br /&gt;
                var param = tooltips.types[type].parameters[x];&lt;br /&gt;
                var value = $(elem).data(param);&lt;br /&gt;
                if(typeof value == &#039;undefined&#039;) value = &#039;&#039;;&lt;br /&gt;
                var rx = new RegExp(&#039;&amp;lt;#\\s*&#039;+param.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, &amp;quot;\\$&amp;amp;&amp;quot;)+&#039;\\s*#&amp;gt;&#039;, &#039;g&#039;);&lt;br /&gt;
                text = text.replace(rx, value);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return text;&lt;br /&gt;
    },&lt;br /&gt;
    getTooltip: function(type, elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        if(elem.data(&#039;tooltip-id-&#039;+type)) return $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        &lt;br /&gt;
        var text = tooltips.getText(type, elem);&lt;br /&gt;
        var id = tooltips.hash(text);&lt;br /&gt;
        elem.data(&#039;tooltip-id-&#039;+type, id);&lt;br /&gt;
        &lt;br /&gt;
        var tip = $(&#039;#tooltip-&#039;+type+&#039;-&#039;+elem.data(&#039;tooltip-id-&#039;+type));&lt;br /&gt;
        if(tip.length) return tip;&lt;br /&gt;
        &lt;br /&gt;
        tip = $(&#039;&amp;lt;div class=&amp;quot;main-tooltip&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&#039;).attr(&#039;id&#039;, &#039;tooltip-&#039;+type+&#039;-&#039;+id).appendTo(&#039;#tooltip-storage&#039;).data(&#039;type&#039;, type).addClass(&#039;tt-&#039;+type);&lt;br /&gt;
        &lt;br /&gt;
        tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
        tooltips.sameWidth();&lt;br /&gt;
        &lt;br /&gt;
        if(!tooltips.types[type].parse) {&lt;br /&gt;
            tip.html(text).each(tooltips.calcSize);&lt;br /&gt;
            tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
        } else {&lt;br /&gt;
            tip.addClass(&#039;tooltip-loading&#039;);&lt;br /&gt;
            var api = tooltips.getAPI(text);&lt;br /&gt;
            if(tooltips.debug) tip.html(&#039;&amp;lt;pre style=&amp;quot;padding:2px 3px;font-size:11px;&amp;quot;&amp;gt;&#039;+api+&#039;&amp;lt;/pre&amp;gt;&#039;);&lt;br /&gt;
            tip.attr(&#039;title&#039;, api);&lt;br /&gt;
            $.ajax({&lt;br /&gt;
                url: api,&lt;br /&gt;
                dataType: &#039;json&#039;,&lt;br /&gt;
                context: tip,&lt;br /&gt;
                success: function(data, textStatus, jqXHR) {&lt;br /&gt;
                    $(this).html(data[&#039;parse&#039;][&#039;text&#039;][&#039;*&#039;]).each(tooltips.calcSize);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                    var images = $(this).find(&#039;img&#039;);&lt;br /&gt;
                    images.fadeTo(0, 0).one(&#039;load&#039;, function() {&lt;br /&gt;
                        if(tooltips.waitForImages) {&lt;br /&gt;
                            $(this).fadeTo(0,1);&lt;br /&gt;
                            $(this).addClass(&#039;image-loaded&#039;);&lt;br /&gt;
                            tip = $(this).closest(&#039;.main-tooltip&#039;);&lt;br /&gt;
                            if(tip.find(&#039;img&#039;).length == tip.find(&#039;img.image-loaded&#039;).length) {&lt;br /&gt;
                                tip.removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                                tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                                tooltips.sameWidth();&lt;br /&gt;
                            }&lt;br /&gt;
                        } else $(this).fadeTo(100,1);&lt;br /&gt;
                    });&lt;br /&gt;
                    if(tooltips.waitForImages) {&lt;br /&gt;
                        if(images.length === 0) {&lt;br /&gt;
                            $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                        }&lt;br /&gt;
                    } else {&lt;br /&gt;
                        $(this).removeClass(&#039;tooltip-loading&#039;).each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                    if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onParsed == &#039;function&#039;) {&lt;br /&gt;
                        tooltips.types[type].onParsed.call(this);&lt;br /&gt;
                        tip.each(tooltips.calcSize);&lt;br /&gt;
                    }&lt;br /&gt;
                    if($(this).find(&#039;a.new&#039;).length &amp;gt; 0) $(this).addClass(&#039;has-redlinks&#039;);&lt;br /&gt;
                    tooltips.wrapperPosition(tooltips.lastKnownMousePos[0], tooltips.lastKnownMousePos[1]);&lt;br /&gt;
                    tooltips.sameWidth();&lt;br /&gt;
                }&lt;br /&gt;
            });&lt;br /&gt;
        }&lt;br /&gt;
        return tip;&lt;br /&gt;
    },&lt;br /&gt;
    getBasicTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-basic-tooltip&amp;quot;).html(mw.html.escape($(elem).data(&#039;tooltip-contents&#039;)).replace(/\\n/g,&#039;&amp;lt;br /&amp;gt;&#039;)).each(tooltips.calcSize);&lt;br /&gt;
    },&lt;br /&gt;
    getAdvancedTooltip: function(elem) {&lt;br /&gt;
        return $(&amp;quot;#tooltip-advanced-tooltip-&amp;quot;+$(elem).data(&#039;tooltip-id-advanced-tooltip&#039;));&lt;br /&gt;
    },&lt;br /&gt;
    getTooltips: function(elem) {&lt;br /&gt;
        elem = $(elem);&lt;br /&gt;
        var classes = elem.attr(&#039;class&#039;).split(&#039; &#039;);&lt;br /&gt;
        var tips = [];&lt;br /&gt;
        for(var i=0;i&amp;lt;classes.length;i++) {&lt;br /&gt;
            var tip = false;&lt;br /&gt;
            if(classes[i] == &#039;advanced-tooltip&#039;) tip = tooltips.getAdvancedTooltip(elem);&lt;br /&gt;
            else if(classes[i] == &#039;basic-tooltip&#039;) tip = tooltips.getBasicTooltip(elem);&lt;br /&gt;
            else if(typeof tooltips.types[classes[i]] != &#039;undefined&#039;) tip = tooltips.getTooltip(classes[i], elem);&lt;br /&gt;
            if(tip) tips.push(tip[0]);&lt;br /&gt;
        }&lt;br /&gt;
        return $(tips);&lt;br /&gt;
    },&lt;br /&gt;
    setOwnWidth: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        if(typeof $this.data(&#039;width&#039;) != &#039;undefined&#039;) $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        else $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
    },&lt;br /&gt;
    calcSize: function() {&lt;br /&gt;
        $this = $(this);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;absolute&#039;);&lt;br /&gt;
        var temp = $this.css(&#039;width&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, &#039;&#039;);&lt;br /&gt;
        $this.data(&#039;width&#039;, parseFloat(window.getComputedStyle($this[0]).width));&lt;br /&gt;
        $this.data(&#039;height&#039;, parseFloat(window.getComputedStyle($this[0]).height));&lt;br /&gt;
        $this.data(&#039;outerwidth&#039;, $this.outerWidth(true));&lt;br /&gt;
        $this.data(&#039;outerheight&#039;, $this.outerHeight(true));&lt;br /&gt;
        $this.css(&#039;width&#039;, $this.data(&#039;width&#039;)+&#039;px&#039;);&lt;br /&gt;
        $this.css(&#039;position&#039;, &#039;&#039;);&lt;br /&gt;
        $this.css(&#039;width&#039;, temp);&lt;br /&gt;
    },&lt;br /&gt;
    sameWidth: function() {&lt;br /&gt;
        if($(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).length == 1) {&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(tooltips.setOwnWidth);&lt;br /&gt;
        } else {&lt;br /&gt;
            var width = 0;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { width = Math.max(width, $(this).data(&#039;width&#039;) || 0); });&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each(function() { $(this).css(&#039;width&#039;, width+&#039;px&#039;); });&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    wrapperPosition: function(mouseX, mouseY) {&lt;br /&gt;
        var tipH = parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-top&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-bottom&#039;));&lt;br /&gt;
        var tipW = 0;&lt;br /&gt;
       &lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerheight&#039;) != &#039;undefined&#039;) tipH += $(this).data(&#039;outerheight&#039;); });&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).each( function(){ if(typeof $(this).data(&#039;outerwidth&#039;) != &#039;undefined&#039;) tipW = Math.max(tipW, $(this).data(&#039;outerwidth&#039;) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-left&#039;)) + parseInt($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;padding-right&#039;))); });&lt;br /&gt;
        &lt;br /&gt;
        var spaceTop = mouseY - tooltips.offsetY;&lt;br /&gt;
        var spaceLeft = mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceRight = $(window).width() - mouseX - tooltips.offsetX;&lt;br /&gt;
        var spaceBottom = $(window).height() - mouseY - tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        var coordX = mouseX + tooltips.offsetX;&lt;br /&gt;
        var coordY = mouseY + tooltips.offsetY;&lt;br /&gt;
        &lt;br /&gt;
        if(spaceRight &amp;lt; tipW &amp;amp;&amp;amp; spaceBottom &amp;lt; tipH) {&lt;br /&gt;
            if(spaceLeft &amp;gt;= tipW &amp;amp;&amp;amp; tooltips.flip != &#039;h&#039;) {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                tooltips.flip = &#039;v&#039;;&lt;br /&gt;
            } else if(spaceTop &amp;gt;= tipH) {&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;h&#039;;&lt;br /&gt;
            } else {&lt;br /&gt;
                coordX = mouseX - tipW - tooltips.offsetX;&lt;br /&gt;
                coordY = mouseY - tipH - tooltips.offsetY;&lt;br /&gt;
                tooltips.flip = &#039;vh&#039;;&lt;br /&gt;
            }&lt;br /&gt;
        } else {&lt;br /&gt;
            tooltips.flip = false;&lt;br /&gt;
        }&lt;br /&gt;
        if ($(&amp;quot;#tooltip-wrapper&amp;quot;).css(&#039;position&#039;) == &#039;fixed&#039;) {&lt;br /&gt;
            coordX = coordX-$(window).scrollLeft();&lt;br /&gt;
            coordY = coordY-$(window).scrollTop();&lt;br /&gt;
            &lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH);&lt;br /&gt;
        } else {&lt;br /&gt;
            coordX = Math.min(coordX, $(window).width() - tipW);&lt;br /&gt;
            coordY = Math.min(coordY, $(window).height() - tipH + $(window).scrollTop());&lt;br /&gt;
        }&lt;br /&gt;
        $(&amp;quot;#tooltip-wrapper&amp;quot;).css({left: coordX + &#039;px&#039;, top: coordY + &#039;px&#039;});&lt;br /&gt;
    },&lt;br /&gt;
    handlers: {&lt;br /&gt;
        mouseOver: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var tips = tooltips.getTooltips(this);&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).prepend(tips).show();&lt;br /&gt;
            tooltips.sameWidth();&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            tips.each(function() {&lt;br /&gt;
                var $this = $(this);&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                &lt;br /&gt;
                $this.show();&lt;br /&gt;
                $(window).trigger(&#039;scroll&#039;);// trigger image lazy loader&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type] != &#039;undefined&#039; &amp;amp;&amp;amp; tooltips.types[type].delay) {&lt;br /&gt;
                    $this.hide();&lt;br /&gt;
                    tooltips.timeouts[$(this).attr(&#039;id&#039;)] = setTimeout(function(){&lt;br /&gt;
                        $this.show();&lt;br /&gt;
                        if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call($this[0], handle);&lt;br /&gt;
                    }, tooltips.types[type].delay);&lt;br /&gt;
                } else if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onShow == &#039;function&#039;) tooltips.types[type].onShow.call(this, handle);&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseOut: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
            &lt;br /&gt;
            var handle = this;&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).hide();&lt;br /&gt;
            $(&amp;quot;#tooltip-wrapper&amp;quot;).find(&#039;.main-tooltip&#039;).appendTo(&#039;#tooltip-storage&#039;).each(function() {&lt;br /&gt;
                var type = $(this).data(&#039;type&#039;) || false;&lt;br /&gt;
                if(type &amp;amp;&amp;amp; typeof tooltips.types[type].onHide == &#039;function&#039;) tooltips.types[type].onHide.call(this, handle);&lt;br /&gt;
                $(this).show();&lt;br /&gt;
                clearTimeout(tooltips.timeouts[$(this).attr(&#039;id&#039;)]);&lt;br /&gt;
                delete tooltips.timeouts[$(this).attr(&#039;id&#039;)];&lt;br /&gt;
            });&lt;br /&gt;
        },&lt;br /&gt;
        mouseMove: function(e) {&lt;br /&gt;
            tooltips.lastKnownMousePos = [e.pageX, e.pageY];&lt;br /&gt;
            tooltips.wrapperPosition(e.pageX, e.pageY);&lt;br /&gt;
        },&lt;br /&gt;
    },&lt;br /&gt;
    hash: function(text) {&lt;br /&gt;
        /* Source: https://archive.is/nq2F9 */&lt;br /&gt;
        var hash = 0, i, char;&lt;br /&gt;
        if (text.length === 0) return hash;&lt;br /&gt;
        for (i = 0, l = text.length; i &amp;lt; l; i++) {&lt;br /&gt;
            char  = text.charCodeAt(i);&lt;br /&gt;
            hash  = ((hash&amp;lt;&amp;lt;5)-hash)+char;&lt;br /&gt;
            hash |= 0; // Convert to 32bit integer&lt;br /&gt;
        }&lt;br /&gt;
        return hash;&lt;br /&gt;
    },&lt;br /&gt;
};&lt;br /&gt;
$(tooltips.init);&lt;br /&gt;
&lt;br /&gt;
$(document).keydown(function() {&lt;br /&gt;
  var nothingIsFocused = document.activeElement === document.body;&lt;br /&gt;
  if (nothingIsFocused) {&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;Slash&#039;) {&lt;br /&gt;
      $(&#039;#searchInput&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyE&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;e&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // if(event.code == &#039;KeyF&#039;) {&lt;br /&gt;
    //   window.location.href = &#039;https://test.vana.wiki/Special:Upload&#039;;&lt;br /&gt;
    // }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyH&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;h&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;KeyM&#039;) {&lt;br /&gt;
      window.location.href = $(&#039;*[accesskey=&amp;quot;m&amp;quot;]&#039;).prop(&#039;href&#039;);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(event.code == &#039;KeyN&#039;) {&lt;br /&gt;
      $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeIn(200);&lt;br /&gt;
      $(&#039;#new-page-create-name-input&#039;).focus();&lt;br /&gt;
      return false;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if(event.code == &#039;Escape&#039;) {&lt;br /&gt;
       $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
  }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-modal-background&amp;quot;).click(function () {&lt;br /&gt;
  $(&amp;quot;#new-page-modal-content,#new-page-modal-background&amp;quot;).fadeOut(200);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$(&amp;quot;#new-page-create-button&amp;quot;).click(function () {&lt;br /&gt;
  url = new URL($(&#039;link[rel=&amp;quot;canonical&amp;quot;]&#039;).attr(&#039;href&#039;));&lt;br /&gt;
  window.location.href = &#039;https://&#039;+url.host+&#039;/w/index.php?title=&#039; + $(&#039;#new-page-create-name-input&#039;).val() + &#039;&amp;amp;action=edit&#039;;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
///////     Move to Top: Button   //////&lt;br /&gt;
const button_scrollToTop = document.createElement(&#039;button&#039;);&lt;br /&gt;
button_scrollToTop.className = &amp;quot;mainpage-button-scrollToTop&amp;quot;;&lt;br /&gt;
button_scrollToTop.innerHTML = &#039;&amp;lt;img src=&amp;quot;https://horizonffxi.wiki/w/images/0/06/Up_arrow.png&amp;quot; style=&amp;quot;width: 25px; height: 25px;&amp;quot;/&amp;gt;&#039;;&lt;br /&gt;
//button_scrollToTop.style = &amp;quot;right: 2%; background: #FFFFFF; opacity: 1; position: fixed; display: none; border-radius: 10px; border: 0.5px solid #a7a7a7; box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);  z-index: 1000;&amp;quot;&lt;br /&gt;
document.body.appendChild(button_scrollToTop);&lt;br /&gt;
&lt;br /&gt;
button_scrollToTop.addEventListener(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
  $(&amp;quot;html, body&amp;quot;).animate({ scrollTop: 0 }, &amp;quot;slow&amp;quot;);&lt;br /&gt;
  return false;&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// //https://stackoverflow.com/questions/31223341/detecting-scroll-direction&lt;br /&gt;
// function scrollEventThrottle(fn) {&lt;br /&gt;
//   var last_known_scroll_position = 0;&lt;br /&gt;
//   var ticking = false;&lt;br /&gt;
//   window.addEventListener(&amp;quot;scroll&amp;quot;, function () {&lt;br /&gt;
//     var previous_known_scroll_position = last_known_scroll_position;&lt;br /&gt;
//     last_known_scroll_position = window.scrollY;&lt;br /&gt;
//     if (!ticking) {&lt;br /&gt;
//       window.requestAnimationFrame(function () {&lt;br /&gt;
//         fn(last_known_scroll_position, previous_known_scroll_position);&lt;br /&gt;
//         ticking = false;&lt;br /&gt;
//       });&lt;br /&gt;
//       ticking = true;&lt;br /&gt;
//     }&lt;br /&gt;
//   });&lt;br /&gt;
// }&lt;br /&gt;
&lt;br /&gt;
// scrollEventThrottle(function(scrollPos, previousScrollPos) {&lt;br /&gt;
//     if (previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt;= 400) {&lt;br /&gt;
// 		if(window.getComputedStyle(button_scrollToTop).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
// 			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
// 			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
// 			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
// 		}&lt;br /&gt;
//     } else {&lt;br /&gt;
//       button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
//     }&lt;br /&gt;
// });&lt;br /&gt;
&lt;br /&gt;
var previousScrollPos = 0;&lt;br /&gt;
var lastScrollPos = 0;&lt;br /&gt;
var performing = false;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * show the button #scroll-to-top only&lt;br /&gt;
 * on bottom part of the page &lt;br /&gt;
 */&lt;br /&gt;
const b = document.querySelector(&#039;.mainpage-button-scrollToTop&#039;);&lt;br /&gt;
//console.log(document.querySelector(&#039;.mainpage-button-scrollToTop&#039;));&lt;br /&gt;
function toggleVisibility(scrollPos, buttonId) {&lt;br /&gt;
	//console.log(previousScrollPos, scrollPos);&lt;br /&gt;
  if(previousScrollPos &amp;gt; scrollPos &amp;amp;&amp;amp; scrollPos &amp;gt; 500) {&lt;br /&gt;
  	//console.log(&amp;quot;showing&amp;quot; + $(buttonId));&lt;br /&gt;
    	if(window.getComputedStyle(b).display !== &amp;quot;block&amp;quot;) {&lt;br /&gt;
			button_scrollToTop.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
			if (document.body.clientWidth &amp;gt;= 850) button_scrollToTop.style.top = &amp;quot;60px&amp;quot;;&lt;br /&gt;
			else button_scrollToTop.style.top = &amp;quot;5px&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
	button_scrollToTop.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
document.addEventListener(&#039;scroll&#039;, function(evt) {&lt;br /&gt;
  //console.log(performance.now())&lt;br /&gt;
	previousScrollPos = lastScrollPos;&lt;br /&gt;
	lastScrollPos = window.scrollY;&lt;br /&gt;
  if(!performing) {&lt;br /&gt;
    setTimeout(function () {&lt;br /&gt;
      toggleVisibility(lastScrollPos, &#039;mainpage-button-scrollToTop&#039;);&lt;br /&gt;
      performing = false;&lt;br /&gt;
    }, 100);&lt;br /&gt;
  }&lt;br /&gt;
  performing = true;&lt;br /&gt;
}, {passive: true}) ;&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
// function that sorts a table on page load&lt;br /&gt;
// based on the column header which has one of the classes sort-col-1, sort-col-2, ...&lt;br /&gt;
&lt;br /&gt;
window.addEventListener(&#039;load&#039;, function() {&lt;br /&gt;
    // Add a small delay to ensure everything is loaded, especially on slower mobile networks&lt;br /&gt;
    setTimeout(function() {&lt;br /&gt;
        // Select all tables with classes that match &amp;quot;sort-col-1&amp;quot; through &amp;quot;sort-col-6&amp;quot;&lt;br /&gt;
        var tables = document.querySelectorAll(&#039;.sortable.sort-col-1, .sortable.sort-col-2, .sortable.sort-col-3, .sortable.sort-col-4, .sortable.sort-col-5, .sortable.sort-col-6&#039;);&lt;br /&gt;
&lt;br /&gt;
        // Loop through each table and determine the column to sort by based on its class&lt;br /&gt;
        Array.prototype.forEach.call(tables, function(table) {&lt;br /&gt;
            // Find which &amp;quot;sort-col-X&amp;quot; class is applied to the table&lt;br /&gt;
            var classList = Array.prototype.slice.call(table.classList);&lt;br /&gt;
            var sortClass = null;&lt;br /&gt;
&lt;br /&gt;
            for (var i = 0; i &amp;lt; classList.length; i++) {&lt;br /&gt;
                if (classList[i].indexOf(&#039;sort-col-&#039;) === 0) {&lt;br /&gt;
                    sortClass = classList[i];&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            if (sortClass) {&lt;br /&gt;
                // Extract the column number from the class name (e.g., &amp;quot;sort-col-3&amp;quot; =&amp;gt; 3)&lt;br /&gt;
                var columnIndex = parseInt(sortClass.replace(&#039;sort-col-&#039;, &#039;&#039;), 10) - 1;  // Convert to 0-based index&lt;br /&gt;
                &lt;br /&gt;
                // Find the header cell for the specified column index&lt;br /&gt;
                var headerCell = table.querySelectorAll(&#039;th&#039;)[columnIndex];&lt;br /&gt;
                &lt;br /&gt;
                // If the header cell exists, simulate a click on it to trigger sorting&lt;br /&gt;
                if (headerCell) {&lt;br /&gt;
                    headerCell.click()&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    }, 500); // 500ms delay to help on slower devices&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// OAuth Popup&lt;br /&gt;
$(&#039;div#personal&#039;).click(function(){&lt;br /&gt;
	articlePath = mw.config.get(&#039;wgArticlePath&#039;);&lt;br /&gt;
	url = articlePath.replace(&#039;$1&#039;, &#039;Special:OAuth2Client/redirect?returnto=Special:OAuth2Client/close&#039;);&lt;br /&gt;
	var left = (screen.width/2) - 200;&lt;br /&gt;
	var above = (screen.height/2) - 200;&lt;br /&gt;
	newwindow = window.open(url, &amp;quot;_blank&amp;quot;, &amp;quot;resizable=yes, scrollbars=yes, titlebar=yes, width=400, height=400, top=&amp;quot;+above+&amp;quot;, left=&amp;quot;+left);&lt;br /&gt;
	return false;&lt;br /&gt;
})&lt;br /&gt;
if (mw.config.get(&#039;wgTitle&#039;) == &#039;OAuth2Client/close&#039;) {&lt;br /&gt;
	window.opener.location.reload();&lt;br /&gt;
	window.close();&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118880</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118880"/>
		<updated>2026-04-10T16:18:38Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Blanked for now&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118879</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118879"/>
		<updated>2026-04-10T14:23:09Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Updated site notice for maintenance&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: yellow;&amp;quot;&amp;gt;&amp;lt;center&amp;gt;&amp;lt;big&amp;gt;&#039;&#039;&#039;The HorizonXI Wiki is undergoing a major maintenance. Downtime is likely to take a couple hours.&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/center&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118811</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=118811"/>
		<updated>2026-04-07T18:15:14Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Notice for upcoming MediaWiki upgrade&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color: yellow;&amp;quot;&amp;gt;&amp;lt;center&amp;gt;&amp;lt;big&amp;gt;&#039;&#039;&#039;The HorizonXI Wiki will be undergoing a major maintenance alongside Horizon&#039;s own weekly server maintenance this week on April 10th. Downtime is likely to take a couple hours.&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/center&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sidebar&amp;diff=118335</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sidebar&amp;diff=118335"/>
		<updated>2026-03-05T20:01:52Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Removed defunct LFG tool from sidebar&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Vana&#039;diel Time&lt;br /&gt;
**  | vanatime&lt;br /&gt;
&amp;lt;!--* Seasonal Event!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Adventurer Tools&lt;br /&gt;
** Special:ASBSearch|ASB Search&lt;br /&gt;
** Special:Equipsets|Equipsets&lt;br /&gt;
** Interactive Map|Interactive Map&lt;br /&gt;
** Horizogenes|Horizogenes (Vana Timers)&lt;br /&gt;
** Special:WeatherForecast|Weather Forecast&lt;br /&gt;
** Tactical Points#tpcalculator| TP Calculator&lt;br /&gt;
&lt;br /&gt;
* HorizonXI&lt;br /&gt;
** Category:Horizon Changes|Era+ Changes&lt;br /&gt;
** Category:Horizon Changes/New Content|Era+ Content&lt;br /&gt;
** Category:Out of Era|Out of Era Content&lt;br /&gt;
** Category:Patch_Notes| Version Updates&lt;br /&gt;
** DAT Comparison|DAT Comparison&lt;br /&gt;
&lt;br /&gt;
* The Hub&lt;br /&gt;
** mainpage|Main Page&lt;br /&gt;
** New Player Hub|New Players&lt;br /&gt;
** Areas|Areas&lt;br /&gt;
** Category:Crafts|Crafting&lt;br /&gt;
** Category:Jobs|Jobs&lt;br /&gt;
** Category:Guides|Player Guides&lt;br /&gt;
** Tech Support|Tech Support&lt;br /&gt;
&lt;br /&gt;
* Editor Section&lt;br /&gt;
** Editing Guidelines|Editing Guidelines&lt;br /&gt;
** Editor Hub|Editor Hub&lt;br /&gt;
** Special:Random|Random Page&lt;br /&gt;
** recentchanges-url|Recent Changes&lt;br /&gt;
**https://discord.gg/7yqTG7kCfA| Wiki Discord&lt;br /&gt;
&lt;br /&gt;
* Game Content&lt;br /&gt;
** Category:Battlefields|Battlefields&lt;br /&gt;
** Category:Crafts|Crafting&lt;br /&gt;
** EXP_Camps|Exp Camps&lt;br /&gt;
** Horizon Adventuring Assistance Program|HAAP&lt;br /&gt;
** Category:Hobbies|Hobbies&lt;br /&gt;
** Category:Missions|Missions&lt;br /&gt;
** Notorious Monsters: Level Guide|NMs&lt;br /&gt;
** Category:Quests|Quests&lt;br /&gt;
&lt;br /&gt;
* Endgame Content&lt;br /&gt;
** Category:Dynamis|Dynamis&lt;br /&gt;
** Category:HENM|HENM&lt;br /&gt;
**Category:HNM|HNM&lt;br /&gt;
** Category:Limbus|Limbus&lt;br /&gt;
** Category:Sea|Sea&lt;br /&gt;
** Category:Sky|Sky&lt;br /&gt;
&lt;br /&gt;
* Wiki Links&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Category:Horizon Herald|Horizon Herald--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Template:Battlefield_Header&amp;diff=115872</id>
		<title>Template:Battlefield Header</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Template:Battlefield_Header&amp;diff=115872"/>
		<updated>2026-01-12T19:59:42Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Spacing?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&amp;lt;onlyinclude&amp;gt;__NOTOC__{{Battlefield Header/Help|{{{1}}}}}&lt;br /&gt;
{| class=&amp;quot;battlefield-table-border horizon-table {{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}} table-xs&amp;quot; style=&amp;quot;border: 1px black solid;&amp;quot;&lt;br /&gt;
! colspan=2 style=&amp;quot;border: 1px black solid;&amp;quot; | {{{name|{{PAGENAME}}}}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; style=&amp;quot;text-align: left;&amp;quot; | Type:&lt;br /&gt;
|width=&amp;quot;70%&amp;quot; | {{#if:{{{type|}}} |{{#switch:{{lc:{{{type}}}}}&lt;br /&gt;
| bcnm = [[:Category:BCNM|BCNM]] [[Category:BCNM]] [[Category:Battlefields]]&lt;br /&gt;
| ksnm = [[:Category:KSNM|KSNM]] [[Category:KSNM]] [[Category:Battlefields]]&lt;br /&gt;
| enm  = [[:Category:ENM|ENM]] [[Category:ENM]] [[Category:Battlefields]]&lt;br /&gt;
| isnm = [[:Category:ISNM|ISNM]] [[Category:ISNM]] [[Category:Battlefields]]&lt;br /&gt;
| znm  = [[:Category:ZNM|ZNM]] [[Category:ZNM]] [[Category:Battlefields]] {{#if:{{{tier|}}} | (Tier {{#switch:{{lc:{{{tier}}}}}|1|i = I|2|ii = II|3|iii = III|4|iv = IV|5|v = V|#default=??}})}}&lt;br /&gt;
| henm = [[:Category:HENM|HENM]] [[Category:HENM]] [[Category:Battlefields]] {{#if:{{{tier|}}}| (Tier {{#switch:{{lc:{{{tier}}}}}|1|i = I|2|ii = II|3|iii = III|4|iv = IV|5|v = V|#default=??}})}}&lt;br /&gt;
| mission=[[:Category:{{#if:{{{mission affiliation|}}}|{{Mission Header/ExpansionSwitch|{{{mission affiliation}}}}}|}} Missions|{{#if:{{{mission affiliation|}}}|{{Mission Header/ExpansionSwitch|{{{mission affiliation}}}}}|}} Mission]]&lt;br /&gt;
| #default = {{{type}}}&lt;br /&gt;
}}|}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Zone:&lt;br /&gt;
| [[{{{zone}}}]]{{#if:{{{location|}}}|&amp;amp;nbsp;{{Position|{{{zone}}}|{{{location}}}}}}}{{#if:{{{location2|}}}| / {{Position|{{{zone}}}|{{{location2}}}}}}}{{#if:{{{location3|}}}| / {{Position|{{{zone}}}|{{{location3}}}}}}}{{#if:{{{location4|}}}| / {{Position|{{{zone}}}|{{{location4}}}}}}}{{#if:{{{location add|}}}|&amp;lt;br/&amp;gt;&#039;&#039;{{{location add}}}&#039;&#039;}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Entry Item:&lt;br /&gt;
| {{#ifeq:{{lc:{{{type}}}}}|enm|{{KeyItem}}|}}[[{{{entry item}}}]]&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Level:&lt;br /&gt;
| {{#if:{{{level|}}}|{{{level}}}|&#039;&#039;No minimum&#039;&#039;}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Members:&lt;br /&gt;
| {{{members}}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot; class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Time:&lt;br /&gt;
| {{{time}}}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;  class=&amp;quot;{{Battlefield Header/CSS-Switch|{{{type}}}|{{{mission affiliation}}}}}  battlefield-table-border subheader&amp;quot; {{#if: {{{notes|}}}||style=&amp;quot;display: none;&amp;quot;}}&lt;br /&gt;
! style=&amp;quot;text-align: left;&amp;quot; | Additional Information:&lt;br /&gt;
| {{#if: {{{notes|}}} |{{{notes}}}|}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
{{Battlefield Header/Documentation}}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=File:Leech_King.png&amp;diff=115220</id>
		<title>File:Leech King.png</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=File:Leech_King.png&amp;diff=115220"/>
		<updated>2025-12-27T22:55:29Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Changed protection settings for &amp;quot;File:Leech King.png&amp;quot; ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite)) [cascading]&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114809</id>
		<title>Category:Outlands Quests</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114809"/>
		<updated>2025-12-15T05:45:22Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Removed the &amp;quot;Eastern Altepa Desert&amp;quot; section because the only quest was an OoE quest that doesn&amp;#039;t exist on Horizon&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Quests]]&lt;br /&gt;
[[Category:Quests]]&lt;br /&gt;
[[File:Norg-pic.jpg|500px|]]&lt;br /&gt;
&lt;br /&gt;
== Quick Fame ==&lt;br /&gt;
*If you cannot access a specific quest, repeat quests:&lt;br /&gt;
**[[Only the Best]] to level [[Rabao]] fame.&lt;br /&gt;
**[[Mihgo&#039;s Amigo]] to level [[Norg]] fame.&lt;br /&gt;
**[[Mandragora-Mad]] to level [[Kazham]] fame.&lt;br /&gt;
*See [[Quick Reputation|Quick Reputation Guide]] for alternative options to level fame.&lt;br /&gt;
*Fame can be checked at NPCs: &lt;br /&gt;
**[[Waylea]] (G-9) [[Rabao]].&lt;br /&gt;
**[[Vaultimand]] (H-8) [[Norg]].&lt;br /&gt;
**[[Ney Hiparujah]] (I-11) [[Kazham]].&lt;br /&gt;
&lt;br /&gt;
== Quests of Note ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot;| Outlands&lt;br /&gt;
|-&lt;br /&gt;
!width=&amp;quot;35%&amp;quot;| Quest&lt;br /&gt;
!width=&amp;quot;13%| Type&lt;br /&gt;
!width=&amp;quot;6%| Fame&lt;br /&gt;
!width=&amp;quot;46%&amp;quot;| Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]&lt;br /&gt;
|  [[SAM]] Flag&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
|  General&lt;br /&gt;
|  2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Quests List  ==&lt;br /&gt;
&lt;br /&gt;
*Table below is sorted by how quests appear in the completed quest log section.&lt;br /&gt;
*Quests marked w/ an * are out of order and will be adjusted as I complete them.&lt;br /&gt;
*Table is formatted for quick copy and paste to a spreadsheet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table sortable&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot;| Outlands: Completed Quests&lt;br /&gt;
|-&lt;br /&gt;
! Quest&lt;br /&gt;
!width=&amp;quot;5%&amp;quot;| Complete&lt;br /&gt;
|-&lt;br /&gt;
| [[The Firebloom Tree]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[Greetings to the Guardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Question of Taste]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudging]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[You Call That A Knife?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Missionary Man]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Even More Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Personal Hygiene]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Opo-opo and I]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Cloak and Dagger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Discerning Eye (Kazham)]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Forge Your Destiny]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Black Market]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Mama Mia]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Stop Your Whining]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Secret of the Damp Scroll]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[It&#039;s Not Your Vault]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like a Shining Subligar]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like Shining Leggings]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sacred Katana]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Yomi Okuri]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Thief in Norg!?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[20 in Pirate Years]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[True Will]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Potential Within]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Bugi Soden]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[An Undying Pledge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wrath of the Opo-opos]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wandering Souls]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Soul Searching]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might (Repeat)|Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Don&#039;t Forget the Antidote]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Missing Piece]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Kuftal Tour]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Immortal Lu Shang]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Chasing Dreams]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Search for Goldmane]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| *[[Indomitable Spirit]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Thanks for All the Fish]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Fish Favors the Bold]]&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Kazham]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Kazham.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Discerning Eye (Kazham)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Swift]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 1&lt;br /&gt;
| 500 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Dodmos]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]] &lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Rauteinot]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Ronta-Onta]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Question of Taste]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Firebloom Tree]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Soun Abralah]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Even More Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 7&lt;br /&gt;
| [[Rafflesia Nectar]] x3&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Greetings to the Guardian]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Hari Pakhroib]] &lt;br /&gt;
| I-11&lt;br /&gt;
| 7&lt;br /&gt;
| 5000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]] &lt;br /&gt;
|  [[WS]]&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
&amp;lt;!--|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Hildegard]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Opo-opo and I]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Lulupp]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Crown]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Personal Hygiene]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Gatih Mijurabi]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Mithran Stone]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudging]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 11000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[You Call That a Knife?]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Mhebi Juhbily]] &lt;br /&gt;
| I-10&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 7200 gil&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Norg]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Norg.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Magephaud]] &lt;br /&gt;
| I-8&lt;br /&gt;
| 2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Verctissa]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Keal]] &lt;br /&gt;
| H-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heiji]] &lt;br /&gt;
| I-7 &lt;br /&gt;
| 3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heizo]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Shivivi]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Washu]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Laisrean]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Edal-Tahdal]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[An Undying Pledge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Stray Cloud]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Light Buckler]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Mama Mia]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Mamaulabion]] &lt;br /&gt;
| G-6&lt;br /&gt;
| 4&lt;br /&gt;
| [[Evoker&#039;s Ring]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]  &lt;br /&gt;
| [[SAM]] Flag&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[20 in Pirate Years]]&lt;br /&gt;
| [[NIN]] AF1&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Anju]] and [[Zushio]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| [[NIN]] AF2&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Hakama]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[True Will]] &lt;br /&gt;
| [[NIN]] AF3&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Chainmail]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sacred Katana]]&lt;br /&gt;
| [[SAM]] AF1&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Magoroku]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Yomi Okuri]]&lt;br /&gt;
| [[SAM]] AF2&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Sune-Ate]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Thief in Norg!?]]&lt;br /&gt;
| [[SAM]] AF3&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Kabuto]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Black Market]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Muzaffar]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| Varies&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Rabao]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Rabao.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Rahi Fohlatti]]&lt;br /&gt;
| G-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Agado-Pugado]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Alfesar]] &lt;br /&gt;
| H-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Gushing Spring]]&lt;br /&gt;
| G-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|- --&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Indomitable Spirit]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Immortal Lu Shang]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Chasing Dreams]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]]&lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Venerer Ring]], 4000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Search for Goldmane]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]] &lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Deluxe Carbine]], 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Don&#039;t Forget the Antidote]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Edigey]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Dotanuki]], 1800 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Kuftal Tour]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Datta]] &lt;br /&gt;
| F-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 8000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Thanks for All the Fish]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Jourdenaux|Jordenaux]] &lt;br /&gt;
| F-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod +1]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Fish Favors the Bold]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod +1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Cape Teriggan]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:CapeTeriggan.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wandering Souls]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| H-5&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Flagellant&#039;s Rope]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Sanctuary of Zi&#039;Tah]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Zitah-sanctuary.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Soul Searching]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Bat Earring]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Shrine of Ru&#039;Avitau]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:RuAvitau2.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might (Repeat)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Yuhtunga Jungle]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:YuhtungaJungle.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wrath of the Opo-opos]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Necklace]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;QUESTS: 57&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114808</id>
		<title>Category:Outlands Quests</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114808"/>
		<updated>2025-12-15T05:44:33Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Quests List */ Removed reference to OoE quest &amp;quot;Open Sesame&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Quests]]&lt;br /&gt;
[[Category:Quests]]&lt;br /&gt;
[[File:Norg-pic.jpg|500px|]]&lt;br /&gt;
&lt;br /&gt;
== Quick Fame ==&lt;br /&gt;
*If you cannot access a specific quest, repeat quests:&lt;br /&gt;
**[[Only the Best]] to level [[Rabao]] fame.&lt;br /&gt;
**[[Mihgo&#039;s Amigo]] to level [[Norg]] fame.&lt;br /&gt;
**[[Mandragora-Mad]] to level [[Kazham]] fame.&lt;br /&gt;
*See [[Quick Reputation|Quick Reputation Guide]] for alternative options to level fame.&lt;br /&gt;
*Fame can be checked at NPCs: &lt;br /&gt;
**[[Waylea]] (G-9) [[Rabao]].&lt;br /&gt;
**[[Vaultimand]] (H-8) [[Norg]].&lt;br /&gt;
**[[Ney Hiparujah]] (I-11) [[Kazham]].&lt;br /&gt;
&lt;br /&gt;
== Quests of Note ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot;| Outlands&lt;br /&gt;
|-&lt;br /&gt;
!width=&amp;quot;35%&amp;quot;| Quest&lt;br /&gt;
!width=&amp;quot;13%| Type&lt;br /&gt;
!width=&amp;quot;6%| Fame&lt;br /&gt;
!width=&amp;quot;46%&amp;quot;| Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]&lt;br /&gt;
|  [[SAM]] Flag&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
|  General&lt;br /&gt;
|  2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Quests List  ==&lt;br /&gt;
&lt;br /&gt;
*Table below is sorted by how quests appear in the completed quest log section.&lt;br /&gt;
*Quests marked w/ an * are out of order and will be adjusted as I complete them.&lt;br /&gt;
*Table is formatted for quick copy and paste to a spreadsheet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table sortable&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot;| Outlands: Completed Quests&lt;br /&gt;
|-&lt;br /&gt;
! Quest&lt;br /&gt;
!width=&amp;quot;5%&amp;quot;| Complete&lt;br /&gt;
|-&lt;br /&gt;
| [[The Firebloom Tree]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[Greetings to the Guardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Question of Taste]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudging]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[You Call That A Knife?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Missionary Man]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Even More Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Personal Hygiene]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Opo-opo and I]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Cloak and Dagger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Discerning Eye (Kazham)]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Forge Your Destiny]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Black Market]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Mama Mia]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Stop Your Whining]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Secret of the Damp Scroll]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[It&#039;s Not Your Vault]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like a Shining Subligar]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like Shining Leggings]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sacred Katana]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Yomi Okuri]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Thief in Norg!?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[20 in Pirate Years]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[True Will]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Potential Within]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Bugi Soden]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[An Undying Pledge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wrath of the Opo-opos]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wandering Souls]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Soul Searching]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might (Repeat)|Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Don&#039;t Forget the Antidote]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Missing Piece]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Kuftal Tour]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Immortal Lu Shang]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Chasing Dreams]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Search for Goldmane]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| *[[Indomitable Spirit]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Thanks for All the Fish]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Fish Favors the Bold]]&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Kazham]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Kazham.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Discerning Eye (Kazham)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Swift]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 1&lt;br /&gt;
| 500 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Dodmos]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]] &lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Rauteinot]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Ronta-Onta]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Question of Taste]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Firebloom Tree]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Soun Abralah]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Even More Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 7&lt;br /&gt;
| [[Rafflesia Nectar]] x3&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Greetings to the Guardian]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Hari Pakhroib]] &lt;br /&gt;
| I-11&lt;br /&gt;
| 7&lt;br /&gt;
| 5000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]] &lt;br /&gt;
|  [[WS]]&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
&amp;lt;!--|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Hildegard]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Opo-opo and I]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Lulupp]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Crown]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Personal Hygiene]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Gatih Mijurabi]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Mithran Stone]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudging]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 11000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[You Call That a Knife?]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Mhebi Juhbily]] &lt;br /&gt;
| I-10&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 7200 gil&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Norg]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Norg.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Magephaud]] &lt;br /&gt;
| I-8&lt;br /&gt;
| 2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Verctissa]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Keal]] &lt;br /&gt;
| H-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heiji]] &lt;br /&gt;
| I-7 &lt;br /&gt;
| 3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heizo]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Shivivi]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Washu]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Laisrean]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Edal-Tahdal]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[An Undying Pledge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Stray Cloud]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Light Buckler]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Mama Mia]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Mamaulabion]] &lt;br /&gt;
| G-6&lt;br /&gt;
| 4&lt;br /&gt;
| [[Evoker&#039;s Ring]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]  &lt;br /&gt;
| [[SAM]] Flag&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[20 in Pirate Years]]&lt;br /&gt;
| [[NIN]] AF1&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Anju]] and [[Zushio]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| [[NIN]] AF2&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Hakama]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[True Will]] &lt;br /&gt;
| [[NIN]] AF3&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Chainmail]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sacred Katana]]&lt;br /&gt;
| [[SAM]] AF1&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Magoroku]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Yomi Okuri]]&lt;br /&gt;
| [[SAM]] AF2&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Sune-Ate]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Thief in Norg!?]]&lt;br /&gt;
| [[SAM]] AF3&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Kabuto]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Black Market]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Muzaffar]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| Varies&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Rabao]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Rabao.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Rahi Fohlatti]]&lt;br /&gt;
| G-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Agado-Pugado]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Alfesar]] &lt;br /&gt;
| H-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Gushing Spring]]&lt;br /&gt;
| G-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|- --&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Indomitable Spirit]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Immortal Lu Shang]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Chasing Dreams]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]]&lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Venerer Ring]], 4000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Search for Goldmane]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]] &lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Deluxe Carbine]], 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Don&#039;t Forget the Antidote]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Edigey]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Dotanuki]], 1800 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Kuftal Tour]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Datta]] &lt;br /&gt;
| F-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 8000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Thanks for All the Fish]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Jourdenaux|Jordenaux]] &lt;br /&gt;
| F-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod +1]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Fish Favors the Bold]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod +1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Cape Teriggan]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:CapeTeriggan.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wandering Souls]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| H-5&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Flagellant&#039;s Rope]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Eastern Altepa Desert]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Eastern_Altepa_Desert_Map.jpg|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Open Sesame]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Lokpix]]&lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Loadstone]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Sanctuary of Zi&#039;Tah]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Zitah-sanctuary.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Soul Searching]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Bat Earring]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Shrine of Ru&#039;Avitau]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:RuAvitau2.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might (Repeat)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Yuhtunga Jungle]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:YuhtungaJungle.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wrath of the Opo-opos]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Necklace]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;QUESTS: 57&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Cloister_of_Tremors&amp;diff=114807</id>
		<title>Cloister of Tremors</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Cloister_of_Tremors&amp;diff=114807"/>
		<updated>2025-12-15T05:43:37Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Involved in Quests/Missions */ Removed reference to OoE quest &amp;quot;Open Sesame&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Zone Infobox&lt;br /&gt;
| ToC =&lt;br /&gt;
[[#Involved in Quests/Missions|Quests/Missions]] • [[#Battlefield Events|Battlefield]] &lt;br /&gt;
| Description = Located within the halls of the [[Quicksand Caves]] Home point #2, this tunnel is the home of the earth protocrystal.&lt;br /&gt;
[[File:CloisterofTremors-pic.jpg|200px|center]]&lt;br /&gt;
| Connections =  &lt;br /&gt;
[[Quicksand Caves]]&lt;br /&gt;
&amp;lt;br&amp;gt;[[Eastern Altepa Desert]]&lt;br /&gt;
| Maps = No Map&lt;br /&gt;
| Stats = {{Tractor}} {{Escape}}&lt;br /&gt;
| Region  = Kuzotz&lt;br /&gt;
| Type = Battlefield&lt;br /&gt;
| HELM = None&lt;br /&gt;
| Map Acquisition = No map&lt;br /&gt;
| Restrictions = None&lt;br /&gt;
| Requirements = None&lt;br /&gt;
| Expansion = Rise of the Zilart&lt;br /&gt;
| Weather = {{Earth|Double Weather}}&lt;br /&gt;
| BGM = &amp;quot;Tough Battle #2&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
[[Category:Battlefields]]&lt;br /&gt;
== Involved in [[:Category:Quests|Quests]]/[[:Category:Missions|Missions]] ==&lt;br /&gt;
{{TableQuestHeader}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= The Puppet Master| Type= [[:category:artifact Armor|AF]] (SMN)| Starter= ---| Zone= [[Windurst Walls]]| Coordinates= }}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Trial by Earth| Type= Avatar| Starter= [[Juroro]]| Zone= [[Port Bastok]]| Coordinates= I-8}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Trial Size Trial by Earth| Type= Avatar| Starter= [[Ferrol]]| Zone= [[Port Bastok]]| Coordinates= I-8}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name=Waking the Beast| Type= General| Starter= [[Carbuncle]]| Zone= [[La Theine Plateau]]| Coordinates=G-6 }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--{{TableMissionHeader}}&lt;br /&gt;
&lt;br /&gt;
{{TableMissionLine |Name = Sugar-coated Directive| Nation= [[:Category:A Shantotto Ascension Missions|A Shantotto Ascension]]| Starter= [[D. Shantotto]]| Zone= [[Qufim Island]]| Coordinates= H-7}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{TableQuestFooter}}&lt;br /&gt;
&lt;br /&gt;
== Battlefield Events ==&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;3&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F1BF8C&amp;quot;&lt;br /&gt;
|colspan=6|&#039;&#039;&#039;Entrance:&#039;&#039;&#039; Earth Protocrystal&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F1BF8C&amp;quot;&lt;br /&gt;
! Name || Type || Item || Level || Members || Time&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F9D5B0&amp;quot;&lt;br /&gt;
|style=&amp;quot;padding-left:1ex;&amp;quot;|[[Trial Size Trial by Earth]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|Avatar&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|[[Mini Tuning Fork of Earth]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|20&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1 person&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|15 minutes&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F9D5B0&amp;quot;&lt;br /&gt;
|style=&amp;quot;padding-left:1ex;&amp;quot;|[[Trial by Earth]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|Avatar&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|[[Tuning fork of earth]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|75&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|6 people&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|30 minutes&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F9D5B0&amp;quot;&lt;br /&gt;
|style=&amp;quot;padding-left:1ex;&amp;quot;|[[The Puppet Master]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|SMN AF1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|[[Earth Pendulum]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|75&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|18 people&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|30 minutes&lt;br /&gt;
|- BGCOLOR=&amp;quot;#F9D5B0&amp;quot;&lt;br /&gt;
|style=&amp;quot;padding-left:1ex;&amp;quot;|[[Waking the Beast]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|Quest&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|[[Rainbow Resonator]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|75&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|18 people&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|30 minutes&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Crawler&amp;diff=114806</id>
		<title>Crawler</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Crawler&amp;diff=114806"/>
		<updated>2025-12-15T05:43:15Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Notes: */ Removed reference to OoE quest &amp;quot;Open Sesame&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Monster&lt;br /&gt;
| image = Crawlermob.jpg&lt;br /&gt;
| image caption = Crawler&lt;br /&gt;
| job = &lt;br /&gt;
| family = Crawlers&lt;br /&gt;
| crystal = Earth&lt;br /&gt;
| weaknesses = {{element|Dark}}&lt;br /&gt;
| resistances =  &lt;br /&gt;
| immunities = &lt;br /&gt;
| absorbs = &lt;br /&gt;
| type = &lt;br /&gt;
| subtype = &lt;br /&gt;
| tier = &lt;br /&gt;
| title obtained = &lt;br /&gt;
}}&lt;br /&gt;
{| class=&amp;quot;mobs horizon-table table-xl&amp;quot;&lt;br /&gt;
! Zone || Level || Drops || Steal || Spawns || Notes&lt;br /&gt;
|- &lt;br /&gt;
|[[East Sarutabaruta]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |3 - 6&lt;br /&gt;
|&lt;br /&gt;
*[[Silk Thread]]      {{Hxi Drop Rate|asb=240/1000|0|0}}&lt;br /&gt;
*[[Crawler Calculus]] {{Hxi Drop Rate|asb=240/1000|0|0}}&lt;br /&gt;
*[[Smooth Stone]]     {{Hxi Drop Rate|asb=50/1000|0|0}}&lt;br /&gt;
|&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |45&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |L, H, Sc&amp;lt;br&amp;gt;{{HPMP|low hp=|high hp=110|low mp=none}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|[[West Sarutabaruta]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |&lt;br /&gt;
3 - 8&lt;br /&gt;
|&lt;br /&gt;
*[[Silk Thread]]      {{Hxi Drop Rate|asb=100/1000|0|0}}&lt;br /&gt;
*[[Crawler Calculus]] {{Hxi Drop Rate|asb=100/1000|0|0}}&lt;br /&gt;
* [[Meteorite]]       {{Hxi Drop Rate|asb=50/1000|0|0}} &amp;lt;small&amp;gt;(only on Starfall Hillock)&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Smooth Stone]]     {{Hxi Drop Rate|asb=50/1000|0|0}}&lt;br /&gt;
|&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |41&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |L, H, Sc&amp;lt;br&amp;gt;{{HPMP|low hp=|high hp=110|low mp=none}}&lt;br /&gt;
&lt;br /&gt;
|- class=&amp;quot;wotg&amp;quot;&lt;br /&gt;
|[[West Sarutabaruta (S)]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|18 - 21&lt;br /&gt;
|&lt;br /&gt;
*[[Silk Thread]] {{Hxi Drop Rate|asb=130/1000|0|0}}&lt;br /&gt;
|&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|39&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|L, H, Sc&amp;lt;br&amp;gt;{{HPMP|low hp=|high hp=|low mp=none}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;6&amp;quot; |&lt;br /&gt;
{{Monster Notes}}&lt;br /&gt;
|}&lt;br /&gt;
===Notes:===&lt;br /&gt;
:*Respawn time is ~5 minutes.&lt;br /&gt;
:*Only the Crawlers on (or near) Starfall Hillock in [[West Sarutabaruta]] drop [[Meteorite]]s, used for the quest [[Star Struck]].&lt;br /&gt;
:*[[Meteorite]] is used in [[Alchemy]] to make [[Glass Fiber]], [[Copper Nugget]], [[Iron Nugget]], [[Silver Nugget]], [[Gold Nugget]].&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Eastern_Altepa_Desert&amp;diff=114805</id>
		<title>Eastern Altepa Desert</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Eastern_Altepa_Desert&amp;diff=114805"/>
		<updated>2025-12-15T05:42:38Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Involved in Quests/Missions */ Removed OoE quest &amp;quot;Open Sesame&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Zone Infobox&lt;br /&gt;
| ToC = [[#Involved in Quests/Missions|Quests/Missions]] • [[#digging|Chocobo Digging]] • [[#fishing|Fishing]] • [[#weather|Weather]] • [[#NPCs Found Here|NPCs]] • [[#Notorious Monsters Found Here|Notorious Monsters]] • [[#Regular Monsters Found Here|Regular Monsters]] • [[#Event Monsters Found Here|Event Monsters]]&lt;br /&gt;
| Description = The eastern half of Zepwell Island is made up of this arid desert wasteland.  While remnants of the ancient [[Galka]]n civilization that once thrived here dot the landscape, today the area is dominated by sand, wind, and the occasional antican that roams the dunes.&lt;br /&gt;
[[File:Altepa-desert-east-pic.jpg|300px|center]]&lt;br /&gt;
| Connections =  &lt;br /&gt;
[[Western Altepa Desert]] at ({{Location Tooltip|area=Eastern Altepa Desert|pos=I-6}}) and ({{Location Tooltip|area=Eastern Altepa Desert|pos=E-9}})&amp;lt;br&amp;gt;&lt;br /&gt;
[[Korroloka Tunnel]] at ({{Location Tooltip|area=Eastern Altepa Desert|pos=J-8}})&amp;lt;br&amp;gt;&lt;br /&gt;
[[Quicksand Caves]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Cloister of Tremors]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[Survival Guide]]: ({{Location Tooltip|area=Eastern Altepa Desert|pos=F-10}})&lt;br /&gt;
Alternate Arrival Method: [[Teleport-Altep]] to [[Telepoint]] at ({{Location Tooltip|area=Eastern Altepa Desert|pos=G-7}})--&amp;gt;&lt;br /&gt;
| Monstrosity = &lt;br /&gt;
| Weather = {{Earth|Double Weather}} {{Fire|Double Weather}}&lt;br /&gt;
| Stats = {{Chocobo}} {{Tractor}}&lt;br /&gt;
| Region  = Kuzotz&lt;br /&gt;
| Type = Outdoor&lt;br /&gt;
| Maps =&lt;br /&gt;
{{Zone Tooltip Map|Map 1}}&lt;br /&gt;
| Map Acquisition = [[Map of the Kuzotz Region|Purchase]]&lt;br /&gt;
| Restrictions = None&lt;br /&gt;
| Requirements = None&lt;br /&gt;
| Expansion = Rise of the Zilart&lt;br /&gt;
| BGM = &amp;quot;Altepa Desert&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
== Involved in [[:Category:Quests|Quests]]/[[:Category:Missions|Missions]] ==&lt;br /&gt;
{{TableQuestHeader}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= 20 in Pirate Years| Type= [[:category:Artifact Armor|AF]] (NIN)| Starter= [[Ryoma]]| Zone= [[Norg]]| Coordinates= H-8}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= A Craftsman&#039;s Work| Type= [[:category:Artifact Armor|AF]] (DRG)| Starter= [[Miaux]]| Zone= [[Northern San d&#039;Oria]]| Coordinates= E-6}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Beastmen Treasure (Kuzotz Region)| Type= General| Starter= [[Peddlestox]]| Zone= [[Western Altepa Desert]]| Coordinates= L-7}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Don&#039;t Forget the Antidote| Type= General| Starter= [[Edigey]]| Zone= [[Rabao]]| Coordinates= F-9}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Expeditionary Force/Eastern Altepa Desert| Type= [[Expeditionary Force]]| Starter= ---| Zone= ---| Coordinates= }}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= For the Birds| Type= General| Starter= [[Koblakiq]]| Zone= [[Oldton Movalpolos]]| Coordinates= H-11}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Garrison/Eastern Altepa Desert| Type= [[Garrison]]| Starter= ---| Zone= ---| Coordinates= }}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= Inheritance| Type= [[:category:weapon Skills|Weapon Skills]]| Starter= [[Gumbah]]| Zone= [[Bastok Mines]]| Coordinates= J-7}}&lt;br /&gt;
&lt;br /&gt;
{{TableQuestLine |Name= The Missing Piece| Type= Scroll| Starter= [[Alfesar]]| Zone= [[Rabao]]| Coordinates= H-7}}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{TableMissionHeader}}&lt;br /&gt;
&lt;br /&gt;
{{TableMissionLine |Name=Shock! Arrant Abuse of Authority | Nation=[[:Category:A Moogle Kupo d&#039;Etat Missions|Moogle Kupo d&#039;Etat]]| Starter= [[Moogle]]| Zone= [[Upper Jeuno]]| Coordinates=H-8 }}&lt;br /&gt;
&lt;br /&gt;
{{TableMissionLine |Name=Rescue! A Moogle&#039;s Labor of Love| Nation=[[:Category:A Moogle Kupo d&#039;Etat Missions|Moogle Kupo d&#039;Etat]]| Starter= | Zone= | Coordinates= }}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{TableQuestFooter}}&lt;br /&gt;
&lt;br /&gt;
==Other Information==&lt;br /&gt;
&amp;lt;div class=&amp;quot;flex-container&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;flex-container-item-2&amp;quot;&amp;gt;&lt;br /&gt;
{{Zone Section Header|digging}}&lt;br /&gt;
{{:{{PAGENAME}}/Chocobo Digging}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;flex-container-item-2&amp;quot;&amp;gt;&lt;br /&gt;
{{Zone Section Header|fishing}}&lt;br /&gt;
{{:{{PAGENAME}}/Fishing}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;flex-container-item-2&amp;quot;&amp;gt;&lt;br /&gt;
{{Zone Section Header|weather}}&lt;br /&gt;
{{:{{PAGENAME}}/Weather}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==[[:Category:NPCs|NPCs]] Found Here==&lt;br /&gt;
{{TableNPCHeader}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Eulaclaire]] {{changes}} | Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=G-7}}| Type= [[Chocobo Renter]]}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Sowande]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=F-10}}| Type= [[Outpost Merchant]]}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Daborn, I.M.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=I-6}}| Type= [[Conquest Overseer]]: Bastok: Outland Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Lindgard, I.M.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=F-10}}| Type= [[Conquest Overseer]]: Bastok: Outpost Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Laimeve, R.K.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=I-6}}| Type= [[Conquest Overseer]]: San d&#039;Oria: Outland Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Eaulevisat, R.K.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=F-10}}| Type= [[Conquest Overseer]]: San d&#039;Oria: Outpost Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Sahgygy, W.W.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=I-6}}| Type= [[Conquest Overseer]]: Windurst: Outland Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Variko-Njariko, W.W.]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=F-10}}| Type= [[Conquest Overseer]]: Windurst: Outpost Guard}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCLine | Name= [[Lokpix]]| Coordinates= {{Location Tooltip|area=Eastern Altepa Desert|pos=G-7}}| Type =[[Quest Giver NPC]]}}&lt;br /&gt;
&lt;br /&gt;
{{TableNPCFooter}}&lt;br /&gt;
&lt;br /&gt;
==[[:Category:Notorious Monsters|Notorious Monsters]] Found Here==&lt;br /&gt;
{{TableMobHeader-NM }}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Cactrot Rapido| Spawn= | Lvl= 80-81| Drop= [[Arco de Velocidad]]&amp;lt;br&amp;gt;[[Arete del Sol]]&amp;lt;br&amp;gt;[[Cactuar Needle]]&amp;lt;br&amp;gt;[[Cactuar Root]]&amp;lt;br&amp;gt;[[Cactus Stems]]| Steal= | Family= Sabotenders| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Cactrot Rapido}}| Note= L}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Centurio XII-I| Spawn= | Lvl= 56| Drop= [[Intruder Earring]]| Steal= | Family= Antica| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Centurio XII-I}}| Note= A, L}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Donnergugi| Spawn= | {{question}}| Drop= [[Thunder Coral]]&amp;lt;br&amp;gt;| Steal= {{question}}| Family= Beetles| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Donnergugi}}| Note= L}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Dune Widow| Spawn= | Lvl= 45-47| Drop= [[Spider Torque]]&amp;lt;br&amp;gt;[[Spider Web]]| Steal= [[Spider Web]]&amp;lt;br&amp;gt;| Family= Spiders| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Dune Widow}}| Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Nandi| Spawn= | Lvl=48-49| Drop= [[Rathe Earring]]&amp;lt;br&amp;gt;| Steal= {{question}}| Family= Dhalmel| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Nandi}}| Note= L}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-NM| Name= Sabotender Corrido| Spawn= | {{question}}| Drop= [[Aptant: Ishis]]&amp;lt;br&amp;gt;| Steal= {{question}}| Family= Sabotenders| NumSpawns= {{Tooltip-NMMap|map= Altepa-desert-east nm.png|NM= Sabotenter Corrido}}| Note= A|Lvl = 72}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobFooter-NM}}&lt;br /&gt;
&lt;br /&gt;
==[[:Category:Bestiary|Regular Monsters]] Found Here==&lt;br /&gt;
{{TableMobHeader-Regular}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Cutter| Spawn= &#039;&#039;Fished up&#039;&#039;| Lvl=30-33| Drop= [[Crab Shell]] &amp;lt;br&amp;gt;[[Land Crab Meat]] &amp;lt;br&amp;gt;[[Rock Salt]] | Steal= [[Rock Salt]]| Family=  Crabs|NumSpawns=1 | Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Greater Pugil| Spawn= &#039;&#039;Fished up&#039;&#039;| Lvl=30-33| Drop=| Steal= | Family=  Pugils|NumSpawns=1 | Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Giant Spider| Spawn= | Lvl=30-34| Drop= [[Spider Web]] | Steal= [[Spider Web]]| Family=  Spiders|NumSpawns= 51| Note= L, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Auxiliarius| Spawn= | Lvl=35-39| Drop= [[Antican Pauldron]] &amp;lt;br&amp;gt;[[Copper Ore]] &amp;lt;br&amp;gt;[[Rotten Meat]] | Steal= [[Silver Beastcoin]]| Family=  Antica |NumSpawns= 8| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Faber| Spawn= | Lvl=35-39| Drop= [[Antican Robe]] &amp;lt;br&amp;gt;[[Copper Ore]] &amp;lt;br&amp;gt;[[Rotten Meat]] | Steal= [[Silver Beastcoin]]| Family=  Antica|NumSpawns= 5| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Funditor| Spawn= | Lvl=35-39| Drop= [[Antican Robe]] &amp;lt;br&amp;gt;[[Iron Arrow]] &amp;lt;br&amp;gt;[[Rotten Meat]] | Steal= [[Silver Beastcoin]]| Family=  Antica|NumSpawns= 7| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Ironshell| Spawn= &#039;&#039;Fished up&#039;&#039;| Lvl=36-39| Drop= [[Crab Shell]] &amp;lt;br&amp;gt;[[Land Crab Meat]] &amp;lt;br&amp;gt;[[Rock Salt]] | Steal= [[Rock Salt]]| Family=  Crabs|NumSpawns=1 | Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Sand Beetle| Spawn= | Lvl=36-40| Drop= [[Beetle Jaw]]  &amp;lt;br&amp;gt;[[Beetle Shell]] &amp;lt;br&amp;gt;[[Insect Wing]] | Steal= | Family=  Beetles|NumSpawns= 65| Note= L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Flesh Eater|Spawn=&#039;&#039;Spawns During: Nighttime&#039;&#039;|Lvl= 37-42| Drop= [[Copper Ore]] &amp;lt;br&amp;gt;[[Flint Stone]] &amp;lt;br&amp;gt;[[Iron Ore]] &amp;lt;br&amp;gt;[[Zinc Ore]] | Steal= | Family=  Worms|NumSpawns= 28| Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Desert Dhalmel| Spawn= | Lvl=38-44| Drop= [[Dhalmel Hide]] &amp;lt;br&amp;gt;[[Dhalmel Meat]]  &amp;lt;br&amp;gt;[[Giant Femur]]  &amp;lt;br&amp;gt;[[Papaka Grass]]| Steal= | Family=  Dhalmel|NumSpawns= 35| Note= L, S, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Makara| Spawn= &#039;&#039;Fished up&#039;&#039;| Lvl=42-45| Drop= | Steal= | Family=  Pugils|NumSpawns=1 | Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Sabotender| Spawn= | Lvl=42-46| Drop= [[Arnica Root]] &amp;lt;br&amp;gt;[[Cactus Arm]] &amp;lt;br&amp;gt;[[Distilled Water]]  &amp;lt;br&amp;gt;[[Cactuar Needle]] | Steal= | Family=  Sabotenders|NumSpawns= 16| Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Doom Scorpion| Spawn= | Lvl=44-47| Drop= [[Desert Venom]]  &amp;lt;br&amp;gt;[[Scorpion Claw]] &amp;lt;br&amp;gt;[[Scorpion Shell]] | Steal= | Family=  Scorpions|NumSpawns= 5| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Lost Soul| Spawn= &#039;&#039;Spawns During: Nighttime&#039;&#039;| Lvl=44-48| Drop= [[Bone Chip]] &amp;lt;br&amp;gt;[[Revival Tree Root]] | Steal= [[Bone Chip]]| Family= Skeletons|NumSpawns= 13 |Note= A, H, HP}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Decurio| Spawn= | Lvl=44-49| Drop= [[Antican Pauldron]] &amp;lt;br&amp;gt;[[Iron Ore]] &amp;lt;br&amp;gt;[[Rotten Meat]] &amp;lt;br&amp;gt;[[Flash|Scroll of Flash]] | Steal= [[Mythril Beastcoin]]| Family=  Antica|NumSpawns= 18| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Sagittarius| Spawn= | Lvl=44-49| Drop= [[Antican Robe]] &amp;lt;br&amp;gt;[[Iron Arrow]] &amp;lt;br&amp;gt;[[Iron Ore]] &amp;lt;br&amp;gt;[[Rotten Meat]] | Steal= [[Mythril Beastcoin]]| Family=  Antica|NumSpawns= 6| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Speculator| Spawn= | Lvl=44-49| Drop= [[Antican Robe]]  &amp;lt;br&amp;gt;[[Iron Ore]] &amp;lt;br&amp;gt;[[Rotten Meat]] | Steal= [[Mythril Beastcoin]]| Family=  Antica|NumSpawns= 6| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Goblin Digger| Spawn= | Lvl=45-49| Drop= [[Goblin Armor]] &amp;lt;br&amp;gt;[[Goblin Mask]] | Steal= [[Pickaxe]]| Family=  Goblins|NumSpawns= 1| Note= A, L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Goblin Poacher| Spawn= | Lvl=45-49| Drop= [[Cuir Bandana]]  &amp;lt;br&amp;gt;[[Goblin Armor]]  &amp;lt;br&amp;gt;[[Goblin Mask]] &amp;lt;br&amp;gt;[[Mythril Beastcoin]]  | Steal= [[Crossbow Bolt]]| Family=  Goblins|NumSpawns= 9| Note= A, L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Goblin Reaper| Spawn= | Lvl=45-49| Drop= [[Goblin Helm]] &amp;lt;br&amp;gt;[[Goblin Mail]] &amp;lt;br&amp;gt;[[Sallet]] &amp;lt;br&amp;gt;[[Absorb-AGI|Scroll of Absorb-AGI]] &amp;lt;br&amp;gt;[[Absorb-INT|Scroll of Absorb-INT]] &amp;lt;br&amp;gt;[[Absorb-VIT|Scroll of Absorb-VIT]] &amp;lt;br&amp;gt;[[Stun|Scroll of Stun]] | Steal= [[Mythril Beastcoin]]| Family=  Goblins|NumSpawns= 6| Note= A, L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Goblin Robber| Spawn= | Lvl=45-49| Drop= [[Cuir Bandana]] &amp;lt;br&amp;gt;[[Cuir Highboots]] &amp;lt;br&amp;gt;[[Goblin Armor]]  &amp;lt;br&amp;gt;[[Goblin Mask]] &amp;lt;br&amp;gt;[[Mythril Beastcoin]]  | Steal= [[Mythril Beastcoin]]| Family=  Goblins|NumSpawns= 10| Note= A, L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Goblin Trader| Spawn= &#039;&#039;Assisted by [[Goblin&#039;s Spider]] (38-40)&#039;&#039;| Lvl=45-49| Drop= [[Cuir Gloves]]&amp;lt;br&amp;gt;[[Goblin Armor]]  &amp;lt;br&amp;gt;[[Goblin Mask]] &amp;lt;br&amp;gt;[[Velvet Cloth]] | Steal= | Family=  Goblins|NumSpawns= 6| Note= A, L, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Lesser Manticore| Spawn= | Lvl=47-49| Drop= [[Manticore Fang]] &amp;lt;br&amp;gt;[[Manticore Hair]]&amp;lt;br&amp;gt;[[Manticore Hide]] | Steal= | Family= Manticores|NumSpawns= 10| Note= A, S, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Diatryma| Spawn= | Lvl=47-50| Drop= [[Diatryma Meat]]&amp;lt;br&amp;gt;[[Giant Bird Feather]]&amp;lt;br&amp;gt;[[Giant Bird Plume]] | Steal= | Family=  Rocs|NumSpawns= 7| Note= A, S}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Earth Elemental| Spawn= &#039;&#039;During earth weather&#039;&#039;| Lvl=47-49| Drop= [[Earth Cluster]] | Steal= | Family=  Elementals|NumSpawns= 7| Note= M}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Fire Elemental| Spawn= &#039;&#039;During fire weather&#039;&#039;| Lvl=47-49| Drop= [[Fire Cluster]] | Steal= | Family=  Elementals|NumSpawns= 6| Note= M}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Bigclaw| Spawn= &#039;&#039;Fished up&#039;&#039;| Lvl=48-51| Drop= [[Crab Shell]] &amp;lt;br&amp;gt;[[Land Crab Meat]] &amp;lt;br&amp;gt;[[Rock Salt]] | Steal= [[Rock Salt]]| Family=  Crabs|NumSpawns=1 | Note= A, H}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Centurio| Spawn= | Lvl=50-52| Drop= [[Antican Pauldron]] &amp;lt;br&amp;gt;[[Rotten Meat]]&amp;lt;br&amp;gt;[[Mythril Ore]] | Steal= [[Mythril Beastcoin]]| Family=  Antica|NumSpawns= 3| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Antican Veles| Spawn= | Lvl=50-52| Drop= [[Antican Pauldron]] &amp;lt;br&amp;gt;[[Dhalmel Leather Missive]] &amp;lt;br&amp;gt;[[Rotten Meat]] &amp;lt;br&amp;gt;[[Xhifhut Bow]] | Steal= | Family=  Antica|NumSpawns= 3| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Regular| Name=Mud Crab| Spawn= | Lvl=59-62| Drop= [[Crab Shell]] &amp;lt;br&amp;gt;[[Land Crab Meat]] &amp;lt;br&amp;gt;[[Rock Salt]] | Steal= [[Rock Salt]]| Family=  Crabs|NumSpawns=8 | Note= NA}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobFooter-Regular}}&lt;br /&gt;
&lt;br /&gt;
==[[:Category:Bestiary|Event Monsters]] Found Here==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&#039;&#039;&#039;Garrison:&#039;&#039;&#039; [[Garrison/Eastern Altepa Desert]]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expeditionary Force:&#039;&#039;&#039; [[Expeditionary Force/Eastern Altepa Desert]]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{TableMobHeader-Special}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Special| Name= Decurio I-III| Spawn= &#039;&#039;Spawned Quest: [[A Craftsman&#039;s Work]]&#039;&#039;| Lvl= 55| Drop= | Steal= | Family= Antica| NumSpawns= 1| Note= A, L, H, Sc}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobLine-Special| Name= Tsuchigumo| Spawn= &#039;&#039;Spawned Quest: [[20 in Pirate Years]]&#039;&#039;| Lvl= 42| Drop= | Steal= | Family= Spiders| NumSpawns= 2| Note= A, L}}&lt;br /&gt;
&lt;br /&gt;
{{TableMobFooter-Special}} &lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114804</id>
		<title>Category:Outlands Quests</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Outlands_Quests&amp;diff=114804"/>
		<updated>2025-12-15T05:41:54Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Quests of Note */ Remove OoE quest &amp;quot;Open Sesame&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Quests]]&lt;br /&gt;
[[Category:Quests]]&lt;br /&gt;
[[File:Norg-pic.jpg|500px|]]&lt;br /&gt;
&lt;br /&gt;
== Quick Fame ==&lt;br /&gt;
*If you cannot access a specific quest, repeat quests:&lt;br /&gt;
**[[Only the Best]] to level [[Rabao]] fame.&lt;br /&gt;
**[[Mihgo&#039;s Amigo]] to level [[Norg]] fame.&lt;br /&gt;
**[[Mandragora-Mad]] to level [[Kazham]] fame.&lt;br /&gt;
*See [[Quick Reputation|Quick Reputation Guide]] for alternative options to level fame.&lt;br /&gt;
*Fame can be checked at NPCs: &lt;br /&gt;
**[[Waylea]] (G-9) [[Rabao]].&lt;br /&gt;
**[[Vaultimand]] (H-8) [[Norg]].&lt;br /&gt;
**[[Ney Hiparujah]] (I-11) [[Kazham]].&lt;br /&gt;
&lt;br /&gt;
== Quests of Note ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot;| Outlands&lt;br /&gt;
|-&lt;br /&gt;
!width=&amp;quot;35%&amp;quot;| Quest&lt;br /&gt;
!width=&amp;quot;13%| Type&lt;br /&gt;
!width=&amp;quot;6%| Fame&lt;br /&gt;
!width=&amp;quot;46%&amp;quot;| Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]&lt;br /&gt;
|  [[SAM]] Flag&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
|  General&lt;br /&gt;
|  2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
|  Scroll&lt;br /&gt;
|  4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]]&lt;br /&gt;
|  Avatar&lt;br /&gt;
|  6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
|  [[WS]]&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
|  Voidwatch&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Quests List  ==&lt;br /&gt;
&lt;br /&gt;
*Table below is sorted by how quests appear in the completed quest log section.&lt;br /&gt;
*Quests marked w/ an * are out of order and will be adjusted as I complete them.&lt;br /&gt;
*Table is formatted for quick copy and paste to a spreadsheet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table sortable&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot;| Outlands: Completed Quests&lt;br /&gt;
|-&lt;br /&gt;
! Quest&lt;br /&gt;
!width=&amp;quot;5%&amp;quot;| Complete&lt;br /&gt;
|-&lt;br /&gt;
| [[The Firebloom Tree]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[Greetings to the Guardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Question of Taste]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudging]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[You Call That A Knife?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Missionary Man]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Even More Gullible&#039;s Travels]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Personal Hygiene]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Opo-opo and I]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Cloak and Dagger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Discerning Eye (Kazham)]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Fire]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Forge Your Destiny]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Black Market]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Mama Mia]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Stop Your Whining]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Everyone&#039;s Grudge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Secret of the Damp Scroll]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[It&#039;s Not Your Vault]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like a Shining Subligar]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Like Shining Leggings]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Sacred Katana]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Yomi Okuri]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[A Thief in Norg!?]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[20 in Pirate Years]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[True Will]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Potential Within]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Bugi Soden]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[An Undying Pledge]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wrath of the Opo-opos]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Wandering Souls]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Soul Searching]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Divine Might (Repeat)|Divine Might]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Open Sesame]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Don&#039;t Forget the Antidote]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Missing Piece]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Kuftal Tour]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Immortal Lu Shang]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Chasing Dreams]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[The Search for Goldmane]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial Size Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Trial by Wind]]&lt;br /&gt;
| &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| [[Voidwatch Ops: Border Crossing]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| *[[Indomitable Spirit]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Thanks for All the Fish]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| *[[Fish Favors the Bold]]&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Kazham]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Kazham.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Discerning Eye (Kazham)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Swift]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 1&lt;br /&gt;
| 500 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Dodmos]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Missionary Man]] &lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Rauteinot]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 3&lt;br /&gt;
| [[Teleport-Yhoat]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Fire]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Ronta-Onta]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Ifrit]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Question of Taste]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| 6&lt;br /&gt;
| 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Firebloom Tree]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Soun Abralah]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 6&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Even More Gullible&#039;s Travels]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Magriffon]] &lt;br /&gt;
| I-7&lt;br /&gt;
| 7&lt;br /&gt;
| [[Rafflesia Nectar]] x3&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Greetings to the Guardian]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Hari Pakhroib]] &lt;br /&gt;
| I-11&lt;br /&gt;
| 7&lt;br /&gt;
| 5000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Cloak and Dagger]] &lt;br /&gt;
|  [[WS]]&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Evisceration]] unlocked&lt;br /&gt;
&amp;lt;!--|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 054: Elshimo List|VW Op. #054: Elshimo List]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Hildegard]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Opo-opo and I]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Lulupp]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Crown]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Personal Hygiene]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Gatih Mijurabi]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Mithran Stone]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudging]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Jakoh Wahcondalo]] &lt;br /&gt;
| J-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 11000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[You Call That a Knife?]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Mhebi Juhbily]] &lt;br /&gt;
| I-10&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 7200 gil&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Norg]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Norg.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Everyone&#039;s Grudge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Magephaud]] &lt;br /&gt;
| I-8&lt;br /&gt;
| 2&lt;br /&gt;
| [[Tonberry Key]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Water]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Verctissa]] &lt;br /&gt;
| H-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[It&#039;s Not Your Vault]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Keal]] &lt;br /&gt;
| H-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Tonko: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like a Shining Subligar]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heiji]] &lt;br /&gt;
| I-7 &lt;br /&gt;
| 3&lt;br /&gt;
| [[Kurayami: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Like Shining Leggings]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Heizo]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 3&lt;br /&gt;
| [[Dokumori: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Secret of the Damp Scroll]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Shivivi]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 3&lt;br /&gt;
| [[Jubaku: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Stop Your Whining]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Washu]] &lt;br /&gt;
| J-8&lt;br /&gt;
| 4&lt;br /&gt;
| [[Hojo: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sahagin&#039;s Stash]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Laisrean]] &lt;br /&gt;
| H-7&lt;br /&gt;
| 4&lt;br /&gt;
| [[Utsusemi: Ichi]] scroll&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Water]]&lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Edal-Tahdal]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Leviathan]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[An Undying Pledge]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Stray Cloud]]&lt;br /&gt;
| H-9&lt;br /&gt;
| 4&lt;br /&gt;
| [[Light Buckler]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Mama Mia]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Mamaulabion]] &lt;br /&gt;
| G-6&lt;br /&gt;
| 4&lt;br /&gt;
| [[Evoker&#039;s Ring]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Forge Your Destiny]]  &lt;br /&gt;
| [[SAM]] Flag&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Samurai]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Bugi Soden]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Blade: Ku]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Potential Within]]&lt;br /&gt;
| [[WS]]&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Tachi: Kasha]] unlocked&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Voidwatch Ops: Border Crossing]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 115: Li&#039;Telor Variant|VW Op. #115: Li&#039;Telor Variant]] &lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ashen Stratum Abyssite III]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Skyward Ho, Voidwatcher!]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Kieran]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[20 in Pirate Years]]&lt;br /&gt;
| [[NIN]] AF1&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Anju]] and [[Zushio]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[I&#039;ll Take the Big Box]]&lt;br /&gt;
| [[NIN]] AF2&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Hakama]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[True Will]] &lt;br /&gt;
| [[NIN]] AF3&lt;br /&gt;
| [[Ryoma]] &lt;br /&gt;
| H-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ninja Chainmail]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Sacred Katana]]&lt;br /&gt;
| [[SAM]] AF1&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Magoroku]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Yomi Okuri]]&lt;br /&gt;
| [[SAM]] AF2&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Sune-Ate]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[A Thief in Norg!?]]&lt;br /&gt;
| [[SAM]] AF3&lt;br /&gt;
| [[Jaucribaix]] &lt;br /&gt;
| K-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Myochin Kabuto]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Black Market]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Muzaffar]] &lt;br /&gt;
| I-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| Varies&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Rabao]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Rabao.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial Size Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Rahi Fohlatti]]&lt;br /&gt;
| G-9&lt;br /&gt;
| 2&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Trial by Wind]] &lt;br /&gt;
| Avatar&lt;br /&gt;
| [[Agado-Pugado]] &lt;br /&gt;
| G-9&lt;br /&gt;
| 6&lt;br /&gt;
| [[Garuda]] unlocked&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Missing Piece]]&lt;br /&gt;
| Scroll&lt;br /&gt;
| [[Alfesar]] &lt;br /&gt;
| H-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Teleport-Altep]] scroll&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[VW Op. 101: Detour to Zepwell|VW Op. #101: Detour to Zepwell]]&lt;br /&gt;
| Voidwatch&lt;br /&gt;
| [[Gushing Spring]]&lt;br /&gt;
| G-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
|  &amp;amp;mdash;&lt;br /&gt;
|- --&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Indomitable Spirit]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Immortal Lu Shang]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Chasing Dreams]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]]&lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Venerer Ring]], 4000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Search for Goldmane]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Zoriboh]] &lt;br /&gt;
| F-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Deluxe Carbine]], 3000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Don&#039;t Forget the Antidote]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Edigey]] &lt;br /&gt;
| F-9&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Dotanuki]], 1800 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[The Kuftal Tour]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Datta]] &lt;br /&gt;
| F-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| 8000 gil&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Thanks for All the Fish]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Jourdenaux|Jordenaux]] &lt;br /&gt;
| F-8&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Lu Shang&#039;s Fishing Rod +1]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | *[[Fish Favors the Bold]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Irmilant]] &lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Ebisu Fishing Rod +1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Cape Teriggan]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:CapeTeriggan.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wandering Souls]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| H-5&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Flagellant&#039;s Rope]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Eastern Altepa Desert]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Eastern_Altepa_Desert_Map.jpg|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Open Sesame]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Lokpix]]&lt;br /&gt;
| G-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Loadstone]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Sanctuary of Zi&#039;Tah]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:Zitah-sanctuary.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Soul Searching]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-7&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Bat Earring]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[The Shrine of Ru&#039;Avitau]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:RuAvitau2.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Divine Might (Repeat)]] &lt;br /&gt;
| General&lt;br /&gt;
| [[Yve&#039;noile]]&lt;br /&gt;
| G/H-11&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| See Quest Page&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== [[Yuhtunga Jungle]] ==&lt;br /&gt;
&#039;&#039;&#039;[[Media:YuhtungaJungle.png|VIEW MAP]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Quest&lt;br /&gt;
! Type&lt;br /&gt;
! NPC&lt;br /&gt;
! Pos.&lt;br /&gt;
! Fame&lt;br /&gt;
! Reward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot; | [[Wrath of the Opo-opos]]&lt;br /&gt;
| General&lt;br /&gt;
| [[Cermet Headstone]]&lt;br /&gt;
| I-6&lt;br /&gt;
| &amp;amp;mdash;&lt;br /&gt;
| [[Opo-opo Necklace]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;&#039;QUESTS: 57&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Ridge_Lizard&amp;diff=114513</id>
		<title>Ridge Lizard</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Ridge_Lizard&amp;diff=114513"/>
		<updated>2025-11-30T06:46:03Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: These appear to have the same drop list as Hill Lizards, including the Twinstone Earring&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Monster|nd&lt;br /&gt;
| image = Ridge Lizard.png&lt;br /&gt;
| image caption = Ridge Lizard&lt;br /&gt;
| job = [[Warrior]]{{verification}}&lt;br /&gt;
| family = Lizards&lt;br /&gt;
| crystal = Fire&lt;br /&gt;
| weaknesses = {{element|Ice}} {{element|Wind}}&lt;br /&gt;
| resistances = &lt;br /&gt;
| immunities = &lt;br /&gt;
| absorbs = &lt;br /&gt;
| type = &lt;br /&gt;
| subtype = &lt;br /&gt;
| tier = &lt;br /&gt;
| title obtained = &lt;br /&gt;
}}&lt;br /&gt;
{| class=&amp;quot;mobs horizon-table table-xl&amp;quot;&lt;br /&gt;
! Zone || Level || Drops || Steal || Spawns || Notes&lt;br /&gt;
|- &lt;br /&gt;
|[[Meriphataud Mountains]]&amp;lt;br&amp;gt;{{changes}} &amp;lt;small&amp;gt;&#039;&#039;HorizonXI custom mob&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|29-31&lt;br /&gt;
|&lt;br /&gt;
*[[Lizard Skin]]       {{Hxi Drop Rate|asb=110/1000|0|0}}&lt;br /&gt;
*[[Lizard Tail]]       {{Hxi Drop Rate|asb=350/1000|0|0}}&lt;br /&gt;
*[[Twinstone Earring]] {{Hxi Drop Rate|asb=180/1000|0|0}}&lt;br /&gt;
|&amp;lt;!--Add Items Stolen Here--&amp;gt;&lt;br /&gt;
*[[Lizard Egg]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|{{question}}&amp;lt;br&amp;gt;&#039;&#039;Respawn: 5 minutes&#039;&#039;&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|{{question}}&amp;lt;br&amp;gt;{{HPMP|low hp=|high hp=|low mp=none|high mp=}}&lt;br /&gt;
|-&lt;br /&gt;
!align=&amp;quot;center&amp;quot; colspan=&amp;quot;6&amp;quot;|&lt;br /&gt;
{{Monster Notes}}&lt;br /&gt;
|}&lt;br /&gt;
==Horizon Changes {{changes}}==&lt;br /&gt;
{{HorizonChangesBox|This is a Horizon XI custom monster}}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Twinstone_Earring&amp;diff=114512</id>
		<title>Twinstone Earring</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Twinstone_Earring&amp;diff=114512"/>
		<updated>2025-11-30T06:44:29Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Dropped From */ Apparently Ridge Lizards drop Twinstone Earrings too&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|TwinstoneEarring.jpg|Twinstone Earring}}&amp;lt;section end=&amp;quot;Item Image&amp;quot; /&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = Armor&lt;br /&gt;
| name = Twinstone earring&lt;br /&gt;
| slot = Ear&lt;br /&gt;
| stats = {{Resist|Ice|-4}} {{Resist|Wind|+4}}&lt;br /&gt;
| level = 24&lt;br /&gt;
}}&lt;br /&gt;
==Horizon Changes {{changes}}==&lt;br /&gt;
{{HorizonChangesBox}}&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| quest = Twinstone Bonding&lt;br /&gt;
| resale price = {{Resale Price|307}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Armor|Earrings}}&lt;br /&gt;
===Dropped From===&lt;br /&gt;
{| class=&amp;quot;horizon-table table-sm droppedby sortable&amp;quot;&lt;br /&gt;
! width=&amp;quot;35%&amp;quot; |Name&lt;br /&gt;
! width=&amp;quot;15%&amp;quot; |Level&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; |Zone&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|[[Hill Lizard]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |19-22&lt;br /&gt;
|[[Meriphataud Mountains]]&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|[[Ridge Lizard]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |29-31&lt;br /&gt;
|[[Meriphataud Mountains]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Twinstone_Bonding&amp;diff=114511</id>
		<title>Twinstone Bonding</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Twinstone_Bonding&amp;diff=114511"/>
		<updated>2025-11-30T06:41:28Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Apparently Ridge Lizards drop Twinstone Earrings too&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quest Header&lt;br /&gt;
| Quest Name = Twinstone Bonding&lt;br /&gt;
| Expansion = &lt;br /&gt;
| Start = Gioh Ajihri&lt;br /&gt;
| Start Location = {{Location|Windurst Woods|K-5}}&lt;br /&gt;
| Start Location Add = Mithra Groves&lt;br /&gt;
| Description = Twenty years ago, there was a great battle between the Mithra and the Yagudo in the Meriphataud Mountains.  Gioh wants you to collect the twinstone earrings that belonged to the Mithra warriors who fell there.&lt;br /&gt;
| Fame = Windurst&lt;br /&gt;
| Fame Level = 3&lt;br /&gt;
| Type = general&lt;br /&gt;
| Level = &lt;br /&gt;
| Requirements = &lt;br /&gt;
| Items Needed = [[Twinstone Earring]]&lt;br /&gt;
| Repeatable = yes&lt;br /&gt;
| HAAP = &lt;br /&gt;
| Title = Bond Fixer&lt;br /&gt;
| Rewards = [[Wrapped Bow]] &#039;&#039;(on first completion)&#039;&#039;&amp;lt;br&amp;gt;&#039;&#039;&#039;or&#039;&#039;&#039;&amp;lt;br&amp;gt;900 [[gil]] &#039;&#039;(on subsequent completions)&#039;&#039;&lt;br /&gt;
| Previous = &lt;br /&gt;
| Next = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Walkthrough==&lt;br /&gt;
*Kill [[Hill Lizard]]s or [[Ridge Lizard]]s in [[Meriphataud Mountains]] until they drop a [[Twinstone Earring]].&lt;br /&gt;
*Bring it back to [[Gioh Ajihri]] at {{Location|Windurst Woods|K-5}} for a reward. (If you have the earring already in inventory, you must zone before the earring will be accepted.)&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=The_Gustaberg_Tour&amp;diff=113515</id>
		<title>The Gustaberg Tour</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=The_Gustaberg_Tour&amp;diff=113515"/>
		<updated>2025-10-27T04:44:07Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Walkthrough */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quest Header&lt;br /&gt;
|Start=[[Izabele]] &lt;br /&gt;
|Start Location = {{location|Metalworks|G-8}}&lt;br /&gt;
|Description = You have been asked to form a party with five other people of level fifteen and below to test Izabele&#039;s business idea.  Your party is to make its way to Drachenfall in North Gustaberg where Hunting Bear, Izabele&#039;s partner, is waiting.&lt;br /&gt;
|Fame = Bastok&lt;br /&gt;
|Fame Level = 1&lt;br /&gt;
|Requirements=To complete:&amp;lt;br&amp;gt;At least two party members.&amp;lt;br&amp;gt;At least one party member must be level 10 to 15 for Level Sync, or, all members must be level 1-15.&lt;br /&gt;
|Items Needed=&lt;br /&gt;
|Title=Gustaberg Tourist&lt;br /&gt;
|Repeatable=No&lt;br /&gt;
|Reward=500 gil&lt;br /&gt;
|Previous=&lt;br /&gt;
|Next=(See [[The Kuftal Tour]])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Walkthrough ==&lt;br /&gt;
*Talk to [[Izabele]] to begin the quest.&lt;br /&gt;
*Make a party of six members. &lt;br /&gt;
*One of you must be level 10-15 if you want to use [[Level Sync]] to meet the level requirement. Remember that &#039;&#039;&#039;[[Level Sync]] does not work if the sync designee is below level 10.&#039;&#039;&#039; Alternatively, all party members can naturally be levels 1-15.&lt;br /&gt;
*When everyone has the quest, go to [[North Gustaberg]] (west section) and talk to [[Hunting Bear]] near the falls to get a short cutscene that completes the quest.&lt;br /&gt;
**There is some chance of aggro on the way to the falls, but it is easily killed if either of you are level 8+.&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=The_Sahagin%27s_Stash&amp;diff=113000</id>
		<title>The Sahagin&#039;s Stash</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=The_Sahagin%27s_Stash&amp;diff=113000"/>
		<updated>2025-10-13T05:25:47Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Walkthrough */ Corrected map coordinates in direction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quest Header&lt;br /&gt;
| Start=[[Laisrean]] &lt;br /&gt;
| Start Location = {{Location|Norg|H-7}}&lt;br /&gt;
| Description = Bring back something from the Sahagins&#039; storage area in the Sea Serpent Grotto.  Anything will do.&lt;br /&gt;
| Fame = Tenshodo&lt;br /&gt;
| Fame Level = 4&lt;br /&gt;
| Requirements={{KeyItem}}[[Airship pass for Kazham]]&amp;lt;br&amp;gt;[[Job]] [[level]] 5+&lt;br /&gt;
| Items Needed=[[Silver Beastcoin]]&amp;lt;br&amp;gt;{{KeyItem}}[[Sea Serpent Statue]]&lt;br /&gt;
| Title=Treasure-House Ransacker&lt;br /&gt;
| Repeatable=No&lt;br /&gt;
| Rewards=[[Utsusemi: Ichi|Scroll of Utsusemi: Ichi]]&lt;br /&gt;
|Previous=&lt;br /&gt;
|Next=&lt;br /&gt;
}}&lt;br /&gt;
{{Template:Tooltip-Map&lt;br /&gt;
|text= [[File:NinjaMap.JPG|40px]]&lt;br /&gt;
|map= NinjaMap.JPG&lt;br /&gt;
|mapsize = 500&lt;br /&gt;
|boxsize = &lt;br /&gt;
|coords = &lt;br /&gt;
|notes = &lt;br /&gt;
}}&lt;br /&gt;
==Walkthrough==&lt;br /&gt;
*Speak to [[Laisrean]], behind the two shopkeepers at {{Location|Norg|H-7}}.&lt;br /&gt;
*Head to the Silver Door.&lt;br /&gt;
**Exit [[Norg]] and make your way to the door marked B at ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 1|pos=H-6}}).&lt;br /&gt;
***Refer to the maps on the right.&lt;br /&gt;
**Head to the area marked F at ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 1|pos=K-8}}). The arrow indicates that you can only go one way here. Once you drop down, you can&#039;t go back the same way.&lt;br /&gt;
**Once you&#039;ve dropped down, continue along the path to the door in the southeast marked G ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 1|pos=N-14}}).&lt;br /&gt;
**If you haven&#039;t done so before, you must examine the door 6 times; the description changes each time. Eventually you receive a message saying &amp;quot;you see something silver glittering around the indentation&amp;quot; in the door.&lt;br /&gt;
*Trade a [[Silver Beastcoin]] to the door to pass through to point G on Map #2. &lt;br /&gt;
**You get to keep the [[Silver Beastcoin]]; it isn&#039;t removed from your inventory.&lt;br /&gt;
*From here, follow the tunnel until you arrive at the cliff ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 2|pos=H-8}}).&lt;br /&gt;
* Once you&#039;ve dropped down the cliff, follow this tunnel to the door at ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 2|pos=H-4|pos 2= H-5}}).&lt;br /&gt;
*Examine the ??? at ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 2|pos=H-3}}) for a cutscene where you receive the {{KeyItem}}[[Sea Serpent Statue]] from [[Ren]].&lt;br /&gt;
** If you wish to return to [[Norg]] on foot from this point, travel to K ({{Location Tooltip|area=Sea Serpent Grotto|map=Map 2|pos=F-7}}) on Map #2, which brings you to K on Map #1. From here it&#039;s a simple walk back to B and then back into Norg.&lt;br /&gt;
**You may prefer to bring some form of [[Warp]] or [[Escape]] to avoid backtracking through [[Sea Serpent Grotto]].&lt;br /&gt;
*Take the statue back to [[Laisrean]] to receive a scroll of [[Utsusemi: Ichi]].&lt;br /&gt;
&lt;br /&gt;
===Notes=== &lt;br /&gt;
*Every monster in this area detects by sound, so some form of [[Sneak]] is necessary if you are low-leveled. [[Silent Oil]]s work&amp;lt;span class=&amp;quot;gov&amp;quot;&amp;gt;, but Circumspection (5 [[Tabs]] for [[Sneak]]/[[Invisible]] effects) from the [[Grounds Tome]] outside [[Norg]] should be sufficient. There is a second [[Grounds Tome]] at the [[Silver Beastcoin]] door, halfway to the quest destination; you can cancel and repurchase Circumspection to renew the duration&amp;lt;/span&amp;gt;. [[Invisible]] is not necessary.  &lt;br /&gt;
**At level 63 there are easy prey monsters near the end that are just low enough not to aggro.&lt;br /&gt;
*The most popular way to raise your [[fame]] for this quest is to complete the quest [[Mihgo&#039;s Amigo]] with  212 necklaces, or the [[Shady Business]] quest with ~104 ores. {{Verification}}&lt;br /&gt;
**A way to check your Norg fame without travelling to Norg is to check the price of [[Rice Ball]]s with [[Ghebi Damomohe]] in [[Neptune&#039;s Spire]]. If the price of the Rice Balls are 150g or lower, you should have sufficient reputation for this quest (prices for Rice Balls may vary a little). (However, the [[Reputation]] page claims 155 or lower).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Outlands Quests]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Race_Specific_Equipment&amp;diff=112581</id>
		<title>Category:Race Specific Equipment</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Race_Specific_Equipment&amp;diff=112581"/>
		<updated>2025-10-06T04:59:26Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Level 27-33 RSE */ Fixed link to Savage Armor Set&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tocright}}&lt;br /&gt;
&#039;&#039;&#039;Race Specific Equipment&#039;&#039;&#039; - a/k/a RSE&lt;br /&gt;
&lt;br /&gt;
The RSE sets are composed of gear specifically designed for each [[race]].  Many times, the gear is also limited by the sex of the player as well.  This equipment typically attempts to compensate for racial weaknesses.&lt;br /&gt;
&lt;br /&gt;
==Level 1 RSE==&lt;br /&gt;
&lt;br /&gt;
When you start the game, each level 1 character will start with the RSE for their race and sex.  You may also purchase the gear at vendors in the home nations for those races. These sets lack headgear, which most sets do contain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Purchased from [[Arachagnon]] - [[Northern San d&#039;Oria]] (F-3)&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Elvaan Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Elvaan Bodice]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Elvaan Gauntlets]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Elvaan F Chausses]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Elvaan F Ledelsens]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Elvaan Bodice Set]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Elvaan Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Elvaan Jerkin]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Elvaan Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Elvaan M Chausses]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Elvaan M Ledelsens]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Elvaan Jerkin Set]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;Purchased from [[Proud Beard]] - [[Bastok Mines]] (K-8)&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Hume Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Hume Vest]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Hume F Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Hume Pants]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Hume F Boots]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Hume Vest Set]]&lt;br /&gt;
|}&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Hume Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Hume Tunic]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Hume M Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Hume Slacks]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Hume M Boots]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Hume Tunic Set]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;60%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Galka&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Galkan Surcoat]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Galkan Bracers]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Galkan Braguette]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Galkan Sandals]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Galkan Surcoat Set]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;Purchased from [[Kucha Malkobhi]] - [[Port Windurst]] (E-7)&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Tarutaru Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Tarutaru Kaftan]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Tarutaru Mitts]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Tarutaru Braccae]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Tarutaru Clomps]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Tarutaru Kaftan Set]]&lt;br /&gt;
|}&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Tarutaru Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Tarutaru Kaftan]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Tarutaru Mitts]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Tarutaru Braccae]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Tarutaru Clomps]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Tarutaru Kaftan Set]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot;|&lt;br /&gt;
;Mithra&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;25%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|[[Mithran Separates]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|[[Mithran Gauntlets]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|[[Mithran Loincloth]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|[[Mithran Gaiters]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Mithran Separates Set]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 27-33 RSE==&lt;br /&gt;
Each week, a different magical pattern appears inside a treasure chest somewhere. Give it to [[Guttrix]] in [[Lower Jeuno]] and he&#039;ll reward you with a single piece of RSE, based upon your race and sex.  For more information, see the quest [[The Goblin Tailor]].  The 27-33 RSE sets have stats designed to help &amp;quot;compensate&amp;quot; for the races&#039; natural weaknesses in their stats. These sets are also lacking headgear, but the 4 parts of these sets can be stored at NPC armor storage. &lt;br /&gt;
*[https://www.pyogenes.com/ffxi/timer/v2.html Pyogenes FFXI Clock]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Elvaan Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Magna Bodice]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Magna Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Magna F Chausses]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Magna F Ledelsens]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Magna Armor Set (Elvaan Female)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Elvaan Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Magna Jerkin]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Magna Gauntlets]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Magna M Chausses]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Magna M Ledelsens]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Magna Armor Set (Elvaan Male)]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Galka&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Elder&#039;s Surcoat]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Elder&#039;s Bracers]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Elder&#039;s Braguette]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Elder&#039;s Sandals]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Elder Armor Set (Galka)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Mithra&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item&amp;lt;br&amp;gt;Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Savage Separates]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Savage Gauntlets]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Savage Loincloth]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Savage Gaiters]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Savage Armor Set]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Hume Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Custom Vest]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Custom F Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Custom Pants]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Custom F Boots]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Custom Armor Set (Hume Female)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Hume Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Custom Tunic]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Custom M Gloves]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Custom Slacks]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Custom M Boots]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Custom Armor Set (Hume Male)]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Tarutaru Female&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Wonder Kaftan]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Wonder Mitts]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Wonder Braccae]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Wonder Clomps]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Wonder Armor Set]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
;Tarutaru Male&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!width=&amp;quot;15%&amp;quot; align=&amp;quot;center&amp;quot; |Item Slot&lt;br /&gt;
!width=&amp;quot;5%&amp;quot; align=&amp;quot;center&amp;quot; |Level&lt;br /&gt;
!width=&amp;quot;30%&amp;quot; align=&amp;quot;left&amp;quot; |RSE&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Body&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |33&lt;br /&gt;
|[[Wonder Kaftan]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Hands&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |27&lt;br /&gt;
|[[Wonder Mitts]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Legs&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |31&lt;br /&gt;
|[[Wonder Braccae]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |Feet&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |29&lt;br /&gt;
|[[Wonder Clomps]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
[[Wonder Armor Set]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 30 RSE Ammo== &lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Sex&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Ammo&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How to Obtain&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Elvaan]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Attar Sachet]] &lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot;|&lt;br /&gt;
Dropped from a NM spawned by touching a [[???]] in either the [[Maze of Shakhrami]], [[Gusgen Mines]] or [[Ordelle&#039;s Caves]].&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
You can only spawn the mob if it is your RSE week as identified by [[Guttrix]] ([[The Goblin Tailor]]), and you are in the appropriate zone for the RSE.  The [[Aroma Crawler]] will spawn in the [[Maze of Shakhrami]], the [[Aroma Fly]] will spawn in [[Gusgen Mines]] and the [[Aroma Leech]] will spawn in [[Ordelle&#039;s Caves]].  The drop is not 100%.&amp;lt;br&amp;gt; &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Olibanum Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Hume]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Millefleurs Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Balm Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Tarutaru]]&lt;br /&gt;
| Female&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Sweet Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;| [[Galka]]&lt;br /&gt;
| [[Musk Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;| [[Mithra]]&lt;br /&gt;
| [[Civet Sachet]] &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 50 RSE Belts== &lt;br /&gt;
;HP+ Belts&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;24%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Belt&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| [[Elvaan]]&lt;br /&gt;
| [[Forest Belt]] &lt;br /&gt;
| width=&amp;quot;35%&amp;quot; rowspan=&amp;quot;5&amp;quot; | [[Hostile Herbivores]] - [[Horlais Peak]]&amp;lt;br&amp;gt;    and&amp;lt;br&amp;gt; [[3, 2, 1...]] - [[Waughroon Shrine]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Galka]]&lt;br /&gt;
| [[Desert Belt]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Hume]]&lt;br /&gt;
| [[Ocean Belt]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Mithra]]&lt;br /&gt;
| [[Jungle Belt]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Tarutaru]]&lt;br /&gt;
| [[Steppe Belt]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;MP+ Stones&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;24%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Belt&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| [[Elvaan]]&lt;br /&gt;
| [[Forest Stone]]&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; | [[Hostile Herbivores]] - [[Horlais Peak]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Galka]]&lt;br /&gt;
| [[Desert Stone]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Hume]]&lt;br /&gt;
| [[Ocean Stone]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Mithra]]&lt;br /&gt;
| [[Jungle Stone]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Tarutaru]]&lt;br /&gt;
| [[Steppe Stone]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 55 RSE Earrings==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;24%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Earring&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Elvaan]]&lt;br /&gt;
| [[Desamilion&#039;s Earring]]&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; | [[Automaton Assault]] - [[Mine Shaft|Mine Shaft #2716]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Melnina&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Galka]]&lt;br /&gt;
| [[Gayanj&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Zedoma&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Hume]]&lt;br /&gt;
| [[Belinky&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Quantz&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Mithra]]&lt;br /&gt;
| [[Feyuh&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryakho&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot;| [[Tarutaru]]&lt;br /&gt;
| [[Morukaka&#039;s Earring]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Waetoto&#039;s Earring]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 62 RSE Hands and Feet==&lt;br /&gt;
;Gloves&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Sex&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Gloves&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Elvaan]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Wood Gloves]]&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; | [[Demolition Squad]] - [[Qu&#039;Bia Arena]]&lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Wood Gauntlets]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Hume]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Marine F Gloves]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Marine M Gloves]] &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Tarutaru]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Creek F Mitts]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Creek M Mitts]] &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | [[Galka]]&lt;br /&gt;
| [[Dune Bracers]]&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | [[Mithra]]&lt;br /&gt;
| [[River Gauntlets]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;Boots&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;12%&amp;quot; |Sex&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Boots&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Elvaan]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Wood F Ledelsens]]&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; | [[Brothers D&#039;Aurphe]] - [[Qu&#039;Bia Arena]]&lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Wood M Ledelsens]]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Hume]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Marine F Boots]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Marine M Boots]] &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[Tarutaru]]&lt;br /&gt;
| Female&lt;br /&gt;
| [[Creek F Clomps]] &lt;br /&gt;
|-&lt;br /&gt;
| Male&lt;br /&gt;
| [[Creek M Clomps]] &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | [[Galka]]&lt;br /&gt;
| [[Dune Sandals]]&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | [[Mithra]]&lt;br /&gt;
| [[River Gaiters]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Level 70 RSE Belts ==&lt;br /&gt;
;MP+ Ropes&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! width=&amp;quot;24%&amp;quot; |Race&lt;br /&gt;
! width=&amp;quot;26%&amp;quot; |Belt&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| [[Elvaan]]&lt;br /&gt;
| [[Forest Rope]] &lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot;| [[Come Into My Parlor]] - [[Qu&#039;Bia Arena]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Galka]]&lt;br /&gt;
| [[Desert Rope]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Hume]]&lt;br /&gt;
| [[Ocean Rope]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Mithra]]&lt;br /&gt;
| [[Jungle Rope]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Tarutaru]]&lt;br /&gt;
| [[Steppe Rope]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;HP+ Sashes&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
! align=&amp;quot;center&amp;quot; width=&amp;quot;24%&amp;quot; |Race&lt;br /&gt;
! align=&amp;quot;center&amp;quot; width=&amp;quot;26%&amp;quot; |Belt&lt;br /&gt;
! align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot; |How Obtained&lt;br /&gt;
|-&lt;br /&gt;
| [[Elvaan]]&lt;br /&gt;
| [[Forest Sash]]&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot;| [[Infernal Swarm]] - [[Qu&#039;Bia Arena]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Galka]]&lt;br /&gt;
| [[Desert Sash]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Hume]]&lt;br /&gt;
| [[Ocean Sash]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Mithra]]&lt;br /&gt;
| [[Jungle Sash]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Tarutaru]]&lt;br /&gt;
| [[Steppe Sash]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
*[https://www.pyogenes.com/ffxi/timer/v2.html Pyogenes FFXI Clock]&lt;br /&gt;
*[http://mithrapride.org/vana_time/index.html MithraPride LS Vana&#039;diel Clock]&lt;br /&gt;
*[http://blog-imgs-24.fc2.com/m/i/e/mievell/vananavi2.swf Vana&#039;naVi Vana&#039;Diel Clock]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=The_Missing_Piece&amp;diff=112034</id>
		<title>The Missing Piece</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=The_Missing_Piece&amp;diff=112034"/>
		<updated>2025-10-01T03:38:22Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Walkthrough */ Added tooltips to several map positions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quest Header|nd&lt;br /&gt;
| Quest Name = The Missing Piece&lt;br /&gt;
| Start = Alfesar &lt;br /&gt;
| Start Location = {{Location|Rabao|H-7}}&lt;br /&gt;
| Fame = Rabao&lt;br /&gt;
| Fame Level = 4&lt;br /&gt;
| Requirements&lt;br /&gt;
| Items Needed = {{KeyItem}}[[Ancient Tablet Fragment]] &amp;lt;br&amp;gt;{{KeyItem}}[[Tablet of Ancient Magic]] &amp;lt;br&amp;gt;{{KeyItem}}[[Letter from Alfesar]]&lt;br /&gt;
| Title = &lt;br /&gt;
| Repeatable = No&lt;br /&gt;
| Rewards = [[Teleport-Altep|Scroll of Teleport-Altep]]&lt;br /&gt;
| Previous = &lt;br /&gt;
| Next = &lt;br /&gt;
| cutscenes = &lt;br /&gt;
| Description= The friar [[Alfesar]] has asked you to find the remaining part of a stone tablet that was found in the [[Quicksand Caves]] that lie beneath the Altepa Desert.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Walkthrough ==&lt;br /&gt;
*Talk to [[Alfesar]] to start the quest. He needs your help in finding an {{KeyItem}}[[Ancient Tablet Fragment]] in the [[Quicksand Caves]]. (May need to speak with him up to 3 times to trigger the quest)&lt;br /&gt;
*The {{KeyItem}}[[Ancient Tablet Fragment]] spawns at one of five randomly chosen locations in the [[Quicksand Caves]].&lt;br /&gt;
**Spawnpoints on Map 1:  {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos=H-6|pos 2= H-10|pos 3=E-9}}&lt;br /&gt;
**Spawnpoints on Map 2: {{Location Tooltip|area= Quicksand Caves|map= Map 2|pos=D-9|pos 2= L-11}}&lt;br /&gt;
*To get to the ??? at  {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos=H-6}} (Point 1 on the map), enter the [[Quicksand Caves]] from {{Location|Eastern Altepa Desert|J-7}} (Entrance #1 on the Map).  &lt;br /&gt;
**You will zone in {{Position|Quicksand Caves|L-4|map=Map 1}} on Map 1.&lt;br /&gt;
**Go to {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos=I-7}}, be sure you are on the right (west) wall then fall down.  &lt;br /&gt;
**There will be a beetle at the spawn point.  If the ??? is not there, head out of the caves at  {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos=D-5}}.  You will exit at {{Location|Eastern Altepa Desert|H-8}} (Entrance #2 on the Map).&lt;br /&gt;
*To reach the other four points, again enter the [[Quicksand Caves]] from {{Location|Eastern Altepa Desert|J-7}}.&lt;br /&gt;
**This time drop down at {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos= J-7}}, on the left (east) wall.&lt;br /&gt;
**On Map 1 you can check points 2 {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos= E-9}} and 3 {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos= H-10}}.&lt;br /&gt;
**If not at either point, drop down at {{Location Tooltip|area= Quicksand Caves|map= Map 1|pos= F-10}}.  As you drop down, be sure you are on the east wall.  Take Tunnel A.&lt;br /&gt;
**Points 4 {{Location Tooltip|area= Quicksand Caves|map= Map 2|pos= D-9}} and 5 {{Location Tooltip|area= Quicksand Caves|map= Map 2|pos= L-11}} are on Map 2.&lt;br /&gt;
*When you find the ???, check it and you will receive the {{KeyItem}}[[Ancient Tablet Fragment]].&lt;br /&gt;
*Return to [[Alfesar]].  He will give you the {{KeyItem}}[[Tablet of Ancient Magic]] and the {{KeyItem}}[[Letter from Alfesar]].&lt;br /&gt;
*Take both items to [[Charlaimagnat]] at the cathedral in [[Northern San d&#039;Oria]] (bottom floor, when you enter the cathedral take an immediate left, followed by a U-Turn down the stairs). He asks for you to come back another day because he needs to decipher the tablet. &lt;br /&gt;
*Wait for JP midnight and talk to [[Charlaimagnat]] again to receive your reward.&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Template:Quest_Header/Fame_Area&amp;diff=111517</id>
		<title>Template:Quest Header/Fame Area</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Template:Quest_Header/Fame_Area&amp;diff=111517"/>
		<updated>2025-09-20T20:41:00Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Made Windurst, Kazham, Mhaura, Rabao, and Selbina a bit clearer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&amp;lt;onlyinclude&amp;gt;{{#switch: {{lc: {{{Fame}}}}}&lt;br /&gt;
| san d&#039;oria | sandoria = {{categorize|{{{1|}}}|[[Category:San d&#039;Oria Reputation]]}}[[:Category:San d&#039;Oria Reputation|San d&#039;Oria]]|&lt;br /&gt;
| windurst = {{categorize|{{{1|}}}|[[Category:Windurst Reputation]]}}[[:Category:Windurst Reputation|Windurst]]|&lt;br /&gt;
| kazham = {{categorize|{{{1|}}}|[[Category:Windurst Reputation]]}}[[:Category:Windurst Reputation|Kazham (Windurst)]]|&lt;br /&gt;
| mhaura = {{categorize|{{{1|}}}|[[Category:Windurst Reputation]]}}[[:Category:Windurst Reputation|Mhaura (Windurst)]]|&lt;br /&gt;
| bastok = {{categorize|{{{1|}}}|[[Category:Bastok Reputation]]}}[[:Category:Bastok Reputation|Bastok]]|&lt;br /&gt;
| jeuno = {{categorize|{{{1|}}}|[[Category:Jeuno Reputation]]}}[[:Category:Jeuno Reputation|Jeuno]]|&lt;br /&gt;
| norg | tenshodo = {{categorize|{{{1|}}}|[[Category:Tenshodo Reputation]]}}[[:Category:Tenshodo Reputation|Tenshodo]]|&lt;br /&gt;
| rabao and selbina = {{categorize|{{{1|}}}|[[Category:Rabao and Selbina Reputation]]}}[[:Category:Rabao and Selbina Reputation|Rabao and Selbina]]|&lt;br /&gt;
| rabao = {{categorize|{{{1|}}}|[[Category:Rabao and Selbina Reputation]]}}[[:Category:Rabao and Selbina Reputation|Rabao (and Selbina)]]|&lt;br /&gt;
| selbina = {{categorize|{{{1|}}}|[[Category:Rabao and Selbina Reputation]]}}[[:Category:Rabao and Selbina Reputation|Selbina (and Rabao)]]|&lt;br /&gt;
| abyssea - altepa = {{categorize|{{{1|}}}|[[Category:Abyssea - Altepa Reputation]]}}[[:Category:Abyssea - Altepa Reputation|Abyssea - Altepa]]|&lt;br /&gt;
| abyssea - attohwa = {{categorize|{{{1|}}}|[[Category:Abyssea - Attohwa Reputation]]}}[[:Category:Abyssea - Attohwa Reputation|Abyssea - Attohwa]]|&lt;br /&gt;
| abyssea - grauberg = {{categorize|{{{1|}}}|[[Category:Abyssea - Grauberg Reputation]]}}[[:Category:Abyssea - Grauberg Reputation|Abyssea - Grauberg]]|&lt;br /&gt;
| abyssea - konschtat = {{categorize|{{{1|}}}|[[Category:Abyssea - Konschtat Reputation]]}}[[:Category:Abyssea - Konschtat Reputation|Abyssea - Konschtat]]|&lt;br /&gt;
| abyssea - la theine = {{categorize|{{{1|}}}|[[Category:Abyssea - La Theine Reputation]]}}[[:Category:Abyssea - La Theine Reputation|Abyssea - La Theine]]|&lt;br /&gt;
| abyssea - misareaux = {{categorize|{{{1|}}}|[[Category:Abyssea - Misareaux Reputation]]}}[[:Category:Abyssea - Misareaux Reputation|Abyssea - Misareaux]]|&lt;br /&gt;
| abyssea - tahrongi = {{categorize|{{{1|}}}|[[Category:Abyssea - Tahrongi Reputation]]}}[[:Category:Abyssea - Tahrongi Reputation|Abyssea - Tahrongi]]|&lt;br /&gt;
| abyssea - uleguerand = {{categorize|{{{1|}}}|[[Category:Abyssea - Uleguerand Reputation]]}}[[:Category:Abyssea - Uleguerand Reputation|Abyssea - Uleguerand]]|&lt;br /&gt;
| abyssea - vunkerl = {{categorize|{{{1|}}}|[[Category:Abyssea - Vunkerl Reputation]]}}[[:Category:Abyssea - Vunkerl Reputation|Abyssea - Vunkerl]]|&lt;br /&gt;
| adoulin = {{categorize|{{{1|}}}|[[Category:Adoulin Reputation]]}}[[:Category:Adoulin Reputation|Adoulin]]|&lt;br /&gt;
| none=&#039;&#039;None&#039;&#039;&lt;br /&gt;
| #default={{{Fame}}}|}}{{#if:{{{Fame Level|}}}|&amp;lt;nowiki&amp;gt; &amp;lt;/nowiki&amp;gt;Level&amp;amp;nbsp;{{{Fame Level}}}|{{Information Needed}}}}&amp;lt;/onlyinclude&amp;gt;&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
==Usage==&lt;br /&gt;
Helper Template to categorize fame areas. &lt;br /&gt;
Parameters:&lt;br /&gt;
*&#039;&#039;&#039;Fame:&#039;&#039;&#039; Reputation Category which the quest belongs to, see [[Reputation]]. &lt;br /&gt;
*&#039;&#039;&#039;Fame Level:&#039;&#039;&#039; Required fame level to start the quest&lt;br /&gt;
&lt;br /&gt;
===Examples===&lt;br /&gt;
&amp;lt;pre&amp;gt;{{Quest Header/Fame Area&lt;br /&gt;
| Fame = rabao&lt;br /&gt;
| Fame Level = 2&lt;br /&gt;
}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Quest Header/Fame Area|nc&lt;br /&gt;
|Fame=rabao&lt;br /&gt;
|Fame Level=2&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=User:Hugin8484&amp;diff=107367</id>
		<title>User:Hugin8484</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=User:Hugin8484&amp;diff=107367"/>
		<updated>2025-07-21T18:34:38Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For Beadeaux:&lt;br /&gt;
* [x] [[Black Matinee Necklace]]&lt;br /&gt;
* [x] [[Coruscant Rosary]]&lt;br /&gt;
* [x] [[Silver Bell]]&lt;br /&gt;
&lt;br /&gt;
For Castle Oztroja:&lt;br /&gt;
* [x] [[Yagudo Torch]]&lt;br /&gt;
&lt;br /&gt;
For Davoi:&lt;br /&gt;
* [x] [[Crimson Orb]]&lt;br /&gt;
* [x] [[Crest of Davoi (Key Item)|Crest of Davoi]]&lt;br /&gt;
&lt;br /&gt;
For Delkfutt&#039;s Tower:&lt;br /&gt;
* [x] [[Delkfutt Key]]&lt;br /&gt;
* [x] [[Prismatic Fragment]]&lt;br /&gt;
&lt;br /&gt;
For Dynamis:&lt;br /&gt;
* [x] [[Vial of Shrouded Sand]]&lt;br /&gt;
&lt;br /&gt;
For Hall of the Gods:&lt;br /&gt;
* [x] [[Cerulean Crystal]]&lt;br /&gt;
&lt;br /&gt;
For Inner Horutoto Ruins:&lt;br /&gt;
* [ ] ([[Three Mage Gate]]) - [[Portal Charm]]&lt;br /&gt;
&lt;br /&gt;
For Jeuno:&lt;br /&gt;
* [x] [[Tenshodo Member&#039;s Card]]&lt;br /&gt;
&lt;br /&gt;
For Pso&#039;Xja:&lt;br /&gt;
* [ ] [[Blue Bracelet]]&lt;br /&gt;
* [ ] [[Green Bracelet]]&lt;br /&gt;
* [x] [[Pso&#039;Xja Pass]]&lt;br /&gt;
&lt;br /&gt;
For Ro&#039;Maeve:&lt;br /&gt;
* [x] [[Moongate Pass]]&lt;br /&gt;
&lt;br /&gt;
For Sacrarium:&lt;br /&gt;
* [ ] [[Temple Knight Key]]&lt;br /&gt;
&lt;br /&gt;
For Temple of Uggalepih:&lt;br /&gt;
* [ ] [[Tonberry Key]]&lt;br /&gt;
* [x] [[Paintbrush of Souls]]&lt;br /&gt;
&lt;br /&gt;
For Windurst:&lt;br /&gt;
* [ ] [[Starway Stairway Bauble]]&lt;br /&gt;
* [ ] [[Rhinostery Certificate]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=User:Hugin8484&amp;diff=107366</id>
		<title>User:Hugin8484</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=User:Hugin8484&amp;diff=107366"/>
		<updated>2025-07-21T18:30:55Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Created page with &amp;quot;For Beadeaux: * [ ] Black Matinee Necklace * [ ] Coruscant Rosary * [ ] Silver Bell  For Castle Oztroja: * [ ] Yagudo Torch  For Davoi: * [ ] Crimson Orb * [ ] Crest of Davoi  For Delkfutt&amp;#039;s Tower: * [ ] Delkfutt Key * [ ] Prismatic Fragment  For Dynamis: * [ ] Vial of Shrouded Sand  For Hall of the Gods: * [ ] Cerulean Crystal  For Inner Horutoto Ruins: * [ ] (Three Mage Gate) - Portal Charm  For...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For Beadeaux:&lt;br /&gt;
* [ ] [[Black Matinee Necklace]]&lt;br /&gt;
* [ ] [[Coruscant Rosary]]&lt;br /&gt;
* [ ] [[Silver Bell]]&lt;br /&gt;
&lt;br /&gt;
For Castle Oztroja:&lt;br /&gt;
* [ ] [[Yagudo Torch]]&lt;br /&gt;
&lt;br /&gt;
For Davoi:&lt;br /&gt;
* [ ] [[Crimson Orb]]&lt;br /&gt;
* [ ] [[Crest of Davoi (Key Item)|Crest of Davoi]]&lt;br /&gt;
&lt;br /&gt;
For Delkfutt&#039;s Tower:&lt;br /&gt;
* [ ] [[Delkfutt Key]]&lt;br /&gt;
* [ ] [[Prismatic Fragment]]&lt;br /&gt;
&lt;br /&gt;
For Dynamis:&lt;br /&gt;
* [ ] [[Vial of Shrouded Sand]]&lt;br /&gt;
&lt;br /&gt;
For Hall of the Gods:&lt;br /&gt;
* [ ] [[Cerulean Crystal]]&lt;br /&gt;
&lt;br /&gt;
For Inner Horutoto Ruins:&lt;br /&gt;
* [ ] ([[Three Mage Gate]]) - [[Portal Charm]]&lt;br /&gt;
&lt;br /&gt;
For Jeuno:&lt;br /&gt;
* [ ] [[Tenshodo Member&#039;s Card]]&lt;br /&gt;
&lt;br /&gt;
For Pso&#039;Xja:&lt;br /&gt;
* [ ] [[Blue Bracelet]]&lt;br /&gt;
* [ ] [[Green Bracelet]]&lt;br /&gt;
* [ ] [[Pso&#039;Xja Pass]]&lt;br /&gt;
&lt;br /&gt;
For Ro&#039;Maeve:&lt;br /&gt;
* [ ] [[Moongate Pass]]&lt;br /&gt;
&lt;br /&gt;
For Sacrarium:&lt;br /&gt;
* [ ] [[Temple Knight Key]]&lt;br /&gt;
&lt;br /&gt;
For Temple of Uggalepih:&lt;br /&gt;
* [ ] [[Tonberry Key]]&lt;br /&gt;
* [ ] [[Paintbrush of Souls]]&lt;br /&gt;
&lt;br /&gt;
For Windurst:&lt;br /&gt;
* [ ] [[Starway Stairway Bauble]]&lt;br /&gt;
* [ ] [[Rhinostery Certificate]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Open_Doors_Key_Items&amp;diff=107365</id>
		<title>Category:Open Doors Key Items</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Open_Doors_Key_Items&amp;diff=107365"/>
		<updated>2025-07-21T18:20:33Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&amp;lt;!--Multiple [[Permanent Key Items]] were added in the last batch with the ability to open previously locked doors. Here is a short list:&lt;br /&gt;
&lt;br /&gt;
*For [[Garlaige Citadel]]: [[Pouch of weighted stones]]&lt;br /&gt;
*For [[Halvung]]: [[Bracelet of verve]]&lt;br /&gt;
*For [[Quicksand Caves]]: [[Loadstone]]&lt;br /&gt;
*For [[Sacrarium]]: [[Temple Knight Key]]&lt;br /&gt;
*For [[The Eldieme Necropolis]]: [[Magicked astrolabe]]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[Permanent Key Items]] (listed by their &amp;quot;doors&amp;quot;) include:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abyssea&amp;quot;&amp;gt;&lt;br /&gt;
For Attohwa Chasm / Abyssea - Attohwa:&lt;br /&gt;
*&#039;&#039;Dark Miasma&#039;&#039; - [[Miasmal counteragent recipe]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For Beadeaux:&lt;br /&gt;
*Qulun Dome &#039;&#039;Door&#039;&#039; - [[Black Matinee Necklace]], [[Coruscant Rosary]], [[Silver Bell]]&lt;br /&gt;
&lt;br /&gt;
For Castle Oztroja:&lt;br /&gt;
*&#039;&#039;Brass Door&#039;&#039; - [[Yagudo Torch]]&lt;br /&gt;
&lt;br /&gt;
For Davoi:&lt;br /&gt;
*&#039;&#039;Wall of Banishing&#039;&#039; - [[Crimson Orb]]&lt;br /&gt;
*&#039;&#039;Wall of Dark Arts&#039;&#039; - [[Crest of Davoi (Key Item)|Crest of Davoi]]&lt;br /&gt;
&lt;br /&gt;
For Delkfutt&#039;s Tower:&lt;br /&gt;
*Basement &#039;&#039;Cermet Door&#039;&#039; - [[Delkfutt Key]]&lt;br /&gt;
*&#039;&#039;Qe&#039;lov Gate&#039;&#039; - [[Prismatic Fragment]]&lt;br /&gt;
&lt;br /&gt;
For Dynamis:&lt;br /&gt;
*&#039;&#039;[[Trail Markings]]&#039;&#039; - [[Vial of Shrouded Sand]]&lt;br /&gt;
&lt;br /&gt;
For Hall of the Gods:&lt;br /&gt;
*&#039;&#039;Cermet Grate&#039;&#039; - [[Cerulean Crystal]]&lt;br /&gt;
&lt;br /&gt;
For Inner Horutoto Ruins:&lt;br /&gt;
*Rose Tower &#039;&#039;Sealed Portal&#039;&#039; ([[Three Mage Gate]]) - [[Portal Charm]]&lt;br /&gt;
&lt;br /&gt;
For Jeuno:&lt;br /&gt;
*Lower Jeuno &#039;&#039;Door: &amp;quot;Neptune&#039;s Spire&amp;quot;&#039;&#039; - [[Tenshodo Member&#039;s Card]]&lt;br /&gt;
&amp;lt;div class=&amp;quot;wotg&amp;quot;&amp;gt;&lt;br /&gt;
For Jugner Forest (S):&lt;br /&gt;
*&#039;&#039;Wooden Gate&#039;&#039; - [[Sliced Pole]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toau&amp;quot;&amp;gt;&lt;br /&gt;
For Mount Zhayolm:&lt;br /&gt;
*&#039;&#039;Gates of Halvung&#039;&#039; - [[Cast Metal Plate]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For Pso&#039;Xja:&lt;br /&gt;
*&#039;&#039;Stone Door&#039;&#039; - [[Blue Bracelet]]&lt;br /&gt;
*&#039;&#039;Stone Door&#039;&#039; - [[Green Bracelet]]&lt;br /&gt;
*&#039;&#039;Stone Gate&#039;&#039; - [[Pso&#039;Xja Pass]]&lt;br /&gt;
&lt;br /&gt;
For Ro&#039;Maeve:&lt;br /&gt;
*&#039;&#039;Moongate&#039;&#039; - [[Moongate Pass]]&lt;br /&gt;
&lt;br /&gt;
For Sacrarium:&lt;br /&gt;
*&#039;&#039;Large Keyhole&#039;&#039; and &#039;&#039;Small Keyhole&#039;&#039; gate - [[Temple Knight Key]]&lt;br /&gt;
&lt;br /&gt;
For Temple of Uggalepih:&lt;br /&gt;
*Blank hidden door for resetting Tonberry Hate - [[Tonberry Key]]&lt;br /&gt;
*Hidden door, entrance to [[Den of Rancor]] - [[Paintbrush of Souls]]&lt;br /&gt;
&lt;br /&gt;
For Windurst:&lt;br /&gt;
*Heavens Tower &#039;&#039;Door: Starway Stairway&#039;&#039; - [[Starway Stairway Bauble]]&lt;br /&gt;
*Windurst Walls &#039;&#039;[[Priming Gate]]&#039;&#039;, backdoor to [[Toraimarai Canal]]  - [[Rhinostery Certificate]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Temple_Knight_Key&amp;diff=107334</id>
		<title>Temple Knight Key</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Temple_Knight_Key&amp;diff=107334"/>
		<updated>2025-07-21T07:42:04Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Key Item&lt;br /&gt;
| name = Temple Knight key&lt;br /&gt;
| image = https://www.bg-wiki.com/images/8/89/Temple_Knight_key.jpg&lt;br /&gt;
| description = This master key to the Sacrarium held by Quelveuiat may only be carried by chevaliers of purest heart and mind.&lt;br /&gt;
| zones = [[Tavnazian Safehold]] (I-10) (First floor)&lt;br /&gt;
| obtained = After completing the quest [[A Hard Day&#039;s Knight]], trade Quelveuiat a [[Sealion Crest Key]] and a [[Coral Crest Key]]&lt;br /&gt;
| usage = Allows players to open the large door to the inner [[Sacrarium]] at (H-7) solo.&lt;br /&gt;
| mission = Mainly used for [[Promathia Mission 4-3]]&lt;br /&gt;
| notes = &lt;br /&gt;
| sub-category = Permanent Key Items&lt;br /&gt;
}}&lt;br /&gt;
[[Category:Open Doors Key Items]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=105818</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=105818"/>
		<updated>2025-06-10T23:48:07Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Blanking to remove the empty box at the top of the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=File:YuhtungaJungleHarvesting.png&amp;diff=102901</id>
		<title>File:YuhtungaJungleHarvesting.png</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=File:YuhtungaJungleHarvesting.png&amp;diff=102901"/>
		<updated>2025-02-20T18:34:51Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Hugin8484 uploaded a new version of File:YuhtungaJungleHarvesting.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Ran to each spot to verify and seen during rain - RedBaren&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=File:YhoatorJungleHarvesting.png&amp;diff=102900</id>
		<title>File:YhoatorJungleHarvesting.png</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=File:YhoatorJungleHarvesting.png&amp;diff=102900"/>
		<updated>2025-02-20T18:33:21Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Hugin8484 uploaded a new version of File:YhoatorJungleHarvesting.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Ran to each spot to verify and seen during rain - RedBaren&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Promathia_Mission_5-1&amp;diff=102186</id>
		<title>Promathia Mission 5-1</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Promathia_Mission_5-1&amp;diff=102186"/>
		<updated>2025-02-18T22:25:17Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Walkthrough */ Removed reference to a tower &amp;quot;number&amp;quot; so it&amp;#039;s less confusing based on map packs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;verified accurate 5/11/24&lt;br /&gt;
&lt;br /&gt;
{{Mission Header&lt;br /&gt;
|Mission Name=The Enduring Tumult of War&lt;br /&gt;
|Expansion=Chains of Promathia&lt;br /&gt;
|Start Location= Zoning into [[Port Bastok]]&lt;br /&gt;
|Description=The airship piloted by Louverance did not arrive in San d&#039;Oria, but Port Bastok. How much longer will Nag&#039;molada wait for your arrival at the northwestern tower of Pso&#039;Xja?&lt;br /&gt;
|Level=&lt;br /&gt;
|Repeatable=&lt;br /&gt;
|Previous=Slanderous Utterings&lt;br /&gt;
|Next=Desires of Emptiness&lt;br /&gt;
|Title=&lt;br /&gt;
|Rewards={{KeyItem}}[[Light of Vahzl]]&lt;br /&gt;
|Image=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Walkthrough== &lt;br /&gt;
*(Optional) Head to {{location|Northern San d&#039;Oria|L-6}} and talk to [[Chasalvige]] (Manuscript Room, Cathedral) he will tell you to investigate the port. &lt;br /&gt;
*(Optional) Head to {{location|Port San d&#039;Oria|H-6}} and talk to [[Anoki]] who will say that he hasn&#039;t seen anything that you describe.&lt;br /&gt;
*Zone into [[Port Bastok]] for a cutscene.&lt;br /&gt;
*Head to [[Metalworks]] and talk to [[Cid]] located at {{location|Metalworks|H-8}} for a cutscene.&lt;br /&gt;
*Zone into the [[Pso&#039;Xja]] tower at {{location|Beaucedine Glacier|F-7}} for a cutscene.&lt;br /&gt;
*This [[Pso&#039;Xja]] tower is uncapped. Follow the path forward until you find a stone door, which, when checked, spawns an [[NM]] [[:category:Golems|Golem]] named [[Nunyunuwi]].&lt;br /&gt;
:*This NM has approximately 3500 HP, though offset by an innate [[Auto Regen]] trait that restores &#039;&#039;100 HP per tick.&#039;&#039; If improperly handled, this effect can draw the battle out indefinitely. As a result, Nunyunuwi is often defeated with as much damage in as short a period as possible. Among the methods known (or theorized to be) effective are:&lt;br /&gt;
::*Level 3 [[Darkness]] [[Skillchain]]s at 300% [[Tactical Points|TP]]&lt;br /&gt;
::*Use of [[Ancient Magic]] in [[Magic Burst]]s, or coupled with layering of [[DOT]] effects like [[Poison II]] and [[Bio II]]&lt;br /&gt;
::*Use of high-level [[SMN]] [[Blood Pact]]s (when melee or additional SMN support is available)&lt;br /&gt;
:*This NM is known soloable by some jobs at, or over, Level 74 ([[RNG]], [[MNK]], [[BLM]], [[RDM]], [[DRG]], [[DRK]], [[SAM]]). Soloing at slightly lower levels may be possible.&lt;br /&gt;
*When Nunyunuwi is defeated, check the door to move past it.&lt;br /&gt;
*It is advisable to cast [[Sneak]] or use a [[Silent Oil]] then head down the elevator.&lt;br /&gt;
*Check the Stone Door for a cutscene. You will arrive in [[Promyvion - Vahzl]], where you will get another cutscene.&lt;br /&gt;
&lt;br /&gt;
[[category:Missions]]&lt;br /&gt;
[[Category:Chains of Promathia Missions]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Candle-making&amp;diff=102185</id>
		<title>Candle-making</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Candle-making&amp;diff=102185"/>
		<updated>2025-02-18T22:23:31Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Removed reference to rams in Abyssea&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Quests]][[Category:Jeuno Quests]]&lt;br /&gt;
{{Quest&lt;br /&gt;
|startnpc=[[Ilumida]] - {{Location|Upper Jeuno|G-8}}&lt;br /&gt;
|requirements=[[Jeuno]] [[Reputation]] 4&lt;br /&gt;
|items=[[Lanolin]]&lt;br /&gt;
|title=Believer of Altana&lt;br /&gt;
|repeatable=No&lt;br /&gt;
|reward={{KeyItem}}[[Holy Candle]]&lt;br /&gt;
|previous=&lt;br /&gt;
|next=[[A Candlelight Vigil]]&lt;br /&gt;
}}&lt;br /&gt;
== Walkthrough ==&lt;br /&gt;
*Talk to [[Ilumida]], who lives inside a House at ({{Location Tooltip| area = Upper Jeuno| pos = G-8}}). She&#039;ll ask you to obtain a candle from the Temple of the Goddess.&lt;br /&gt;
Head to the Temple of the Goddess right outside her house and speak with [[Rouliette]] ({{Location Tooltip| area = Upper Jeuno| pos = H-9}}).&lt;br /&gt;
*[[Rouliette]] agrees to make you a candle if you can get her a [[Lanolin|Lanolin Cube]].&lt;br /&gt;
*[[Lanolin|Lanolin Cubes]] are dropped by [[Battering Ram]]s in [[La Theine Plateau]].&lt;br /&gt;
*Trade the [[Lanolin|Lanolin Cube]] to [[Rouliette]] to complete the quest.&lt;br /&gt;
&lt;br /&gt;
{{Quest/Description&lt;br /&gt;
|client=Rouliette (Temple of the Goddess, Upper Jeuno)&lt;br /&gt;
|summary=Bring a lanolin cube to Rouliette so she can make you a candle.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Chocobo_Boots&amp;diff=100438</id>
		<title>Chocobo Boots</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Chocobo_Boots&amp;diff=100438"/>
		<updated>2025-01-15T16:44:44Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Statistics */ Swapped template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|Chocobo-Boots.jpg|Chocobo Boots}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = Armor&lt;br /&gt;
| name = Chocobo Boots&lt;br /&gt;
| slot = Feet&lt;br /&gt;
| stats = &#039;&#039;&#039;DEF:&#039;&#039;&#039; 1&amp;lt;br&amp;gt;&#039;&#039;&#039;[[Chocobo Riding Time]]&#039;&#039;&#039; +3&lt;br /&gt;
| level = 1&lt;br /&gt;
| set = Chocobo Jack Coat Set&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| guild points value = {{Guild Points Value|519|10560}}&lt;br /&gt;
| resale price = {{Resale Price|513}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Synthesis Recipes==&lt;br /&gt;
{{Synthesis Recipe&lt;br /&gt;
| craft = Leathercraft&lt;br /&gt;
| cap = 30&lt;br /&gt;
| result = Chocobo Boots&lt;br /&gt;
| hq result = Rider&#039;s Boots&lt;br /&gt;
| crystal = Earth&lt;br /&gt;
| ingredient = Bronze Scales&lt;br /&gt;
| ingredient 2 = Dhalmel Leather&lt;br /&gt;
| ingredient 2 quantity = 2&lt;br /&gt;
| ingredient 3 = Grass Cloth&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Used in Recipes==&lt;br /&gt;
{{rl|None}}&lt;br /&gt;
==Desynthesis Recipes==&lt;br /&gt;
{{rl|None}}&lt;br /&gt;
==Obtained from Desynthesis==&lt;br /&gt;
{{rl|None}}&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Armor|Feet}}&lt;br /&gt;
&lt;br /&gt;
{{Crafted Only}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Chocobo Digging]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Bastok_Mission_2-1&amp;diff=100418</id>
		<title>Bastok Mission 2-1</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Bastok_Mission_2-1&amp;diff=100418"/>
		<updated>2025-01-14T20:44:46Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Walkthrough */ Missing space&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mission Header&lt;br /&gt;
|Mission Name=The Crystal Line&lt;br /&gt;
|Expansion=bastok&lt;br /&gt;
|Start=Any Bastok Gate Guard&lt;br /&gt;
|Description=Find a section of the strange structure on the [[Konschtat Highlands]] that drains the energy from crystals. Bring a faded crystal back to Chief Engineer [[Cid]] for analysis.&lt;br /&gt;
|Level=&lt;br /&gt;
|Repeatable=&lt;br /&gt;
|Previous=Bastok Mission 1-3{{!}}Fetichism&lt;br /&gt;
|Next=Bastok Mission 2-2{{!}}Wading Beasts&lt;br /&gt;
|Title=&lt;br /&gt;
|Reward=Rank Points&lt;br /&gt;
|Image=The_Crystal_Line.jpg&lt;br /&gt;
}}&lt;br /&gt;
==Walkthrough==&lt;br /&gt;
* Trade 3 [[Crystal|Crystals]] to a gate guard until your Rank Points are full to unlock this mission.&lt;br /&gt;
&lt;br /&gt;
* Select the mission from one of the [[Gate Guard|Bastok Gate Guards]].&lt;br /&gt;
&lt;br /&gt;
* Talk to [[Cid]] in the {{Location|Metalworks|H-8}} for more information. (This can be done before or after obtaining a Faded Crystal)&lt;br /&gt;
**He will give you a free crystal.&lt;br /&gt;
&lt;br /&gt;
* Trade Cid a [[Faded Crystal]] to receive the [[C. L. Report]].&lt;br /&gt;
** Faded Crystal can be obtained by trading a synthesis crystal to any crag&#039;s Telepoint, such as the [[Crag of Dem]] in [[Konschtat Highlands]] at ({{Location Tooltip|area=Konschtat Highlands|pos=I-6}}).&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;(Optional)&#039;&#039;&#039; Talk to [[Naji]].&lt;br /&gt;
**Naji guards the President&#039;s Office ({{Location Tooltip|area=Metalworks|pos=J-8}}).&lt;br /&gt;
* Speak to [[Ayame]] in the Cannonry at ({{Location Tooltip|area=Metalworks|pos=K-7}}) to finish the mission.&lt;br /&gt;
** You may have to speak to her several times to receive the correct dialogue.&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
* This mission is an excellent opportunity for first-time players to obtain a [[Dem Gate Crystal]].&lt;br /&gt;
* Since the implementation of the [[Chains of Promathia]] expansion, the north platform of the Crag of Dem is the only remaining Telepoint in Konschtat Highlands that can be used to obtain a Faded Crystal.&lt;br /&gt;
&lt;br /&gt;
[[Category:Missions]][[Category:Bastok Missions]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=File:Freeswords_Slops.png&amp;diff=75636</id>
		<title>File:Freeswords Slops.png</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=File:Freeswords_Slops.png&amp;diff=75636"/>
		<updated>2024-12-03T19:58:39Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=75611</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:Sitenotice&amp;diff=75611"/>
		<updated>2024-12-02T18:30:49Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Clearing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Category:Katana&amp;diff=73661</id>
		<title>Category:Katana</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Category:Katana&amp;diff=73661"/>
		<updated>2024-11-05T16:57:08Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Katana by Level */ Senjuinrikio Latent DPS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}[[Category:Tailwind]]&lt;br /&gt;
Katana are single-handed, low-delay, low-to-average damage weapons wielded exclusively by [[Ninja]].  Generally, a katana will do more damage than a dagger, but hit more often than a sword.  Some katana include stat boosts, everything from stats, to increasing the damage of [[ninjutsu]] magic, to the Ninja&#039;s attacking power, to their defensive strength.  One katana even offers a bonus to cooking skill.&lt;br /&gt;
&lt;br /&gt;
Katana come into the spotlight once their user begins to get stronger forms of the [[Dual Wield]] trait - since katana already have low delay and good damage considering their delay, when as much as 60% of the delay of the weapons gets removed from natural job traits and equipment, the Ninja&#039;s damage-over-time tends to reach very high levels.&lt;br /&gt;
&amp;lt;div style=&amp;quot;max-width: 600px&amp;quot;;&amp;gt;&lt;br /&gt;
==Job Ratings==&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot;&lt;br /&gt;
!Job&lt;br /&gt;
!Skill Ranking&lt;br /&gt;
!Cap at Level 1&lt;br /&gt;
!Cap at Level 37&lt;br /&gt;
!Cap at Level 75&lt;br /&gt;
|-&lt;br /&gt;
|[[Ninja]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |{{sort|01|A-}}&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |114&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |269&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
*See [[:Category:Combat Skills#Skill Caps|Combat Skills Caps]] for the skill cap at every level.&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;max-width: 1000px&amp;quot;;&amp;gt;&lt;br /&gt;
==Equipment that Enhance this Skill==&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Lvl&lt;br /&gt;
!Slot&lt;br /&gt;
!Effects&lt;br /&gt;
!Jobs&lt;br /&gt;
|-&lt;br /&gt;
|[[Hope Torque]]&lt;br /&gt;
|73&lt;br /&gt;
|[[:Category:Neck|Neck]]&lt;br /&gt;
|[[AGI]] +5, &#039;&#039;&#039;Katana Skill&#039;&#039;&#039; +7, [[Archery Skill]] +7&lt;br /&gt;
|[[Jobs|All Jobs]]&lt;br /&gt;
|}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Weapon Skills==&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table sortable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Skill Level&lt;br /&gt;
!Info&lt;br /&gt;
!Modifiers&lt;br /&gt;
![[Skillchain]] Propreties&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Rin]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
|Deals [[critical]] damage. Chance of critical hit varies with [[TP]].&lt;br /&gt;
|[[STR]]:20% [[DEX]]:20%&lt;br /&gt;
|{{Transfixion}}[[Transfixion|{{Light|Transfixion}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Retsu]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |30&lt;br /&gt;
|Delivers a twofold attack that [[Paralyze (Status Effect)|paralyzes]] target. Duration of paralysis varies with [[TP]].&lt;br /&gt;
|[[STR]]:20% [[DEX]]:20%&lt;br /&gt;
|{{Scission}}[[Scission|{{Earth|Scission}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Teki]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |70&lt;br /&gt;
|Deals {{water|water}} elemental damage. Damage varies with [[TP]].&lt;br /&gt;
|[[STR]]:20% [[INT]]:20%&lt;br /&gt;
|{{Reverberation}}[[Reverberation|{{Water|Reverberation}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: To]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |100&lt;br /&gt;
|Deals {{ice|ice}} elemental damage. Damage varies with [[TP]].&lt;br /&gt;
|[[STR]]:30% [[INT]]:30%&lt;br /&gt;
|{{Induration}}[[Induration|{{Ice|Induration}}]]&amp;lt;br /&amp;gt;{{Detonation}}[[Detonation|{{Wind|Detonation}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Chi]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |150&lt;br /&gt;
|Delivers a twofold attack that deals {{earth|earth}} elemental damage. Damage varies with [[TP]].&lt;br /&gt;
|[[STR]]:30% [[INT]]:30%&lt;br /&gt;
|{{Impaction}}[[Impaction|{{Lightning|Impaction}}]]&amp;lt;br /&amp;gt;{{Transfixion}}[[Transfixion|{{Light|Transfixion}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Ei]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |175&lt;br /&gt;
|Deals {{dark|darkness}} elemental damage. Damage varies with [[TP]].&lt;br /&gt;
|[[STR]]:30% [[INT]]:30%&lt;br /&gt;
|{{Compression}}[[Compression|{{Dark|Compression}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Jin]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |200&lt;br /&gt;
|Delivers a threefold attack. Chance of [[critical|critical hit]] varies with [[TP]].&amp;lt;br&amp;gt;&#039;&#039;[[Ninja]] only.&#039;&#039;&lt;br /&gt;
|[[STR]]:30% [[DEX]]:30%&lt;br /&gt;
|{{Detonation}}[[Detonation|{{Wind|Detonation}}]]&amp;lt;br /&amp;gt;{{Impaction}}[[Impaction|{{Lightning|Impaction}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Ten]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |225&lt;br /&gt;
|Damage varies with [[TP]].&amp;lt;br&amp;gt;&#039;&#039;[[Ninja]] only.&#039;&#039;&lt;br /&gt;
|[[STR]]:30% [[DEX]]:30%&lt;br /&gt;
|{{Gravitation}}[[Gravitation|{{Dark|Gravi}}{{Earth|tation}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Ku]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |250&amp;lt;br /&amp;gt;[[Bugi Soden|Quest]]&lt;br /&gt;
|Delivers a fivefold attack. [[Accuracy]] varies with [[TP]].&amp;lt;br&amp;gt;&#039;&#039;[[Ninja]] only.&#039;&#039;&lt;br /&gt;
|[[STR]]:10% [[DEX]]:10%&lt;br /&gt;
|{{Gravitation}}[[Gravitation|{{Dark|Gravi}}{{Earth|tation}}]]&amp;lt;br /&amp;gt;{{Transfixion}}[[Transfixion|{{Light|Transfixion}}]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Blade: Metsu]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |[[:Category:Relic Weapons|Relic]]&lt;br /&gt;
|[[Yoshimitsu]]/[[Kikoku]]: [[Subtle Blow]] +10. [[Aftermath]] duration varies with [[TP]].&amp;lt;br&amp;gt;&#039;&#039;Must have [[Yoshimitsu]], [[Kikoku]], or [[Sekirei]] equipped.&#039;&#039;&lt;br /&gt;
|[[DEX]]:60%&lt;br /&gt;
|{{Darkness}}[[Darkness|{{Ice|Da}}{{Water|rk}}{{Earth|ne}}{{Dark|ss}}]]&amp;lt;br /&amp;gt;{{Fragmentation}}[[Fragmentation|{{Wind|Fragmen}}{{Lightning|tation}}]]&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- |[[Blade: Kamu]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; |[[:Category:Mythic Weapons|Mythic]]&lt;br /&gt;
|Lowers target&#039;s [[Accuracy Down|accuracy]]. Duration of effect varies with [[TP]].&amp;lt;br /&amp;gt;[[Nagi]]: [[Aftermath]] effect varies with [[TP]].&amp;lt;br&amp;gt;&#039;&#039;[[Ninja]] only.&#039;&#039;&lt;br /&gt;
|[[STR]]:60% [[INT]]:60%&lt;br /&gt;
|{{Fragmentation}}[[Fragmentation|{{Wind|Fragmen}}{{Lightning|tation}}]]&amp;lt;br /&amp;gt;{{Compression}}[[Compression|{{Dark|Compression}}]] --&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Katana by Level==&lt;br /&gt;
&amp;lt;tailwind-table&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! class=&amp;quot;text-center&amp;quot; | Level&lt;br /&gt;
! class=&amp;quot;text-center&amp;quot; | Damage&lt;br /&gt;
! class=&amp;quot;text-center&amp;quot; | Delay&lt;br /&gt;
! class=&amp;quot;text-center&amp;quot; | DPS&lt;br /&gt;
! Description&lt;br /&gt;
! Jobs&lt;br /&gt;
|-&lt;br /&gt;
| [[Debahocho]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 0.26&lt;br /&gt;
| Main hand: Cooking skill +2&lt;br /&gt;
| All Jobs&lt;br /&gt;
|-&lt;br /&gt;
| [[Debahocho +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 0.54&lt;br /&gt;
| Main hand: Cooking skill +3&lt;br /&gt;
| All Jobs&lt;br /&gt;
|-&lt;br /&gt;
| [[Kunai]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1.26&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kunai +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1.62&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Trainee Burin]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 0.32&lt;br /&gt;
| Latent effect: Goldsmithing skill +1&lt;br /&gt;
| All Jobs&lt;br /&gt;
|-&lt;br /&gt;
| [[Wakizashi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.11&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Wakizashi +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.43&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kyofu]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 13&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.91&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kyofu +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 13&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.24&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shinobi-Gatana]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 13&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.91&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shinobi-Gatana +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 13&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.24&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Gassan]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 15&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.17&lt;br /&gt;
| AGI+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mokuto]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 16&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.84&lt;br /&gt;
| Additional effect: Silence&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mokuto +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 16&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.17&lt;br /&gt;
| Additional effect: Silence&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Seito]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 16&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 2.84&lt;br /&gt;
| Additional effect: Silence&amp;lt;br /&amp;gt;Enchantment: &amp;quot;Ensilence&amp;quot;&amp;lt;br /&amp;gt;&amp;lt;15/15 0:30/[10:00, 0:30]&amp;gt;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Suzume]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.47&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Ganko]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 3.17&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hibari]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 13&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.11&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hibari +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 14&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.54&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Busuto]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 16&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.14&lt;br /&gt;
| Additional effect: Poison&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Busuto +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 17&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.49&lt;br /&gt;
| Additional effect: Poison&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Fukuro]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 28&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 15&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.74&lt;br /&gt;
| STR+1 AGI+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Nikkariaoe]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 30&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 4.91&lt;br /&gt;
| Spell interruption rate down 25%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kodachi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 32&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.02&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kodachi +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 32&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.41&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Reppu]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 32&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.02&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Reppu +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 32&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.41&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Midare]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 36&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.29&lt;br /&gt;
| Evasion+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Midare +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 36&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 21&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.68&lt;br /&gt;
| Evasion+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Niokiyotsuna]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.02&lt;br /&gt;
| &amp;quot;Double Attack&amp;quot;+1%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Ohaguro]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 39&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 195&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.15&lt;br /&gt;
| STR+1 DEX+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Anju]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 40&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 23 {{changes|increased from 21 to 23}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 216&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.39&lt;br /&gt;
| DEX+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Zushio]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 40&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25 {{changes|increased from 23 to 25}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 238&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.3&lt;br /&gt;
| STR+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Bokuto]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 41&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 23&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.95&lt;br /&gt;
| Additional effect: Blindness&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Bokuto +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 41&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.34&lt;br /&gt;
| Additional effect: Blindness&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hanafubuki]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 43&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.34&lt;br /&gt;
| Enchantment: TP+100&amp;lt;br /&amp;gt;&amp;lt;100/100 0:30/[10:00, 0:30]&amp;gt;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sakurafubuki]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 43&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.34&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sakurafubuki +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 43&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.76&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Melt Katana]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 46&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.47&lt;br /&gt;
| Additional effect: Weakens defense&amp;lt;br /&amp;gt;Enchantment: Weakens defense&amp;lt;br /&amp;gt;&amp;lt;15/15 0:30/[10:00, 0:30]&amp;gt;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Yoto]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 46&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.47&lt;br /&gt;
| Additional effect: Weakens defense&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Yoto +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 46&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.87&lt;br /&gt;
| Additional effect: Weakens defense&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hien]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 47&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 21&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.63&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hien +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 47&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 22&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.14&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sai]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 48&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 28&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 242&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.94&lt;br /&gt;
| Parrying skill +3&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sai +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 48&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 29&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 234&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.44&lt;br /&gt;
| Parrying skill +5&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Buboso]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 50&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.89&lt;br /&gt;
| STR+2 DEX+2 AGI+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kageboshi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 50&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.58&lt;br /&gt;
| Additional effect: &amp;quot;Bind&amp;quot;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Tsugumi]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 50&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 19&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 160&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.13&lt;br /&gt;
| Accuracy+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shinogi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 52&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 28&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.40&lt;br /&gt;
| DEX+3&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Keppu]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 54&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.87&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Keppu +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 54&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 27&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.30&lt;br /&gt;
| Additional effect with wind fan &amp;lt;br /&amp;gt;equipped: Wind damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Muketsu]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 54&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.87&lt;br /&gt;
| Additional effect: HP drain&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Muketsu +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 54&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 27&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.30&lt;br /&gt;
| Additional effect: HP drain&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hototogisu]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 55&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 24&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.78&lt;br /&gt;
| Accuracy+3&amp;lt;br /&amp;gt;Latent effect: Parrying skill +5&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hocho]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 57&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 30&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.93&lt;br /&gt;
| Cooking skill +3&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Rusty Kunai]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 60&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 20&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.32&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sairen]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 60&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 31&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 238&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.82&lt;br /&gt;
| STR+3&amp;lt;br /&amp;gt;On Darksdays: STR+7 Enmity+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kabutowari]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 61&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 30&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.93&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kabutowari +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 61&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 31&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.38&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kogitsunemaru]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 62&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 34&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.99&lt;br /&gt;
| Additional effect vs. vermin: HP Drain&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kitsutsuki]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 64&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.43&lt;br /&gt;
| Vs. plantoids: Critical hit rate +5%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kororito]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 66&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 33&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.53&lt;br /&gt;
| Additional effect: Poison&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kororito +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 66&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 35&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.25&lt;br /&gt;
| Additional effect: Poison&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Imanotsurugi]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 67&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 35&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.25&lt;br /&gt;
| Enmity+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Amanojaku]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 68&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 29&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 221&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.87&lt;br /&gt;
| Accuracy-1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Osoraku]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 69&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| DEF+10&amp;lt;br /&amp;gt;Set: Increases HP, VIT,&amp;lt;br /&amp;gt;Accuracy, Ranged Accuracy&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Yagentoshiro]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 69&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 34&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.19&lt;br /&gt;
| Enhances ninjutsu damage&amp;lt;br /&amp;gt;Set: Increases Evasion and&amp;lt;br /&amp;gt;HP recovered while healing&amp;lt;br /&amp;gt;Reduces Enmity&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Cmb.Cst. Kusabi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 70&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 26&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.21&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Fudo]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 70&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 39&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.31&lt;br /&gt;
| Critical hit rate +3%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Karasuageha]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 70&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 29&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.16&lt;br /&gt;
| Assault: DMG:33 &amp;quot;Subtle Blow&amp;quot;+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryumon]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 70&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.04&lt;br /&gt;
| Latent effect: Attack Bonus&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Fuchingiri]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 223&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.22&lt;br /&gt;
| Enmity-5&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hayabusa]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 28&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.84&lt;br /&gt;
| &amp;quot;Subtle Blow&amp;quot;+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hayabusa +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 29&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.41&lt;br /&gt;
| &amp;quot;Subtle Blow&amp;quot;+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kodachi of Trials]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 33&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.72&lt;br /&gt;
| Latent effect: HP+20 {{Resist Fire}}+10 {{Resist Light}}+10&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sayosamonji]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| Depending on day: Increases elemental&amp;lt;br /&amp;gt;weapon skill damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Unsho]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 71&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 31&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 201&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.25&lt;br /&gt;
| STR+3 DEX+3 VIT-1 &amp;lt;br /&amp;gt;&amp;quot;Subtle Blow&amp;quot;+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mamushito]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.57&lt;br /&gt;
| Additional effect: &amp;quot;Stun&amp;quot;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mamushito +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.04&lt;br /&gt;
| Additional effect: &amp;quot;Stun&amp;quot;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Onishibari]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 28&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 185&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.08&lt;br /&gt;
| Evasion+5&amp;lt;br /&amp;gt;Enhances &amp;quot;Beast Killer&amp;quot; effect&amp;lt;br /&amp;gt;Vs. beasts: Critical hit rate +7%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Senjuinrikio]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.61&amp;lt;br /&amp;gt;(10.04 w/ latent)&lt;br /&gt;
| Latent effect: DMG:38&amp;lt;br /&amp;gt;Critical hit rate +6%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shamo]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 33&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.53&lt;br /&gt;
| TP Bonus&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shusui]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| HP-20 DEX+3 Accuracy+5&amp;lt;br /&amp;gt;&amp;quot;Subtle Blow&amp;quot;+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Unji]] {{Rare|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 72&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 32&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 201&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.55&lt;br /&gt;
| STR+2 DEX+4 AGI-1 &amp;lt;br /&amp;gt;&amp;quot;Subtle Blow&amp;quot;+1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hirenjaku]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| Accuracy+2&amp;lt;br /&amp;gt;Magic Accuracy+2 &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Hirenjaku +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.27&lt;br /&gt;
| Accuracy+3&amp;lt;br /&amp;gt;Magic Accuracy+3&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Izayoi]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 232&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.57&lt;br /&gt;
| Attack+3 &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Izayoi +1]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.04&lt;br /&gt;
| Attack+5 &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Musanto]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.00&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Oninohocho]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 30&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.93&lt;br /&gt;
| HP+20 Evasion+4 Enmity+2&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Perdu Blade]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 27&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.53&lt;br /&gt;
| Latent effect: DMG:32&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Shiranui]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| Evasion+3 &amp;lt;br /&amp;gt;Additional effect: Light damage&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Tojaku]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 73&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| Accuracy+2&amp;lt;br /&amp;gt;Magic Accuracy+2 &amp;lt;br /&amp;gt;Enchantment: &amp;quot;Stone&amp;quot;&amp;lt;br /&amp;gt;&amp;lt;50/50 0:30/[10:00, 0:30]&amp;gt;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kugui]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 74&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 39&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 242&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.67&lt;br /&gt;
| STR+2&amp;lt;br /&amp;gt;Parrying skill +1&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Narigitsune]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 74&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 38&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 10.04&lt;br /&gt;
| Evasion+5&amp;lt;br /&amp;gt;Magic damage taken -5%&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Otori]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 74&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 39&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 242&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.67&lt;br /&gt;
| AGI+2&amp;lt;br /&amp;gt;Parrying skill +4&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Rai Kunimitsu]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 74&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 34&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.99&lt;br /&gt;
| Critical hit rate +5%&amp;lt;br /&amp;gt;On Firesdays: DMG:41 {{Resist Fire}}+15&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Ihintanto]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 999&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 0.06&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Isatu]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 21&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 222&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 5.68&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kibashiri]] {{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 25&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 6.61&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kikoku]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 42&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 210&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 12.00&lt;br /&gt;
| Attack+20&amp;lt;br /&amp;gt;&amp;quot;Blade: Metsu&amp;quot;&amp;lt;br /&amp;gt;Additional effect: Paralysis&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Koruri]] {{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 30&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.93&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Kuina]] {{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 27&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.14&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mimizuku]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 1&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 0.26&lt;br /&gt;
| In Dynamis: {{Resist Dark}}+7&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Mozu]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 36&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.52&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Nagi]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Nagi]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 37&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 9.78&lt;br /&gt;
| Magic Accuracy+10&amp;lt;br /&amp;gt;Enmity+10 Augments &amp;quot;Mijin Gakure&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;Blade: Kamu&amp;quot;&amp;lt;br /&amp;gt;Aftermath: Increases Acc./Atk.&amp;lt;br /&amp;gt;Occasionally attacks twice&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Rogetsu]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 33&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.72&lt;br /&gt;
| In Dynamis: {{Resist Dark}}+9&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sasuke Katana]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 33&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 8.72&lt;br /&gt;
| &lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Tsukumo]] &lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 23&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 190&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 7.26&lt;br /&gt;
| Main hand: DMG:27&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Yoshimitsu]] {{Rare|no}}{{Ex|no}}&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 75&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 42&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 227&lt;br /&gt;
| class=&amp;quot;text-center&amp;quot; | 11.10&lt;br /&gt;
| In Dynamis: &amp;quot;Blade: Metsu&amp;quot;&lt;br /&gt;
| [[NIN]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/tailwind-table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{NavEquipment}}&lt;br /&gt;
{{CategoryTOC}}&lt;br /&gt;
[[Category:Weapons]]&lt;br /&gt;
[[Category:Equipment]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Adventurer_Coupon&amp;diff=65268</id>
		<title>Adventurer Coupon</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Adventurer_Coupon&amp;diff=65268"/>
		<updated>2024-09-30T06:05:56Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Other Uses */ Corrected location of Jack of Spades&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}[[Category:Special Items]]&lt;br /&gt;
&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|Adventurer Coupon.png|Adventurer Coupon}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| icon id = 00536&lt;br /&gt;
| name = Adventurer coupon&lt;br /&gt;
| tags = {{Rare}}&lt;br /&gt;
| description = This coupon is distributed to promising&amp;lt;br&amp;gt;recruits to get them started.&lt;br /&gt;
}}&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| resale price = none&lt;br /&gt;
| other = Trade to one of the following NPCs to receive 50 gil.&lt;br /&gt;
|}}&lt;br /&gt;
{|class=&amp;quot;npc-table horizon-table table-sm&amp;quot;&lt;br /&gt;
!width=&amp;quot;35%&amp;quot;| Country&lt;br /&gt;
!width=&amp;quot;30%&amp;quot;| Area&lt;br /&gt;
!width=&amp;quot;15%&amp;quot;| Coordinate&lt;br /&gt;
!width=&amp;quot;20%&amp;quot;| NPC Name&lt;br /&gt;
|- valign=&amp;quot;center&amp;quot;&lt;br /&gt;
|rowspan=3 align=&amp;quot;center&amp;quot;|[[Image:SandoriaIcon.png|25px]] Kingdom of [[San d&#039;Oria]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Southern San d&#039;Oria]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (I-9)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Ailevia]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Northern San d&#039;Oria]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (J-8)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Matildie]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Port San d&#039;Oria]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (F-9)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Teilsa]]&lt;br /&gt;
|- valign=&amp;quot;center&amp;quot;&lt;br /&gt;
|rowspan=3 align=&amp;quot;center&amp;quot;|[[Image:BastokIcon.png|25px]] Republic of [[Bastok]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Bastok Mines]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (H-7)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Arva]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Bastok Markets]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (G-8)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Reet]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Port Bastok]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (J-8)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Dulsie]]&lt;br /&gt;
|- valign=&amp;quot;center&amp;quot;&lt;br /&gt;
|rowspan=4 align=&amp;quot;center&amp;quot;|[[Image:WindurstIcon.png|25px]] Federation of [[Windurst]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Windurst Waters]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| North (G-9)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Jack of Hearts]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Windurst Walls]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (C-13)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Jack of Diamonds]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Port Windurst]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (E-6)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Jack of Clubs]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Windurst Woods]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| (F-8)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| [[Jack of Spades]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Others|Misc.}}&lt;br /&gt;
===Starting Character===&lt;br /&gt;
*Every character starts with one of these in their inventory.&lt;br /&gt;
*You also are given one when you change your [[Allegiance]] to a new nation.&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:VanaTime.js&amp;diff=58861</id>
		<title>MediaWiki:VanaTime.js</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:VanaTime.js&amp;diff=58861"/>
		<updated>2024-07-16T14:54:29Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Undo revision 58733 by Hugin8484 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/*********************************************************************&lt;br /&gt;
Javascript below contributes to Vana&#039;diel Time displays throughout&lt;br /&gt;
the HorizonXI Wiki&lt;br /&gt;
Credits: ********&lt;br /&gt;
https://www.pyogenes.com/ffxi/timer/v2.html &lt;br /&gt;
https://www.mithrapride.org/vana_time/index.html&lt;br /&gt;
https://www.rubydoc.info/gems/vanadiel-time/Vanadiel/Time&lt;br /&gt;
**********************************************************************/&lt;br /&gt;
&lt;br /&gt;
class timeElements {&lt;br /&gt;
// List of all class names for each element in this model, for styling &lt;br /&gt;
&lt;br /&gt;
	static sidebar = &amp;quot;n-vanatime&amp;quot;;&lt;br /&gt;
    static conquest = &amp;quot;vanatime-page-conquest-schedule&amp;quot;; // &amp;lt;span ... /&amp;gt;&lt;br /&gt;
    //static moonPhase = &amp;quot;vanatime-page-moon-phase&amp;quot;;   // not implemented&lt;br /&gt;
    static moonSchedule = &amp;quot;vanatime-page-moon-schedule-table&amp;quot;;&lt;br /&gt;
    static rseSchedule = &amp;quot;vanatime-page-rse-schedule-table&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    static airships = {&lt;br /&gt;
        //all : &amp;quot;vanatime-airship-schedule-table&amp;quot;,     // not implemented&lt;br /&gt;
        jeuno : &amp;quot;vanatime-airship-schedule-jeuno-table&amp;quot;,&lt;br /&gt;
        bastok : &amp;quot;vanatime-airship-schedule-bastok-table&amp;quot;,&lt;br /&gt;
        sandy : &amp;quot;vanatime-airship-schedule-sandy-table&amp;quot;,&lt;br /&gt;
        windy : &amp;quot;vanatime-airship-schedule-windy-table&amp;quot;,&lt;br /&gt;
        kazham : &amp;quot;vanatime-airship-schedule-kazham-table&amp;quot;,&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    static boats = {&lt;br /&gt;
        selbina : &amp;quot;vanatime-boat-schedule-selbina-table&amp;quot;,&lt;br /&gt;
        mhaura : &amp;quot;vanatime-boat-schedule-mhaura-table&amp;quot;,&lt;br /&gt;
        bibiki : &amp;quot;vanatime-boat-schedule-bibiki-table&amp;quot;,&lt;br /&gt;
        purgonorgoIsle : &amp;quot;vanatime-boat-schedule-purgonorgoIsle-table&amp;quot;,&lt;br /&gt;
        northLanding : &amp;quot;vanatime-boat-schedule-northLanding-table&amp;quot;,&lt;br /&gt;
        centralLanding : &amp;quot;vanatime-boat-schedule-centralLanding-table&amp;quot;,&lt;br /&gt;
        southLanding : &amp;quot;vanatime-boat-schedule-southLanding-table&amp;quot;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    static guilds = {&lt;br /&gt;
        alchemy : &amp;quot;vanatime-guild-schedule-alchemy&amp;quot;,&lt;br /&gt;
        alchemy_status:  &amp;quot;vanatime-guild-schedule-alchemy-status&amp;quot;,&lt;br /&gt;
        alchemy_holiday: &amp;quot;vanatime-guild-schedule-alchemy-holiday&amp;quot;,&lt;br /&gt;
        alchemy_timer: &amp;quot;vanatime-guild-schedule-alchemy-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        smithing : &amp;quot;vanatime-guild-schedule-smithing&amp;quot;,&lt;br /&gt;
        smithing_status:  &amp;quot;vanatime-guild-schedule-smithing-status&amp;quot;,&lt;br /&gt;
        smithing_holiday: &amp;quot;vanatime-guild-schedule-smithing-holiday&amp;quot;,&lt;br /&gt;
        smithing_timer: &amp;quot;vanatime-guild-schedule-smithing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        bonecrafting : &amp;quot;vanatime-guild-schedule-bonecrafting&amp;quot;,&lt;br /&gt;
        bonecrafting_status:  &amp;quot;vanatime-guild-schedule-bonecrafting-status&amp;quot;,&lt;br /&gt;
        bonecrafting_holiday: &amp;quot;vanatime-guild-schedule-bonecrafting-holiday&amp;quot;,&lt;br /&gt;
        bonecrafting_timer: &amp;quot;vanatime-guild-schedule-bonecrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        goldsmithing : &amp;quot;vanatime-guild-schedule-goldsmithing&amp;quot;,&lt;br /&gt;
        goldsmithing_status:  &amp;quot;vanatime-guild-schedule-goldsmithing-status&amp;quot;,&lt;br /&gt;
        goldsmithing_holiday: &amp;quot;vanatime-guild-schedule-goldsmithing-holiday&amp;quot;,&lt;br /&gt;
        goldsmithing_timer: &amp;quot;vanatime-guild-schedule-goldsmithing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        clothcrafting : &amp;quot;vanatime-guild-schedule-clothcrafting&amp;quot;,&lt;br /&gt;
        clothcrafting_status:  &amp;quot;vanatime-guild-schedule-clothcrafting-status&amp;quot;,&lt;br /&gt;
        clothcrafting_holiday: &amp;quot;vanatime-guild-schedule-clothcrafting-holiday&amp;quot;,&lt;br /&gt;
        clothcrafting_timer: &amp;quot;vanatime-guild-schedule-clothcrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        woodworking : &amp;quot;vanatime-guild-schedule-woodworking&amp;quot;,&lt;br /&gt;
        woodworking_status:  &amp;quot;vanatime-guild-schedule-woodworking-status&amp;quot;,&lt;br /&gt;
        woodworking_holiday: &amp;quot;vanatime-guild-schedule-woodworking-holiday&amp;quot;,&lt;br /&gt;
        woodworking_timer: &amp;quot;vanatime-guild-schedule-woodworking-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        leathercrafting : &amp;quot;vanatime-guild-schedule-leathercrafting&amp;quot;,&lt;br /&gt;
        leathercrafting_status:  &amp;quot;vanatime-guild-schedule-leathercrafting-status&amp;quot;,&lt;br /&gt;
        leathercrafting_holiday: &amp;quot;vanatime-guild-schedule-leathercrafting-holiday&amp;quot;,&lt;br /&gt;
        leathercrafting_timer: &amp;quot;vanatime-guild-schedule-leathercrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        fishing : &amp;quot;vanatime-guild-schedule-fishing&amp;quot;,&lt;br /&gt;
        fishing_status:  &amp;quot;vanatime-guild-schedule-fishing-status&amp;quot;,&lt;br /&gt;
        fishing_holiday: &amp;quot;vanatime-guild-schedule-fishing-holiday&amp;quot;,&lt;br /&gt;
        fishing_timer: &amp;quot;vanatime-guild-schedule-fishing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        cooking : &amp;quot;vanatime-guild-schedule-cooking&amp;quot;,&lt;br /&gt;
        cooking_status:  &amp;quot;vanatime-guild-schedule-cooking-status&amp;quot;,&lt;br /&gt;
        cooking_holiday: &amp;quot;vanatime-guild-schedule-cooking-holiday&amp;quot;,&lt;br /&gt;
        cooking_timer: &amp;quot;vanatime-guild-schedule-cooking-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        all : &amp;quot;vanatime-guild-schedule-all&amp;quot;&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
class schedule {&lt;br /&gt;
    //  All raw datea is from ASB &lt;br /&gt;
    //  route definintion = [ &#039;Name of route&#039;, anim_arrive, anim_depart, timeOffset, time_interval, time_anim_arrive, time_waiting, time_anim_depart]&lt;br /&gt;
    //  Actual arrival time (when the player can enter the transport ) = time_offset + time_anim_arrive = [3] + [5]&lt;br /&gt;
    //  Departure time = arrival time + time_waiting = arrival_time + [6]&lt;br /&gt;
    //  All values listed are in VanaTime minutes, so 1440 is the total minutes in a game hour&lt;br /&gt;
    &lt;br /&gt;
        static #airship_jeuno_sandy = [&#039;Jeuno -&amp;gt; Sandoria&#039;,   0,   360, 12, 60, 12];&lt;br /&gt;
        static #airship_jeuno_windy = [&#039;Jeuno -&amp;gt; Windurst&#039;,   90,  360, 12, 60, 12];&lt;br /&gt;
        static #airship_jeuno_bastok = [&#039;Jeuno -&amp;gt; Bastok&#039;,     180, 360, 12, 60, 16];&lt;br /&gt;
        static #airship_jeuno_kazham = [&#039;Jeuno -&amp;gt; Kazham&#039;,     270, 360, 20, 50, 20];&lt;br /&gt;
        static #airship_bastok_jeuno = [&#039;Bastok -&amp;gt; Jeuno&#039;,     0,   360, 14, 60, 16];&lt;br /&gt;
        static #airship_sandy_jeuno = [&#039;Sandoria -&amp;gt; Jeuno&#039;,   180, 360, 12, 60, 16];&lt;br /&gt;
        static #airship_windy_jeuno = [&#039;Windurst -&amp;gt; Jeuno&#039;,   270, 360, 18, 60, 14];&lt;br /&gt;
        static #airship_kazham_jeuno = [&#039;Kazham -&amp;gt; Jeuno&#039;,     90,  360, 20, 50, 20];&lt;br /&gt;
    &lt;br /&gt;
        static airships = {&lt;br /&gt;
            jeuno : [&lt;br /&gt;
                this.#airship_jeuno_bastok,&lt;br /&gt;
                this.#airship_jeuno_sandy,&lt;br /&gt;
                this.#airship_jeuno_windy,&lt;br /&gt;
                this.#airship_jeuno_kazham,&lt;br /&gt;
                this.#airship_bastok_jeuno,&lt;br /&gt;
                this.#airship_sandy_jeuno,&lt;br /&gt;
                this.#airship_windy_jeuno,&lt;br /&gt;
                this.#airship_kazham_jeuno&lt;br /&gt;
            ],&lt;br /&gt;
            bastok :    [ this.#airship_bastok_jeuno, this.#airship_jeuno_bastok],&lt;br /&gt;
            sandy :     [this.#airship_sandy_jeuno, this.#airship_jeuno_sandy],&lt;br /&gt;
            windy :     [this.#airship_windy_jeuno, this.#airship_jeuno_windy],&lt;br /&gt;
            kazham :    [this.#airship_kazham_jeuno, this.#airship_jeuno_kazham]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
        static #boat_selbina_mhaura = [&#039;Selbina -&amp;gt; Mhaura&#039;,     382, 480, 18, 80, 17];&lt;br /&gt;
        static #boat_mhaura_selbina = [&#039;Mhaura -&amp;gt; Selbina&#039;,     382, 480, 18, 80, 17];&lt;br /&gt;
        static #boat_mhaura_whitegate = [&#039;Mhaura -&amp;gt; Whitegate&#039;, 142, 480, 18, 80, 17];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_whitegate_mhaura = [&#039;Whitegate -&amp;gt; Mhaura&#039;, 142, 480, 18, 80, 16];&lt;br /&gt;
        static #boat_whitegate_nashmau = [&#039;Whitegate -&amp;gt; Nashmau&#039;, 282, 480, 18, 180, 17];&lt;br /&gt;
        static #boat_nashmau_whitegate = [&#039;Nashmau -&amp;gt; Whitegate&#039;, 282, 480, 18, 180, 17];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_bibiki_tours = [&#039;Bibiki Bay -&amp;gt; Tours&#039;, 710, 720, 20, 40, 20];&lt;br /&gt;
        static #boat_bibiki_purgo = [&#039;Bibiki Bay -&amp;gt; Purgonorgo Isle&#039;, 270, 720, 20, 40, 20];&lt;br /&gt;
        static #boat_purgo_bibiki = [&#039;Purgonorgo Isle -&amp;gt; Bibiki Bay&#039;, 500, 720, 20, 40, 20];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_barge_south_central_emfa = [&#039;South Landing -&amp;gt; Central Landing EMFEA&#039;, 5, 1440, 15, 35, 15];&lt;br /&gt;
        static #boat_barge_central_south_newtpool1 = [&#039;Central Landing -&amp;gt; South Landing NewtPool&#039;, 267, 1440, 12, 30, 15];&lt;br /&gt;
        static #boat_barge_south_oos = [&#039;South Landing -&amp;gt; OOS&#039;, 1402, 1440, 33,  0,  0];&lt;br /&gt;
        static #boat_barge_south_north = [&#039;South Landing -&amp;gt; North Landing&#039;, 560, 1440, 15, 35, 15];&lt;br /&gt;
        static #boat_barge_north_oos = [&#039;North Landing -&amp;gt; OOS&#039;, 925, 1440, 40,  0,  0];&lt;br /&gt;
        static #boat_barge_north_central = [&#039;North Landing -&amp;gt; Central Landing&#039;,  993, 1440, 12, 40, 15];&lt;br /&gt;
        static #boat_barge_central_south_newtpool2 = [&#039;Central Landing -&amp;gt; South Landing NewtPool 2&#039;, 1148, 1440, 12, 30, 15];&lt;br /&gt;
        static #boat_barge_south_oos1 = [&#039;South Landing -&amp;gt; OOS 2&#039;, 512, 1440, 33,  0,  0];&lt;br /&gt;
    &lt;br /&gt;
        static boats = {&lt;br /&gt;
            selbina :  [ this.#boat_selbina_mhaura ],&lt;br /&gt;
            mhaura :  [ this.#boat_mhaura_selbina, this.#boat_mhaura_whitegate ],&lt;br /&gt;
            whitegate : [ this.#boat_whitegate_mhaura, this.#boat_whitegate_nashmau],&lt;br /&gt;
            nashmau : [ this.#boat_nashmau_whitegate ],&lt;br /&gt;
            bibiki :  [ this.#boat_bibiki_tours, this.#boat_bibiki_purgo],&lt;br /&gt;
            purgonorgoIsle : [ this.#boat_purgo_bibiki ],&lt;br /&gt;
            northLanding : [ this.#boat_barge_north_oos, this.#boat_barge_north_central ],&lt;br /&gt;
            centralLanding : [ this.#boat_barge_central_south_newtpool1, this.#boat_barge_central_south_newtpool2 ],&lt;br /&gt;
            southLanding : [ this.#boat_barge_south_central_emfa, this.#boat_barge_south_oos, this.#boat_barge_south_north, this.#boat_barge_south_oos1 ]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
        static #alchemy = [480, 1380, 5];&lt;br /&gt;
        static #smithing = [480, 1380, 2];&lt;br /&gt;
        static #bonecrafting = [480, 1380, 3];&lt;br /&gt;
        static #goldsmithing = [480, 1380, 4];&lt;br /&gt;
        static #clothcrafting = [360, 1260, 0];&lt;br /&gt;
        static  #woodworking = [360, 1260, 0];&lt;br /&gt;
        static #leathercrafting = [180, 1080, 4];&lt;br /&gt;
        static #fishing = [180, 1080, 5];&lt;br /&gt;
        static #cooking = [300, 1200, 7];&lt;br /&gt;
    &lt;br /&gt;
        static guilds = {&lt;br /&gt;
            // [ Open, Close, Holiday]&lt;br /&gt;
            alchemy : this.#alchemy,&lt;br /&gt;
            smithing : this.#smithing,&lt;br /&gt;
            bonecrafting : this.#bonecrafting,&lt;br /&gt;
            goldsmithing : this.#goldsmithing,&lt;br /&gt;
            clothcrafting : this.#clothcrafting,&lt;br /&gt;
            woodworking : this.#woodworking,&lt;br /&gt;
            leathercrafting : this.#leathercrafting,&lt;br /&gt;
            fishing : this.#fishing,&lt;br /&gt;
            cooking : this.#cooking,&lt;br /&gt;
            all : [ this.#alchemy, this.#smithing, this.#bonecrafting,this.#goldsmithing, this.#clothcrafting,this.#woodworking,this.#leathercrafting, this.#fishing, this.#cooking ]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class VanaTime{&lt;br /&gt;
    &lt;br /&gt;
    #elementalDay =     [&amp;quot;Firesday&amp;quot;,    &amp;quot;Earthsday&amp;quot;,        &amp;quot;Watersday&amp;quot;,        &amp;quot;Windsday&amp;quot;,         &amp;quot;Iceday&amp;quot;,           &amp;quot;Lightningday&amp;quot;,     &amp;quot;Lightsday&amp;quot;,    &amp;quot;Darksday&amp;quot;];&lt;br /&gt;
    #dayColor =         [&amp;quot;#FF0000&amp;quot;,     &amp;quot;#AAAA00&amp;quot;,          &amp;quot;#0000DD&amp;quot;,           &amp;quot;#00AA22&amp;quot;,         &amp;quot;#7799FF&amp;quot;,          &amp;quot;#AA00AA&amp;quot;,          &amp;quot;#AAAAAA&amp;quot;,      &amp;quot;#333333&amp;quot;];&lt;br /&gt;
    #moonPhaseName =    [&amp;quot;New Moon&amp;quot;,    &amp;quot;Waxing Crescent&amp;quot;,  &amp;quot;First Quarter&amp;quot;,    &amp;quot;Waxing Gibbous&amp;quot;,   &amp;quot;Full Moon&amp;quot;,        &amp;quot;Waning Gibbous&amp;quot;,   &amp;quot;Last Quarter&amp;quot;, &amp;quot;Waning Crescent&amp;quot;];&lt;br /&gt;
    #moonIcon =         [&#039;\u{1F311}&#039;,   &#039;\u{1F312}&#039;,        &#039;\u{1F313}&#039;,        &#039;\u{1F314}&#039;,        &#039;\u{1F315}&#039;,        &#039;\u{1F316}&#039;,        &#039;\u{1F317}&#039;,    &#039;\u{1F318}&#039;];&lt;br /&gt;
    #moonPercentages =  [&amp;quot;(10%-0%-5%)&amp;quot;, &amp;quot;(7%-38%)&amp;quot;,         &amp;quot;(40%-55%)&amp;quot;,        &amp;quot;(57%-88%)&amp;quot;,        &amp;quot;(90%-100%-95%)&amp;quot;,    &amp;quot;(93%-62%)&amp;quot;,       &amp;quot;(60%-45%)&amp;quot;,    &amp;quot;(43%-12%)&amp;quot;];&lt;br /&gt;
    #month =            [&amp;quot;Jan&amp;quot;, &amp;quot;Feb&amp;quot;, &amp;quot;Mar&amp;quot;, &amp;quot;Apr&amp;quot;, &amp;quot;May&amp;quot;, &amp;quot;Jun&amp;quot;, &amp;quot;Jul&amp;quot;, &amp;quot;Aug&amp;quot;, &amp;quot;Sep&amp;quot;, &amp;quot;Oct&amp;quot;, &amp;quot;Nov&amp;quot;, &amp;quot;Dec&amp;quot;];&lt;br /&gt;
    #weekday =          [&amp;quot;Sun&amp;quot;, &amp;quot;Mon&amp;quot;, &amp;quot;Tue&amp;quot;, &amp;quot;Wed&amp;quot;, &amp;quot;Thu&amp;quot;, &amp;quot;Fri&amp;quot;, &amp;quot;Sat&amp;quot;];&lt;br /&gt;
    #rseRace =          [&amp;quot;M. Hume&amp;quot;,&amp;quot;F. Hume&amp;quot;,&amp;quot;M. Elvaan&amp;quot;,&amp;quot;F. Elvaan&amp;quot;,&amp;quot;M. TaruTaru&amp;quot;,&amp;quot;F. TaruTaru&amp;quot;,&amp;quot;Mithra&amp;quot;,&amp;quot;Galka&amp;quot;];&lt;br /&gt;
    #rseLocation =      [&amp;quot;Gusgen Mines&amp;quot;,&amp;quot;Shakrami Maze&amp;quot;,&amp;quot;Ordelle Caves&amp;quot;];&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    // Conversions in Milliseconds&lt;br /&gt;
    //#baseDate; // built at runtime: 1024844400000&lt;br /&gt;
    #moonDate =     1074997872000; // in milliseconds&lt;br /&gt;
    #VTIME_BIRTH     = 1024844400000; // vana birthday - in milliseconds&lt;br /&gt;
    #VTIME_BASEDATE  = 1009810800;  // unix epoch - 1009810800 = se epoch (in earth seconds)&lt;br /&gt;
    rseDate =      1075281264000;&lt;br /&gt;
&lt;br /&gt;
    #ONE_SECOND = 1000000;&lt;br /&gt;
    #ONE_MINUTE;&lt;br /&gt;
    #ONE_HOUR;&lt;br /&gt;
    #ONE_DAY;&lt;br /&gt;
    // #ONE_WEEK;&lt;br /&gt;
    // #ONE_MONTH;&lt;br /&gt;
    // #ONE_YEAR;&lt;br /&gt;
&lt;br /&gt;
    // Conversions in Minutes&lt;br /&gt;
    #VTIME_YEAR  =      518400;   // 360 * GameDay&lt;br /&gt;
    #VTIME_MONTH =      43200;      // 30 * GameDay&lt;br /&gt;
    #VTIME_WEEK  =      11520;      // 8 * GameDay&lt;br /&gt;
    #VTIME_DAY   =      1440;       // 24 hours * GameHour&lt;br /&gt;
    #VTIME_HOUR  =      60;         // 60 minutes&lt;br /&gt;
    #VMULTIPLIER =      25;&lt;br /&gt;
    #MOON_CYCLE_DAYS =  84;&lt;br /&gt;
    // #MOON_CYCLE_PHASE = 17280;     // 1 moon phase cycle = 12 vana days = 12 * Gameday&lt;br /&gt;
&lt;br /&gt;
    /*&lt;br /&gt;
        Some of the math...&lt;br /&gt;
&lt;br /&gt;
        (((898 * 360) + 30) * 24 * 60 * 60) / (this.#VMULTIPLIER / 1000).....  &lt;br /&gt;
        converts vana time to earth time by ( / 25 ) then getting to milliseconds ( * 1000 )&lt;br /&gt;
    */&lt;br /&gt;
    #vanaBirthday = (((898 * 360) + 30) * 24 * 60 * 60) / (25 / 1000); // 1117359360000 - in earth time milliseconds&lt;br /&gt;
    #difference = this.#vanaBirthday - this.#VTIME_BIRTH; // 92514960000 - earth time milliseconds&lt;br /&gt;
&lt;br /&gt;
    getDifference(){ return this.#difference };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Common variables for quick reference to current Vana time&lt;br /&gt;
     * @returns - integer / number&lt;br /&gt;
     */&lt;br /&gt;
    // vana_currentTime_inEarthMS = ((898 * 360 + 30) * (24 * 60 * 60 * 1000)) + (this.earthDate.getTime() - this.#VTIME_BIRTH) * this.#VMULTIPLIER; // vana time, represented in earth milliseconds - used for making Date() objects&lt;br /&gt;
    // vana_currentTime = this.vana_currentTime_inEarthMS / (60 * 1000); // vana time in minutes&lt;br /&gt;
    // //vana_currentTime = ( ((this.earthDate.getTime() / 1000) - this.#VTIME_BASEDATE ) / 60.0 * this.#VMULTIPLIER) + (886 * this.#VTIME_YEAR); //returned in vana minutes&lt;br /&gt;
    // vana_year = this.vana_currentTime / this.#VTIME_YEAR;&lt;br /&gt;
    // vana_month  = (this.vana_currentTime / this.#VTIME_MONTH) % 12 + 1;&lt;br /&gt;
    // vana_date = (this.vana_currentTime / this.#VTIME_DAY) % 30 + 1;&lt;br /&gt;
    // vana_weekday  = Math.floor((this.vana_currentTime % this.#VTIME_WEEK) / this.#VTIME_DAY);&lt;br /&gt;
    // vana_hour = (this.vana_currentTime % this.#VTIME_DAY) / this.#VTIME_HOUR;&lt;br /&gt;
    // vana_mins  = this.vana_currentTime % this.#VTIME_HOUR;&lt;br /&gt;
    // vana_moonphase  = Math.floor((this.vana_currentTime % this.#MOON_CYCLE_PHASE) / this.#VTIME_DAY);&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Helper functions for quick reference to any Vana time&lt;br /&gt;
     * @returns - integer / number&lt;br /&gt;
     */&lt;br /&gt;
    now_inEarthMS(){ &lt;br /&gt;
        var now = new Date();&lt;br /&gt;
        return ((898 * 360 + 30) * (24 * 60 * 60 * 1000)) + (now.getTime() - this.#VTIME_BIRTH) * this.#VMULTIPLIER; &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    now(){ return this.now_inEarthMS() / ( 60 * 1000); }&lt;br /&gt;
&lt;br /&gt;
    now_inMS(){&lt;br /&gt;
        var timenow = new Date();&lt;br /&gt;
        return ((timenow.getTime() - this.#VTIME_BIRTH) % (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    now_inMINS(){&lt;br /&gt;
        return this.now_inMS / ( 1000 * 60 );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    today_inMS(){ // result in earth Milliseconds&lt;br /&gt;
        var now = this.now_inEarthMS();&lt;br /&gt;
        return ( now - ( now % (24 * 60 * 60 * 1000) ));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    year(vanatime) {&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor(vanatime / this.#VTIME_YEAR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    month(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime / this.#VTIME_MONTH) % 12) + 1;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    date(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime / this.#VTIME_DAY) % 30) + 1;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    weekDay(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime % this.#VTIME_WEEK) / this.#VTIME_DAY);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    hour(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime % this.#VTIME_DAY) / this.#VTIME_HOUR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    mins(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor(vanatime % this.#VTIME_HOUR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    dayColor(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return this.#dayColor[this.weekDay()];&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    dayLabel(day){ &lt;br /&gt;
        if (day === undefined || day == null) return this.#elementalDay[this.weekDay()];&lt;br /&gt;
        else return this.#elementalDay[day]&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhaseIcon(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonIcon[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonIcon[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhaseName(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonPhaseName[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonPhaseName[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhasePercentages(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonPercentages[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonPercentages[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * Time Helper functions - supports string generation for month/week details&lt;br /&gt;
     * @param  (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */&lt;br /&gt;
    monthLabel(m){ return this.#month[m]; }&lt;br /&gt;
    weekdayLabel(w){ return this.#weekday[w]; }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * RSE Helper functions - supports string generation for RSE details&lt;br /&gt;
     * @param r (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */ &lt;br /&gt;
    rseRace(r){ return this.#rseRace[r]; }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * RSE Helper functions - supports string generation for RSE details&lt;br /&gt;
     * @param r (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */ &lt;br /&gt;
    rseLocation(r){ return this.#rseLocation[r]; }&lt;br /&gt;
&lt;br /&gt;
    constructor(){&lt;br /&gt;
        this.#ONE_MINUTE = 60  * this.#ONE_SECOND;&lt;br /&gt;
        this.#ONE_HOUR = 60  * this.#ONE_MINUTE;&lt;br /&gt;
        this.#ONE_DAY = 24  * this.#ONE_HOUR;&lt;br /&gt;
        // this.#ONE_WEEK = 8   * this.#ONE_DAY;&lt;br /&gt;
        // this.#ONE_MONTH = 30  * this.#ONE_DAY;&lt;br /&gt;
        // this.#ONE_YEAR = 360 * this.#ONE_DAY;&lt;br /&gt;
&lt;br /&gt;
        // this.#MOON_CYCLE_PHASE = 12 * this.#VTIME_WEEK;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /******************************** MOON PHASES **********************************&lt;br /&gt;
 &lt;br /&gt;
     0% NM   7% WXC    40% FQM   57% WXG   90% FM  93% WNG  60% LQM  43% WNC  10% NM &lt;br /&gt;
     2% NM  10% WXC    43% FQM   60% WXG   93% FM  90% WNG  57% LQM  40% WNC   7% NM&lt;br /&gt;
     5% NM  12% WXC    45% FQM   62% WXG   95% FM  88% WNG  55% LQM  38% WNC   5% NM&lt;br /&gt;
            14% WXC    48% FQM   64% WXG   98% FM  86% WNG  52% LQM  36% WNC   2% NM&lt;br /&gt;
            17% WXC    50% FQM   67% WXG  100% FM  83% WNG  50% LQM  33% WNC&lt;br /&gt;
            19% WXC    52% FQM   69% WXG   98% FM  81% WNG  48% LQM  31% WNC&lt;br /&gt;
            21% WXC    55% FQM   71% WXG   95% FM  79% WNG  45% LQM  29% WNC&lt;br /&gt;
            24% WXC              74% WXG           76% WNG           26% WNC&lt;br /&gt;
            26% WXC              76% WXG           74% WNG           24% WNC&lt;br /&gt;
            29% WXC              79% WXG           71% WNG           21% WNC&lt;br /&gt;
            31% WXC              81% WXG           69% WNG           19% WNC&lt;br /&gt;
            33% WXC              83% WXG           67% WNG           17% WNC&lt;br /&gt;
            36% WXC              86% WXG           64% WNG           14% WNC&lt;br /&gt;
            38% WXC              88% WXG           62% WNG           12% WNC&lt;br /&gt;
    ********************************************************************************/&lt;br /&gt;
    /**     &lt;br /&gt;
     * Private function - supports moon phase calculations &lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer - represents the day in the 84 day moon phase cycle&lt;br /&gt;
     */ &lt;br /&gt;
    #moonDays(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return  ((( vanatime /  this.#VTIME_DAY ) + 26) % this.#MOON_CYCLE_DAYS); &lt;br /&gt;
    }  &lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Private function for doing arithmetic for moon phase percentage&lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer representing moon phase percentage&lt;br /&gt;
     */ &lt;br /&gt;
    #moonPercent(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.abs( -Math.round((42 - Math.floor(this.#moonDays(vanatime))) / 42 * 100) ); &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Helper function for getting moon phase percentage&lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer representing moon phase percentage&lt;br /&gt;
     */ &lt;br /&gt;
    getMoonPercent(vanatime) { return this.#moonPercent(vanatime)};&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param vanatime - Vanadiel time, in MILLISECONDS; default value is now()&lt;br /&gt;
     * @returns - integer representing waxing/waning/neither&lt;br /&gt;
     */ &lt;br /&gt;
    #moonDirection(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        var moondays = Math.floor(this.#moonDays(vanatime));&lt;br /&gt;
        //console.log(daysmod);&lt;br /&gt;
        if (moondays == 42 || moondays == 0) { return 0; }// neither waxing nor waning&lt;br /&gt;
        else if (moondays &amp;lt; 42){ return 1; } // waning&lt;br /&gt;
        else{ return 2; } // waxing&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param vanatime - Vanadiel time, in MILLISECONDS; default value is now()&lt;br /&gt;
     * @returns - total milliseconds remaining until next conquest update&lt;br /&gt;
     */ &lt;br /&gt;
    moonLatentPhase(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        var moonPhase = this.#moonPercent(vanatime);&lt;br /&gt;
        var moonDirection = this.#moonDirection(vanatime);&lt;br /&gt;
&lt;br /&gt;
        //console.log(&amp;quot;*mP&amp;quot;, moonPhase);&lt;br /&gt;
        //console.log(&amp;quot;*mD&amp;quot;, moonDirection);&lt;br /&gt;
        &lt;br /&gt;
        if (moonPhase &amp;lt;= 5 || (moonPhase &amp;lt;= 10 &amp;amp;&amp;amp; moonDirection == 1)) {return 0;} // New Moon - 10% waning -&amp;gt; 5% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 7 &amp;amp;&amp;amp; moonPhase &amp;lt;= 38 &amp;amp;&amp;amp; moonDirection == 2) {return 1;}  // Waxing Crescent - 7% -&amp;gt; 38% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 40 &amp;amp;&amp;amp; moonPhase &amp;lt;= 55 &amp;amp;&amp;amp; moonDirection == 2){return 2;}  // First Quarter - 40%% -&amp;gt; 55% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 57 &amp;amp;&amp;amp; moonPhase &amp;lt;= 88 &amp;amp;&amp;amp; moonDirection == 2){return 3;}  // Waxing Gibbous - 57% -&amp;gt; 88%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 95 || (moonPhase &amp;gt;= 90 &amp;amp;&amp;amp; moonDirection == 2)){return 4;}  // Full Moon - waxing 90% -&amp;gt; waning 95%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 62 &amp;amp;&amp;amp; moonPhase &amp;lt;= 93 &amp;amp;&amp;amp; moonDirection == 1){return 5;}  // Waning Gibbous - 93% -&amp;gt; 62%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 45 &amp;amp;&amp;amp; moonPhase &amp;lt;= 60 &amp;amp;&amp;amp; moonDirection == 1){return 6;}  // Last Quarter - 60% -&amp;gt; 45%&lt;br /&gt;
        else{return 7;}  // Waning Crescent - 43% -&amp;gt; 12%&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @returns - total milliseconds remaining until next conquest update&lt;br /&gt;
     */ &lt;br /&gt;
    conquestRemainingTime(){ &lt;br /&gt;
        var now =  new Date();&lt;br /&gt;
        //console.log(this.earthDate.getTime(), this.#VTIME_BIRTH);&lt;br /&gt;
        return (7 * (24 * 60 * 60 * 1000)) - ((now.getTime() - this.#VTIME_BIRTH) % (7 * (24 * 60 * 60 * 1000)));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @returns - integer - total Vanadiel days remaining on current conquest&lt;br /&gt;
     */ &lt;br /&gt;
    conquestRemainingVanaDays(){&lt;br /&gt;
        return Math.ceil(this.conquestRemainingTime() / (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param time - Vanadiel time, in MILLISECONDS, needing to be converted &lt;br /&gt;
     * @returns {Date} - value as Date() object&lt;br /&gt;
     */&lt;br /&gt;
    earthTime(time){&lt;br /&gt;
        if (time === undefined) time = this.now_inEarthMS();&lt;br /&gt;
        //else time = time * 60 * 1000;&lt;br /&gt;
        var earthTime = time / ( this.#VMULTIPLIER );&lt;br /&gt;
        return new Date(Math.floor(earthTime) - (this.#vanaBirthday - this.#VTIME_BIRTH));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
     /**&lt;br /&gt;
     * @param time - Vanadiel time, in minutes, needing to be converted&lt;br /&gt;
     * @returns - string, formatted 00:00&lt;br /&gt;
     */&lt;br /&gt;
     stringVanaTime(time){ &lt;br /&gt;
        if (time === undefined || time === null) time = this.now();&lt;br /&gt;
        //console.log(time);&lt;br /&gt;
        var vYear = this.year(time);&lt;br /&gt;
        var vMon  = this.month(time)&lt;br /&gt;
        var vDate = this.date(time);&lt;br /&gt;
        var vHour = this.hour(time);&lt;br /&gt;
        var vMin  = this.mins(time);&lt;br /&gt;
        // var vSec  = time.getSeconds();&lt;br /&gt;
        // var vDay  = time.getDay();&lt;br /&gt;
        //seconds left our because we don&#039;t use them for any calcs&lt;br /&gt;
&lt;br /&gt;
        if (vYear &amp;lt; 1000)  vYear = &amp;quot;0&amp;quot; + vYear; &lt;br /&gt;
        if (vMon  &amp;lt; 10) vMon  = &amp;quot;0&amp;quot; + vMon;&lt;br /&gt;
        if (vDate  &amp;lt; 10)  vDate  = &amp;quot;0&amp;quot; + vDate;&lt;br /&gt;
        if (vHour &amp;lt; 10)  vHour = &amp;quot;0&amp;quot; + vHour; &lt;br /&gt;
        if (vMin  &amp;lt; 10)  vMin  = &amp;quot;0&amp;quot; + vMin; &lt;br /&gt;
&lt;br /&gt;
        //return vYear + &amp;quot;:&amp;quot; + vMonth + &amp;quot;:&amp;quot; + vDate + &amp;quot; [&amp;quot; + vHour + &amp;quot;:&amp;quot; + vMin + &amp;quot;]&amp;quot; ; // for testing&lt;br /&gt;
        return vHour + &amp;quot;:&amp;quot; + vMin; &lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * @param time - Vanadiel time, in milliseconds, needing to be converted&lt;br /&gt;
     * @returns - string, formatted 00:00:00&lt;br /&gt;
     */&lt;br /&gt;
    stringEarthTime(time) {&lt;br /&gt;
        var eTime = this.earthTime(time);  &lt;br /&gt;
        // const monthNames = [&amp;quot;Jan&amp;quot;, &amp;quot;Feb&amp;quot;, &amp;quot;Mar&amp;quot;, &amp;quot;Apr&amp;quot;, &amp;quot;May&amp;quot;, &amp;quot;Jun&amp;quot;, &amp;quot;Jul&amp;quot;, &amp;quot;Aug&amp;quot;, &amp;quot;Sep&amp;quot;, &amp;quot;Oct&amp;quot;, &amp;quot;Nov&amp;quot;, &amp;quot;Dec&amp;quot;];&lt;br /&gt;
        //Most of these arent needed, left in for future inclusion if needed/wanted&lt;br /&gt;
        // var eYear = eTime.getFullYear();&lt;br /&gt;
        // var eMon  = monthNames[eTime.getMonth()];&lt;br /&gt;
        var eDate = eTime.getDate();&lt;br /&gt;
        var eHour = eTime.getHours();&lt;br /&gt;
        var eMin  = eTime.getMinutes();&lt;br /&gt;
        var eSec  = eTime.getSeconds();&lt;br /&gt;
        var eDay  = eTime.getDay();&lt;br /&gt;
        &lt;br /&gt;
        // Assigns a leading zero if neccessary&lt;br /&gt;
        // if (eDate &amp;lt; 10)  eDate = &amp;quot;0&amp;quot; + eDate; &lt;br /&gt;
        if (eHour &amp;lt; 10)  eHour = &amp;quot;0&amp;quot; + eHour; &lt;br /&gt;
        if (eMin &amp;lt; 10)   eMin  = &amp;quot;0&amp;quot; + eMin;  &lt;br /&gt;
        if (eSec &amp;lt; 10)   eSec  = &amp;quot;0&amp;quot; + eSec;  &lt;br /&gt;
&lt;br /&gt;
        // var str = eMon + &amp;quot; &amp;quot; + eDate + &amp;quot;,&amp;quot; + eHour + &amp;quot;:&amp;quot; + eMin + &amp;quot;:&amp;quot; + eSec;&lt;br /&gt;
        var str = eHour + &amp;quot;:&amp;quot; + eMin + &amp;quot;:&amp;quot; + eSec;&lt;br /&gt;
        return str;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param  nextTime - Vana time, in MINUTES, needing to be converted&lt;br /&gt;
     * @returns - string of HOURS:MINS&lt;br /&gt;
     */&lt;br /&gt;
    timeUntil(nextTime){&lt;br /&gt;
        if (nextTime === undefined) { return &amp;quot;00:00:00&amp;quot;; }&lt;br /&gt;
        else if ( !(nextTime instanceof Date) ) {&lt;br /&gt;
            //console.log(&#039;!instance of Date&#039;);&lt;br /&gt;
            var e = this.earthTime(nextTime);&lt;br /&gt;
         } //earth time for next departure&lt;br /&gt;
        else e = nextTime;&lt;br /&gt;
&lt;br /&gt;
        //console.log( e.getTime() );&lt;br /&gt;
&lt;br /&gt;
        var now = new Date(); // earth time now&lt;br /&gt;
        &lt;br /&gt;
        //get difference between the next departure and current time... we want this to be in seconds, and Date()&lt;br /&gt;
        //and nextDeparture should be in milliseconds, so we /1000&lt;br /&gt;
&lt;br /&gt;
        var days = (e.getTime() - now.getTime()) / (24 * 60 * 60 * 1000);&lt;br /&gt;
        var hours = (days - Math.floor(days)) * 24;&lt;br /&gt;
        var minutes = (hours - Math.floor(hours)) * 60;&lt;br /&gt;
        var seconds = Math.floor((minutes - Math.floor(minutes)) * 60);&lt;br /&gt;
&lt;br /&gt;
        days = Math.floor(days);&lt;br /&gt;
        hours = Math.floor(hours);&lt;br /&gt;
        minutes = Math.floor(minutes);&lt;br /&gt;
        &lt;br /&gt;
        if (hours &amp;lt; 10)  hours = &amp;quot;0&amp;quot; + hours; &lt;br /&gt;
        if (minutes &amp;lt; 10)   minutes  = &amp;quot;0&amp;quot; + minutes;  &lt;br /&gt;
        if (seconds &amp;lt; 10)   seconds  = &amp;quot;0&amp;quot; + seconds;  &lt;br /&gt;
        &lt;br /&gt;
        var str = minutes + &amp;quot;:&amp;quot; + seconds;&lt;br /&gt;
&lt;br /&gt;
        if ( days &amp;gt; 0 ) { str = [days, hours, str].join(&#039;:&#039;); }&lt;br /&gt;
        else if ( hours &amp;gt; 0 || typeof(hours) == &#039;string&#039;) { str = [hours, str].join(&#039;:&#039;); }&lt;br /&gt;
&lt;br /&gt;
        return str;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    timer(time1, time2){&lt;br /&gt;
        var seconds = Math.floor((time1.getTime() - time2.getTime()) / 1000); &lt;br /&gt;
                &lt;br /&gt;
        //basic math functions to get each element of time separated &lt;br /&gt;
        var minutes = Math.floor(seconds / 60);&lt;br /&gt;
        var hours = Math.floor(minutes / 60);&lt;br /&gt;
        var days = Math.floor(hours / 24);&lt;br /&gt;
&lt;br /&gt;
        hours = hours-(days * 24);&lt;br /&gt;
        minutes = minutes-(days * 24 * 60)-(hours * 60);&lt;br /&gt;
        seconds = seconds-(days * 24 * 60 * 60 )-(hours * 60 * 60)-(minutes * 60);&lt;br /&gt;
&lt;br /&gt;
        seconds &amp;lt; 10 ? seconds = &amp;quot;0&amp;quot; + seconds : seconds;&lt;br /&gt;
        minutes &amp;lt; 10 ? minutes = &amp;quot;0&amp;quot; + minutes : minutes;&lt;br /&gt;
        hours &amp;lt; 10 ? hours = &amp;quot;0&amp;quot; + hours : hours;&lt;br /&gt;
        &lt;br /&gt;
        var str = hours + &amp;quot;:&amp;quot; + minutes + &amp;quot;:&amp;quot; + seconds;&lt;br /&gt;
        if ( days != 0) str = [days, str].join(&#039;:&#039;);&lt;br /&gt;
        return str; &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
const vanatime = new VanaTime();&lt;br /&gt;
let currentPopulation = 0;&lt;br /&gt;
////////////////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
function pageHasElement(element){&lt;br /&gt;
	&lt;br /&gt;
    function test(v){&lt;br /&gt;
        var i = document.getElementById(v);&lt;br /&gt;
        var c = document.getElementsByClassName(v);&lt;br /&gt;
&lt;br /&gt;
        if ( i ) { return true; }&lt;br /&gt;
        if ( c[0] ) { return true; }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (typeof(element) == &#039;string&#039;) return test(element);&lt;br /&gt;
    else { &lt;br /&gt;
        for (const [k,v] of Object.entries(element) ){ &lt;br /&gt;
            if (test(v) == true) return true;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateSidebar() {&lt;br /&gt;
    if (!pageHasElement(timeElements.sidebar)) return;&lt;br /&gt;
&lt;br /&gt;
    var hour = vanatime.hour();&lt;br /&gt;
    hour &amp;lt; 10 ? hour = [&amp;quot;0&amp;quot;, hour].join(&#039;&#039;) : hour;&lt;br /&gt;
    var mins = vanatime.mins();&lt;br /&gt;
    mins &amp;lt; 10 ? mins = [&amp;quot;0&amp;quot;, mins].join(&#039;&#039;) : mins;&lt;br /&gt;
&lt;br /&gt;
    var sidebarTime = &amp;quot;&amp;lt;div&amp;gt;&amp;lt;li&amp;gt;&amp;lt;b&amp;gt;&amp;quot; + hour + &amp;quot;:&amp;quot; + mins + &amp;quot;&amp;lt;/b&amp;gt;  ~  &amp;quot; + vanatime.year() + &amp;quot;-&amp;quot; + vanatime.month() + &amp;quot;-&amp;quot; + vanatime.date() + &amp;quot;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
	sidebarTime +=	&amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-weight: bold; font-size:14px; color:&amp;quot; + vanatime.dayColor() + &amp;quot;\&amp;quot; &amp;gt;&amp;quot;  + vanatime.dayLabel() + &amp;quot;&amp;lt;/span&amp;gt;&amp;lt;span style=\&amp;quot;font-size:14px;\&amp;quot;&amp;gt;  ~ &amp;quot; + vanatime.moonPhaseIcon() + vanatime.getMoonPercent() + &amp;quot;%&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
    //sidebarTime +=	&amp;quot;&amp;lt;li&amp;gt;\u{1F7E2} Online &amp;quot;;&lt;br /&gt;
    if ( currentPopulation != 0 ) sidebarTime += &amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-size:9px;\&amp;quot;&amp;gt;\u{1F7E2}&amp;lt;/span&amp;gt; Online &amp;lt;b&amp;gt;&amp;quot; + currentPopulation + &amp;quot;&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
    else sidebarTime += &amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-size:9px;\&amp;quot;&amp;gt;\u{1F534}&amp;lt;/span&amp;gt; Online &amp;lt;i&amp;gt;~Standby~&amp;lt;/i&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    sidebarTime += &amp;quot;&amp;lt;/div&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	const sidebar_vanatime = document.getElementById(timeElements.sidebar);&lt;br /&gt;
    if (sidebar_vanatime) sidebar_vanatime.innerHTML = sidebarTime;&lt;br /&gt;
	//for (let i = 0; i &amp;lt; page_vanatime.length; i = i+1) { page_vanatime[i].innerHTML = sidebarTime; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateBoatSchedule()  {&lt;br /&gt;
&lt;br /&gt;
    if (!pageHasElement(timeElements.boats)) return;&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.selbina, schedule.boats.selbina, 3);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.mhaura, schedule.boats.mhaura, 3);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.whitegate, schedule.boats.whitegate, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.nashmau, schedule.boats.nashmau, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.bibiki, schedule.boats.bibiki, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.purgonorgoIsle, schedule.boats.purgonorgoIsle, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.northLanding, schedule.boats.northLanding, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.centralLanding, schedule.boats.centralLanding, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.southLanding, schedule.boats.southLanding, 1);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateAirshipSchedule(){&lt;br /&gt;
    if (!pageHasElement(timeElements.airships)) return;&lt;br /&gt;
&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.jeuno, schedule.airships.jeuno, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.bastok, schedule.airships.bastok, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.sandy, schedule.airships.sandy, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.windy, schedule.airships.windy, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.kazham, schedule.airships.kazham, 1);&lt;br /&gt;
}&lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function _transportScheduleHeader(classname){&lt;br /&gt;
&lt;br /&gt;
    var header = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot; + classname + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Destination&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	//header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Departure Day&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;VanaTime&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Earth Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Departs&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
	return header;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _transportScheduleBody(schedule, entriesPerSchedule, numberOfEntries){&lt;br /&gt;
    function _helper(sched, n){&lt;br /&gt;
        var helperoffset = (sched[1] + sched[3] + sched[4]) * 60  * 1000 / 25;  // VANA MILLISECONDS&lt;br /&gt;
        //console.log(&amp;quot;helperoffset: &amp;quot;, helperoffset, vanatime.now_inMS());&lt;br /&gt;
        while (helperoffset &amp;lt;  vanatime.now_inMS() ) {&lt;br /&gt;
            helperoffset += (sched[2] * n  * 60 * 1000 / 25);&lt;br /&gt;
        }&lt;br /&gt;
        return helperoffset; // VANA MILLISECONDS&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var html = &amp;quot;&amp;quot;;&lt;br /&gt;
    var offset = {};&lt;br /&gt;
    var rowhighlight = true;&lt;br /&gt;
&lt;br /&gt;
    for( let n=1; n &amp;lt;= numberOfEntries; n++ ){ &lt;br /&gt;
        html += &#039;&amp;lt;TR class=&amp;quot;vanatime-main-table-row-spacer&amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
        for( let x=0; x &amp;lt; schedule.length; x++ ){ &lt;br /&gt;
            const offsetVariable = x + (schedule.length * (n-1));&lt;br /&gt;
&lt;br /&gt;
            for( let i=1 ; i &amp;lt;= entriesPerSchedule; i++ ){&lt;br /&gt;
                console.log(n,x,i, offsetVariable);&lt;br /&gt;
&lt;br /&gt;
                if ( i &amp;gt; 1 ) offset[offsetVariable] +=  (schedule[x][2] * 60 * 1000 / 25);&lt;br /&gt;
                //else if ( lastOffset ) offset = lastOffset;&lt;br /&gt;
                else offset[offsetVariable] = _helper(schedule[x], n);&lt;br /&gt;
&lt;br /&gt;
                // offset must be greater than the offset before it&lt;br /&gt;
                if ( offsetVariable &amp;gt;= schedule.length &amp;amp;&amp;amp; offset[offsetVariable] &amp;lt;= offset[offsetVariable - schedule.length] )&lt;br /&gt;
                    {&lt;br /&gt;
                        console.log( &amp;quot;fired &amp;quot; + offsetVariable );&lt;br /&gt;
                        offset[offsetVariable] = offset[offsetVariable - schedule.length] + (schedule[x][2] * 60 * 1000 / 25);&lt;br /&gt;
                    }&lt;br /&gt;
&lt;br /&gt;
                var earthdepTime = (vanatime.today_inMS() + (offset[offsetVariable] * 25));&lt;br /&gt;
                var vanadepTime = earthdepTime  / ( 60 * 1000);&lt;br /&gt;
                //var arrTime = depTime - ( sched[2][4] * 60 * 1000);  /// LEAVE THIS in the event someone wants to add ARRIVAL TIMES to future HTML tables&lt;br /&gt;
&lt;br /&gt;
                //html += &#039;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;x= &#039; + x + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringVanaTime(vanadepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringEarthTime(earthdepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.timeUntil(earthdepTime)  +&#039;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
                var rowclass = &amp;quot;&amp;quot;;&lt;br /&gt;
                if ( rowhighlight ) rowclass = `class=&amp;quot;vanatime-main-table-row-highlight&amp;quot;`;&lt;br /&gt;
&lt;br /&gt;
                html += &#039;&amp;lt;TR &#039; + rowclass + &#039;&amp;gt;&amp;lt;TD&amp;gt;&#039; + schedule[x][0] + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringVanaTime(vanadepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringEarthTime(earthdepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.timeUntil(earthdepTime)  +&#039;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
                rowhighlight = !rowhighlight;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return html;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function populateTransportSchedule(classname, schedule, entriesPerSchedule){&lt;br /&gt;
    const shipSched = document.getElementById(classname);&lt;br /&gt;
	if (shipSched) {&lt;br /&gt;
        var numberOfEntries = getSelectedNumberOfEntries(classname);&lt;br /&gt;
        if (numberOfEntries === &#039;undefined&#039; || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
        var _HTMLheader = _transportScheduleHeader(classname);&lt;br /&gt;
        var _HTMLbody = this._transportScheduleBody(schedule, entriesPerSchedule, numberOfEntries);&lt;br /&gt;
        var updatedSched =  _HTMLheader + _HTMLbody + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        const classname_details = classname + &amp;quot;-details&amp;quot;;&lt;br /&gt;
        let t = shipSched.getElementsByClassName(classname_details)[0];&lt;br /&gt;
        var _HTMLdetails = &#039;&#039;;&lt;br /&gt;
        if ( !t ){&lt;br /&gt;
&lt;br /&gt;
            var temp = expandTableSelection(classname); &lt;br /&gt;
            if ( !temp ) temp = &amp;quot;&amp;quot;;&lt;br /&gt;
            const div = &#039;&amp;lt;div class=&amp;quot;vanatime-main-table&amp;quot;&amp;gt;&#039; + temp ;&lt;br /&gt;
            _HTMLdetails = `&amp;lt;span class=&amp;quot;${classname_details}&amp;quot;&amp;gt;${updatedSched}&amp;lt;/span&amp;gt;`;&lt;br /&gt;
            shipSched.innerHTML =  div + _HTMLdetails + &#039;&amp;lt;/div&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
        }&lt;br /&gt;
        else {&lt;br /&gt;
            t.innerHTML = updatedSched;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateGuilds(){&lt;br /&gt;
    if (!pageHasElement(timeElements.guilds)) return;&lt;br /&gt;
&lt;br /&gt;
    /* ALCHEMY */&lt;br /&gt;
	const page_alchemy_hours = document.getElementById(timeElements.guilds.alchemy);&lt;br /&gt;
    if ( page_alchemy_hours ) { page_alchemy_hours.innerHTML = _guildSchedule(schedule.guilds.alchemy);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_status = document.getElementById(timeElements.guilds.alchemy_status);&lt;br /&gt;
    if ( page_alchemy_status ) { page_alchemy_status.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_holiday = document.getElementById(timeElements.guilds.alchemy_holiday);&lt;br /&gt;
    if ( page_alchemy_holiday ) { page_alchemy_holiday.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_timer = document.getElementById(timeElements.guilds.alchemy_timer);&lt;br /&gt;
    if ( page_alchemy_timer ) { page_alchemy_timer.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* BONECRAFT */&lt;br /&gt;
	const page_bonecraft_hours = document.getElementById(timeElements.guilds.bonecrafting);&lt;br /&gt;
	if ( page_bonecraft_hours ) { page_bonecraft_hours.innerHTML = _guildSchedule(schedule.guilds.bonecrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_status = document.getElementById(timeElements.guilds.bonecraft_status);&lt;br /&gt;
    if ( page_bonecraft_status ) { page_bonecraft_status.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_holiday = document.getElementById(timeElements.guilds.bonecraft_holiday);&lt;br /&gt;
    if ( page_bonecraft_holiday ) { page_bonecraft_holiday.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_timer = document.getElementById(timeElements.guilds.bonecraft_timer);&lt;br /&gt;
    if ( page_bonecraft_timer ) { page_bonecraft_timer.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* CLOTHCRAFT */&lt;br /&gt;
	const page_clothcraft_hours = document.getElementById(timeElements.guilds.clothcrafting);&lt;br /&gt;
	if ( page_clothcraft_hours ) { page_clothcraft_hours.innerHTML = _guildSchedule(schedule.guilds.clothcrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_status = document.getElementById(timeElements.guilds.clothcraft_status);&lt;br /&gt;
    if ( page_clothcraft_status ) { page_clothcraft_status.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_holiday = document.getElementById(timeElements.guilds.clothcraft_holiday);&lt;br /&gt;
    if ( page_clothcraft_holiday ) { page_clothcraft_holiday.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_timer = document.getElementById(timeElements.guilds.clothcraft_timer);&lt;br /&gt;
    if ( page_clothcraft_timer ) { page_clothcraft_timer.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* COOKING */&lt;br /&gt;
	const page_cooking_hours = document.getElementById(timeElements.guilds.cooking);&lt;br /&gt;
	if ( page_cooking_hours ) { page_cooking_hours.innerHTML = _guildSchedule(schedule.guilds.cooking);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_status = document.getElementById(timeElements.guilds.cooking_status);&lt;br /&gt;
    if ( page_cooking_status ) { page_cooking_status.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_holiday = document.getElementById(timeElements.guilds.cooking_holiday);&lt;br /&gt;
    if ( page_cooking_holiday ) { page_cooking_holiday.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_timer = document.getElementById(timeElements.guilds.cooking_timer);&lt;br /&gt;
    if ( page_cooking_timer ) { page_cooking_timer.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* FISHING */&lt;br /&gt;
	const page_fishing_hours = document.getElementById(timeElements.guilds.fishing);&lt;br /&gt;
	if ( page_fishing_hours ) { page_fishing_hours.innerHTML = _guildSchedule(schedule.guilds.fishing);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_status = document.getElementById(timeElements.guilds.fishing_status);&lt;br /&gt;
    if ( page_fishing_status ) { page_fishing_status.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_holiday = document.getElementById(timeElements.guilds.fishing_holiday);&lt;br /&gt;
    if ( page_fishing_holiday ) { page_fishing_holiday.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_timer = document.getElementById(timeElements.guilds.fishing_timer);&lt;br /&gt;
    if ( page_fishing_timer ) { page_fishing_timer.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* GOLDSMITHING */&lt;br /&gt;
	const page_goldsmithing_hours = document.getElementById(timeElements.guilds.goldsmithing);&lt;br /&gt;
	if ( page_goldsmithing_hours ) {  page_goldsmithing_hours.innerHTML = _guildSchedule(schedule.guilds.goldsmithing);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_status = document.getElementById(timeElements.guilds.goldsmithing_status);&lt;br /&gt;
    if ( page_goldsmithing_status ) { page_goldsmithing_status.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_holiday = document.getElementById(timeElements.guilds.goldsmithing_holiday);&lt;br /&gt;
    if ( page_goldsmithing_holiday ) { page_goldsmithing_holiday.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_timer = document.getElementById(timeElements.guilds.goldsmithing_timer);&lt;br /&gt;
    if ( page_goldsmithing_timer ) { page_goldsmithing_timer.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* LEATHERCRAFT */&lt;br /&gt;
	const page_leathercraft_hours = document.getElementById(timeElements.guilds.leathercrafting);&lt;br /&gt;
	if ( page_leathercraft_hours ) { page_leathercraft_hours.innerHTML = _guildSchedule(schedule.guilds.leathercrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_status = document.getElementById(timeElements.guilds.leathercraft_status);&lt;br /&gt;
    if ( page_leathercraft_status ) { page_leathercraft_status.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_holiday = document.getElementById(timeElements.guilds.leathercraft_holiday);&lt;br /&gt;
    if ( page_leathercraft_holiday ) { page_leathercraft_holiday.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_timer = document.getElementById(timeElements.guilds.leathercraft_timer);&lt;br /&gt;
    if ( page_leathercraft_timer ) { page_leathercraft_timer.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* SMITHING */&lt;br /&gt;
	const page_smithing_hours = document.getElementById(timeElements.guilds.smithing);&lt;br /&gt;
	if ( page_smithing_hours ) { page_smithing_hours.innerHTML = _guildSchedule(schedule.guilds.smithing); } &lt;br /&gt;
&lt;br /&gt;
    const page_smithing_status = document.getElementById(timeElements.guilds.smithing_status);&lt;br /&gt;
    if ( page_smithing_status ) { page_smithing_status.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_smithing_holiday = document.getElementById(timeElements.guilds.smithing_holiday);&lt;br /&gt;
    if ( page_smithing_holiday ) { page_smithing_holiday.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_smithing_timer = document.getElementById(timeElements.guilds.smithing_timer);&lt;br /&gt;
    if ( page_smithing_timer ) { page_smithing_timer.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* WOODWORKING */&lt;br /&gt;
	const page_woodworking_hours = document.getElementById(timeElements.guilds.woodworking);&lt;br /&gt;
	if ( page_woodworking_hours ) { page_woodworking_hours.innerHTML = _guildSchedule(schedule.guilds.woodworking); } &lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_status = document.getElementById(timeElements.guilds.woodworking_status);&lt;br /&gt;
    if ( page_woodworking_status ) { page_woodworking_status.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_holiday = document.getElementById(timeElements.guilds.woodworking_holiday);&lt;br /&gt;
    if ( page_woodworking_holiday ) { page_woodworking_holiday.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_timer = document.getElementById(timeElements.guilds.woodworking_timer);&lt;br /&gt;
    if ( page_woodworking_timer ) { page_woodworking_timer.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_timer);  }&lt;br /&gt;
&lt;br /&gt;
    const page_allguilds_hours = document.getElementById(timeElements.guilds.all);&lt;br /&gt;
	if ( page_allguilds_hours ) {  &lt;br /&gt;
        &lt;br /&gt;
        var guildOut = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot;+ timeElements.guilds.all + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039; border=&#039;1px solid black&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;center&#039; WIDTH=100 &amp;gt;Guild&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TH ALIGN=&#039;center&#039; WIDTH=175 &amp;gt;Status&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Alchemy&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.alchemy)         + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Blacksmithing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +   _guildSchedule(schedule.guilds.smithing) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; bonecrafting&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +     _guildSchedule(schedule.guilds.bonecrafting) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Goldsmithing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +    _guildSchedule(schedule.guilds.goldsmithing) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Clothcrafting&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +   _guildSchedule(schedule.guilds.clothcrafting) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Woodworking&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +     _guildSchedule(schedule.guilds.woodworking) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Leatherworking &amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; + _guildSchedule(schedule.guilds.leathercrafting) + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Fishing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.fishing) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Cooking&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.cooking) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
        page_allguilds_hours.innerHTML = guildOut; &lt;br /&gt;
    } &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _guildStatusCheck(guild, statusID) {&lt;br /&gt;
&lt;br /&gt;
    return outputText = [outputTxt1, outputTxt2];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _guildSchedule(guild, statusID) {&lt;br /&gt;
    &lt;br /&gt;
    if (guild === &#039;undefined&#039;) return &amp;quot;_guildSchedule: error&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    var now = vanatime.now_inMS();&lt;br /&gt;
    var guildOpens = guild[0] * 60 * 1000 / 25;&lt;br /&gt;
    var guildCloses = guild[1] * 60 * 1000 / 25;&lt;br /&gt;
&lt;br /&gt;
    // Guild open/close check&lt;br /&gt;
    var nextOpenTime = 0;&lt;br /&gt;
    var outputTxt1 = &amp;quot;&amp;quot;, outputTxt2 = &amp;quot;&amp;quot;;&lt;br /&gt;
    if (guildOpens &amp;gt;= now) {&lt;br /&gt;
        nextOpenTime = (((guildOpens - now) * 25) + vanatime.now_inEarthMS());&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Open tomorrow.&amp;quot;;&lt;br /&gt;
    } else if ((guildOpens &amp;lt; now) &amp;amp;&amp;amp; (guildCloses &amp;gt; now)) {&lt;br /&gt;
        nextOpenTime = (((guildCloses - now) * 25) + vanatime.now_inEarthMS());&lt;br /&gt;
        outputTxt1 = &amp;quot;Closes in: &amp;quot;;&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Open for business.&amp;quot;;&lt;br /&gt;
    } else if (guildCloses &amp;lt;= now)  {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25) - now  + guildOpens) * 25 + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;; &lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Open tomorrow.&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;status&#039;)) {&lt;br /&gt;
        // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
        // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
        return outputTxt2;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
&lt;br /&gt;
    // Holiday check &lt;br /&gt;
    if ((guild[2] == vanatime.weekDay()) &amp;amp;&amp;amp; (guildCloses &amp;gt; now)) {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25)  - now + guildOpens) * 25 + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed for Guild Holiday.&amp;quot;;&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp;statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
            // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
            // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
            return outputTxt2;&lt;br /&gt;
        }&lt;br /&gt;
    } else if (((vanatime.weekDay() + 1) == guild[2]) &amp;amp;&amp;amp; (guildCloses &amp;lt;= now))  {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25)  - now + guildOpens) * 25 + (24 * 60 * 60 * 1000 / 25) + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Guild Holiday tomorrow.&amp;quot;;&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
            // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
            // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
            return outputTxt2;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp;statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
        // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
        // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
        return `Guild is not on holiday until ${vanatime.dayLabel(guild[2])}.`;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /****DEBUGGING*****/&lt;br /&gt;
    // if (guild == schedule.guilds.fishing) {&lt;br /&gt;
    //     console.log(guild[2], nextOpenTime, now, vanatime.timeUntil(nextOpenTime) );&lt;br /&gt;
    // }&lt;br /&gt;
    /****DEBUGGING*****/&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;timer&#039;)) {&lt;br /&gt;
        return outputTxt1 + vanatime.timeUntil(nextOpenTime);&lt;br /&gt;
    }&lt;br /&gt;
    return outputTxt1 + vanatime.timeUntil(nextOpenTime) + &amp;quot;. &amp;quot; + outputTxt2;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateConquest()  {&lt;br /&gt;
    if (!pageHasElement(timeElements.conquest)) return;&lt;br /&gt;
    &lt;br /&gt;
    function stringNextConquest(remaining){&lt;br /&gt;
        //if (nextConquest === undefined) { return &amp;quot;stringConquestTimer: timer undefined&amp;quot;; }&lt;br /&gt;
        const now = new Date();&lt;br /&gt;
        remaining = now.getTime() + remaining;&lt;br /&gt;
&lt;br /&gt;
        var nextConquest = new Date(remaining);&lt;br /&gt;
        var tempHour = nextConquest.getHours();&lt;br /&gt;
        var tempMin  = nextConquest.getMinutes();&lt;br /&gt;
        var tempSec  = nextConquest.getSeconds();&lt;br /&gt;
&lt;br /&gt;
        if (tempHour &amp;lt; 10)  tempHour = &amp;quot;0&amp;quot; + tempHour; &lt;br /&gt;
        if (tempMin &amp;lt; 10)   tempMin  = &amp;quot;0&amp;quot; + tempMin;  &lt;br /&gt;
        if (tempSec &amp;lt; 10)   tempSec  = &amp;quot;0&amp;quot; + tempSec;  &lt;br /&gt;
&lt;br /&gt;
        var strNextConquest = nextConquest.toDateString() + &amp;quot; &amp;quot; + tempHour + &amp;quot;:&amp;quot; + tempMin + &amp;quot;:&amp;quot; + tempSec;&lt;br /&gt;
&lt;br /&gt;
            // var remaining = (temp.getTime() - now.getTime()) / (24 * 60 * 60 * 1000);&lt;br /&gt;
            // var hours = (remaining - Math.floor(remaining)) * 24;&lt;br /&gt;
            // var mins = (hours - Math.floor(hours)) * 60;&lt;br /&gt;
            // var secs = Math.floor((mins - Math.floor(mins)) * 60);&lt;br /&gt;
&lt;br /&gt;
            // remaining = Math.floor(remaining);&lt;br /&gt;
            // hours = Math.floor(hours);&lt;br /&gt;
            // mins = Math.floor(mins);&lt;br /&gt;
&lt;br /&gt;
            // if (hours &amp;lt; 10)  hours = &amp;quot;0&amp;quot; + hours; &lt;br /&gt;
            // if (mins &amp;lt; 10)   mins  = &amp;quot;0&amp;quot; + mins;  &lt;br /&gt;
            // if (secs &amp;lt; 10)   secs  = &amp;quot;0&amp;quot; + secs;  &lt;br /&gt;
&lt;br /&gt;
            // // tempDays &amp;lt; 10 ? [&amp;quot;0&amp;quot;, tempDays].join(&#039;:&#039;) : tempDays;&lt;br /&gt;
            // // tempDays &amp;gt; 0 ? [tempDays, strTimer].join(&#039;:&#039;) : null;&lt;br /&gt;
&lt;br /&gt;
            // strDiff = hours + &amp;quot;:&amp;quot; + mins + &amp;quot;:&amp;quot; + secs;&lt;br /&gt;
&lt;br /&gt;
        //return strNextConquest + &amp;quot;(&amp;quot; + strDiff + &amp;quot;)&amp;quot;;&lt;br /&gt;
        return strNextConquest + &amp;quot;(&amp;quot; + vanatime.timeUntil(nextConquest) + &amp;quot;)&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    const now = new Date();&lt;br /&gt;
    var remaining = vanatime.conquestRemainingTime();&lt;br /&gt;
    remainingVanaDaysOnConquest = vanatime.conquestRemainingVanaDays();&lt;br /&gt;
    &lt;br /&gt;
    conq = remainingVanaDaysOnConquest + &#039; Vana´diel Days &amp;lt;BR&amp;gt;&#039;;&lt;br /&gt;
    conq += stringNextConquest(remaining); //+ &#039; (&#039; + timer.getHours() + &amp;quot;:&amp;quot; + timer.getMinutes() + &amp;quot;:&amp;quot; + timer.getSeconds() + &#039;)&#039;;&lt;br /&gt;
&lt;br /&gt;
    const conquest_time = document.getElementById(timeElements.conquest);&lt;br /&gt;
    if (conquest_time) conquest_time.innerHTML = conq; &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function updateMoonPhaseSchedule(){&lt;br /&gt;
    if (!pageHasElement(timeElements.moonSchedule)) return;&lt;br /&gt;
&lt;br /&gt;
    populateMoonPhaseSchedule(timeElements.moonSchedule, 7);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _moonPhaseScheduleHeader(classname){&lt;br /&gt;
    var header = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot; + classname + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; WIDTH=&#039;500&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TR &amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Moon Phase&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Start Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;End Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    //header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Phase Ends in...&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    header += &amp;quot;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
	return header;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _moonPhaseScheduleBody(numberOfEntries){&lt;br /&gt;
    var html = &amp;quot;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    if ( numberOfEntries === undefined || numberOfEntries === null ) numberOfEntries = 7;&lt;br /&gt;
&lt;br /&gt;
    // DEBUGGING&lt;br /&gt;
    numberOfEntries = 7;&lt;br /&gt;
&lt;br /&gt;
        var vTempTime = vanatime.today_inMS() / (60 * 1000); // VANA TIME IN TOTAL MINUTES&lt;br /&gt;
        var thisMoonPhase = vanatime.moonLatentPhase(vTempTime); &lt;br /&gt;
&lt;br /&gt;
        var lunarOffset = 0, &lt;br /&gt;
            _time;&lt;br /&gt;
        for(var x = 0 ; x &amp;lt; numberOfEntries; x++ ){&lt;br /&gt;
&lt;br /&gt;
            if ( x &amp;gt; 0 ){&lt;br /&gt;
                lunarOffset += 7;&lt;br /&gt;
                if ( thisMoonPhase == 1 || thisMoonPhase == 3 || thisMoonPhase == 5 || thisMoonPhase == 7) {&lt;br /&gt;
                    _time = vTempTime + (60 * 24 * lunarOffset);&lt;br /&gt;
                    if ( vanatime.moonLatentPhase(_time) == thisMoonPhase) lunarOffset += 7;&lt;br /&gt;
                }&lt;br /&gt;
                //console.log(thisMoonPhase);&lt;br /&gt;
&lt;br /&gt;
                thisMoonPhase++;&lt;br /&gt;
                if (thisMoonPhase &amp;gt; 7) thisMoonPhase = 0;&lt;br /&gt;
                //console.log(thisMoonPhase);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            var phaseStartTime;&lt;br /&gt;
            for( var i = 1 ; i &amp;gt;= -13 ; i-- ) {&lt;br /&gt;
                _time = vTempTime + (60 * 24 * lunarOffset) + (60 * 24 * (i - 1)); // VANA MINUTES&lt;br /&gt;
            //console.log(&amp;quot;s&amp;quot;, thisMoonPhase, lunarOffset, vanatime.moonLatentPhase(_time));&lt;br /&gt;
                &lt;br /&gt;
                if ( vanatime.moonLatentPhase(_time) != thisMoonPhase ) {&lt;br /&gt;
                    //console.log( &amp;quot;start&amp;quot;, i, vanatime.moonLatentPhase(_time), thisMoonPhase );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
                else phaseStartTime = _time * 60; // VANA SECONDS&lt;br /&gt;
            }&lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
            var phaseEndTime; &lt;br /&gt;
            for( var i = -1 ; i &amp;lt;= 14 ; i++ ) {&lt;br /&gt;
                _time = vTempTime + (60 * 24 * lunarOffset) + (60 * 24 * (i + 1));// VANA MINUTES&lt;br /&gt;
            //console.log(&amp;quot;e&amp;quot;, thisMoonPhase,lunarOffset,vanatime.moonLatentPhase(_time));&lt;br /&gt;
            &lt;br /&gt;
                if ( vanatime.moonLatentPhase(_time) != thisMoonPhase ) {&lt;br /&gt;
                    //console.log( &amp;quot;end&amp;quot;, i, vanatime.moonLatentPhase(_time), thisMoonPhase );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
                else phaseEndTime = (_time + (60 * 24)) * 60; // VANA SECONDS&lt;br /&gt;
                // for loop breaks when _time is at 00:00 for the day the moon phase changes... &lt;br /&gt;
                // we add another day to this (60 + 24) to get the start of the next day for the table&lt;br /&gt;
            } &lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
            const startDate = new Date(Math.floor(phaseStartTime / (25 / 1000)) - vanatime.getDifference() );&lt;br /&gt;
            const endDate = new Date(Math.floor(phaseEndTime / (25 / 1000)) - vanatime.getDifference() );&lt;br /&gt;
&lt;br /&gt;
            var strDetails = vanatime.moonPhaseIcon(thisMoonPhase) + &amp;quot; &amp;quot; + vanatime.moonPhaseName(thisMoonPhase) + &amp;quot; &amp;quot;  + vanatime.moonPhasePercentages(thisMoonPhase);            &lt;br /&gt;
&lt;br /&gt;
            function dateString(date){&lt;br /&gt;
                var sec = date.getSeconds(), hrs = date.getHours(), mins = date.getMinutes(); &lt;br /&gt;
                sec &amp;lt; 10 ? sec = &amp;quot;0&amp;quot; + sec : sec;&lt;br /&gt;
                hrs &amp;lt; 10 ? hrs = &amp;quot;0&amp;quot; + hrs : hrs;&lt;br /&gt;
                mins &amp;lt; 10 ? mins = &amp;quot;0&amp;quot; + mins : mins;&lt;br /&gt;
                return vanatime.weekdayLabel(date.getDay()) + &amp;quot;, &amp;quot; + date.getDate() + &amp;quot; &amp;quot; + vanatime.monthLabel(date.getMonth()) + &amp;quot; &amp;quot; + hrs + &amp;quot;:&amp;quot; + mins + &amp;quot;:&amp;quot; + sec;&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            html += &#039;&amp;lt;TR &amp;gt;&amp;lt;TD&amp;gt;&#039; + strDetails + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + dateString(startDate) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + dateString(endDate)  + &#039;&amp;lt;/TD&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
            // const now = new Date();&lt;br /&gt;
            // var strTimer = vanatime.timer(endDate, now);&lt;br /&gt;
            // html += &#039;&amp;lt;TD&amp;gt;&#039; + strTimer + &#039;&amp;lt;/TD&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
            html += &#039;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
        }&lt;br /&gt;
    return html;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function populateMoonPhaseSchedule(classname, numberOfEntries){&lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    const moonSchedule = document.getElementById(classname);&lt;br /&gt;
    if (moonSchedule) {&lt;br /&gt;
        numberOfEntries = Number(moonSchedule.getAttribute(&#039;data-entries&#039;));&lt;br /&gt;
        if (numberOfEntries === undefined || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 7;&lt;br /&gt;
        else numberOfEntries = numberOfEntries * 7;&lt;br /&gt;
        var _HTMLheader = this._moonPhaseScheduleHeader(classname);&lt;br /&gt;
        var _HTMLbody = this._moonPhaseScheduleBody(numberOfEntries);&lt;br /&gt;
        moonSchedule.innerHTML = _HTMLheader + _HTMLbody + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function updateRSE()  {&lt;br /&gt;
    const rseclass = timeElements.rseSchedule;&lt;br /&gt;
    const rseSched = document.getElementById(rseclass);&lt;br /&gt;
	if (!rseSched) return;&lt;br /&gt;
    &lt;br /&gt;
        function formatDate(varTime, showDay) {&lt;br /&gt;
&lt;br /&gt;
            var varDate = new Date(varTime);&lt;br /&gt;
            var yyyy = varDate.getYear();&lt;br /&gt;
        &lt;br /&gt;
            var mm = varDate.getMonth() + 1;&lt;br /&gt;
            if (mm &amp;lt; 10) { mm = &amp;quot;0&amp;quot; + mm; }&lt;br /&gt;
        &lt;br /&gt;
            var dd = varDate.getDate();&lt;br /&gt;
            if (dd &amp;lt; 10) { dd = &amp;quot;0&amp;quot; + dd; }&lt;br /&gt;
        &lt;br /&gt;
            var day = varDate.getDay();&lt;br /&gt;
        &lt;br /&gt;
            var hh = varDate.getHours();&lt;br /&gt;
            &lt;br /&gt;
            if (hh &amp;lt; 10) { hh = &amp;quot;0&amp;quot; + hh; }&lt;br /&gt;
        &lt;br /&gt;
            var min = varDate.getMinutes();&lt;br /&gt;
            if (min &amp;lt; 10) { min = &amp;quot;0&amp;quot; + min; }&lt;br /&gt;
        &lt;br /&gt;
            var ss = varDate.getSeconds();&lt;br /&gt;
            if (ss &amp;lt; 10) { ss = &amp;quot;0&amp;quot; + ss; }&lt;br /&gt;
            if (showDay == 1)  {&lt;br /&gt;
            dateString = vanatime.weekdayLabel(day) + &amp;quot;, &amp;quot; + vanatime.monthLabel(mm-1) + &#039; &#039; + dd + &#039;, &#039; + yyyy + &amp;quot; &amp;quot; + hh + &amp;quot;:&amp;quot; + min + &amp;quot;:&amp;quot; + ss;&lt;br /&gt;
            } else if (showDay == 2)  {&lt;br /&gt;
            dateString = vanatime.monthLabel(mm-1) + &amp;quot; &amp;quot; + dd + &amp;quot;,  &amp;quot; + hh + &amp;quot;:&amp;quot; + min + &amp;quot;:&amp;quot; + ss;&lt;br /&gt;
            }&lt;br /&gt;
            return dateString;&lt;br /&gt;
        }&lt;br /&gt;
     &lt;br /&gt;
    var timenow = new Date();&lt;br /&gt;
    var localtime = timenow.getTime();&lt;br /&gt;
&lt;br /&gt;
    // ???&lt;br /&gt;
    var repeatCal = 8;&lt;br /&gt;
    &lt;br /&gt;
    var rowclass;&lt;br /&gt;
    var rowhighlight = true;&lt;br /&gt;
&lt;br /&gt;
    RSECal = &amp;quot;&amp;lt;TABLE CLASS=\&#039;&amp;quot; + rseclass + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;\&#039; WIDTH=&#039;500&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Date &amp;amp; Time&amp;lt;/TH&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Race&amp;lt;/TH&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Location&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;&lt;br /&gt;
    &lt;br /&gt;
    var numberOfEntries = getSelectedNumberOfEntries(rseclass);&lt;br /&gt;
    if (numberOfEntries === &#039;undefined&#039; || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
    numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
    for( let n=1; n &amp;lt;= numberOfEntries; n++ ){ &lt;br /&gt;
        &lt;br /&gt;
       for ( i = 0; i &amp;lt; repeatCal; i++) {&lt;br /&gt;
          elapsedWeeks = Math.floor( (localtime - vanatime.rseDate) / (8 * (24 * 60 * 60 * 1000 / 25)) ) + i;&lt;br /&gt;
          RSEstart = vanatime.rseDate + (elapsedWeeks * 8 * (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
          &lt;br /&gt;
          if ( rowhighlight ) rowclass = `class=&amp;quot;vanatime-main-table-row-highlight&amp;quot;`;&lt;br /&gt;
          else rowclass = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
          RSECal = RSECal + &amp;quot;&amp;lt;TR &amp;quot; + rowclass + &amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEstart,2) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.rseRace(elapsedWeeks % 8) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039;;&lt;br /&gt;
          //RSECal = RSECal + &amp;quot;&amp;lt;A HREF=#  onmousedown=&#039;javascript:getRSEDetails(&amp;quot; + (elapsedWeeks % 3) + &amp;quot;)&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
          RSECal = RSECal + vanatime.rseLocation(elapsedWeeks % 3);&lt;br /&gt;
          RSECal = RSECal + &#039;&amp;lt;/A&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
          rowhighlight = !rowhighlight;&lt;br /&gt;
       }&lt;br /&gt;
    //   if (repeatCal &amp;lt; 1) { RSECal = &amp;quot;&amp;quot;; } &lt;br /&gt;
    //   else { RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;; }&lt;br /&gt;
    RSECal += &#039;&amp;lt;TR class=&amp;quot;vanatime-main-table-row-spacer&amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;;&lt;br /&gt;
    // else {&lt;br /&gt;
    //    RSECal = &amp;quot;&amp;lt;TABLE CLASS=&#039;blank&#039; CELLPADDING=&#039;0&#039; CELLSPACING=&#039;0&#039;&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH WIDTH=&#039;120&#039; ALIGN=&#039;LEFT&#039;&amp;gt;Start&amp;lt;/TH&amp;gt;&amp;lt;TH WIDTH=&#039;120&#039; ALIGN=&#039;LEFT&#039;&amp;gt;End&amp;lt;/TH&amp;gt;&amp;lt;TH WIDTH=&#039;60&#039; ALIGN=&#039;LEFT&#039;&amp;gt;Location&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;&lt;br /&gt;
    //    offsetTime = race * 8 * msGameDay;&lt;br /&gt;
 &lt;br /&gt;
    //    for ( i = 0; i &amp;lt; repeatCal; i++) {&lt;br /&gt;
    //       elapsedWeeks = Math.floor( (localtime - vanatime.rseDate) / (64 * msGameDay) ) + i;&lt;br /&gt;
          &lt;br /&gt;
    //       elapsedLocationWeeks = Math.floor( (localtime - vanatime.rseDate) / (8 * msGameDay) ) + (8 * i);&lt;br /&gt;
    //       raceOffset = race - (elapsedLocationWeeks % 8);&lt;br /&gt;
    //       elapsedLocationWeeks = elapsedLocationWeeks + raceOffset;&lt;br /&gt;
 &lt;br /&gt;
    //       RSEstart = vanatime.rseDate + (elapsedWeeks * 64 * msGameDay) + offsetTime ;&lt;br /&gt;
    //       RSEend = RSEstart + (8 * msGameDay);&lt;br /&gt;
    //       RSECal = RSECal + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEstart,2) + &amp;quot;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEend,2) + &amp;quot;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;quot;;&lt;br /&gt;
    //       //RSECal = RSECal + &amp;quot;&amp;lt;A HREF=#  onmousedown=&#039;javascript:getRSEDetails(&amp;quot; + (elapsedLocationWeeks % 3) + &amp;quot;)&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
    //       RSECal = RSECal + RSEloc[(elapsedLocationWeeks) % 3] &lt;br /&gt;
    //       RSECal = RSECal + &amp;quot;&amp;lt;/A&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
    //    }&lt;br /&gt;
    //   if (repeatCal &amp;lt; 1) { RSECal = &amp;quot;&amp;quot;; } else { RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;; }&lt;br /&gt;
 &lt;br /&gt;
    // }&lt;br /&gt;
&lt;br /&gt;
    const classname_details = rseclass + &amp;quot;-details&amp;quot;;&lt;br /&gt;
    let t = document.getElementsByClassName(classname_details)[0];&lt;br /&gt;
    var _HTMLdetails = &#039;&#039;;&lt;br /&gt;
    //console.log(t);&lt;br /&gt;
    if ( t === &#039;undefined&#039; || t === null || !t ){&lt;br /&gt;
        &lt;br /&gt;
        var temp = expandTableSelection(rseclass); &lt;br /&gt;
        if ( !temp ) temp = &amp;quot;&amp;quot;;&lt;br /&gt;
        const div = &#039;&amp;lt;div class=&amp;quot;vanatime-main-table&amp;quot;&amp;gt;&#039; + temp ;&lt;br /&gt;
        _HTMLdetails = `&amp;lt;span class=&amp;quot;${classname_details}&amp;quot;&amp;gt;${RSECal}&amp;lt;/span&amp;gt;`;&lt;br /&gt;
        rseSched.innerHTML =  div + _HTMLdetails + &#039;&amp;lt;/div&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    else {&lt;br /&gt;
        console.log(t);&lt;br /&gt;
        t.innerHTML = RSECal;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    //document.getElementById(rseclass).innerHTML = RSECal;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
function expandTableSelection(classname){&lt;br /&gt;
&lt;br /&gt;
    const classnameheader = classname + &amp;quot;-header&amp;quot;;&lt;br /&gt;
    const classnameshowSelect = classname + &amp;quot;-showSelect&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    if ( classname == timeElements.rseSchedule ) {&lt;br /&gt;
        return `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;All &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;M. Hume&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;F. Hume&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;M. Elvaan&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;4&amp;quot;&amp;gt;F. Elvaan&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;5&amp;quot;&amp;gt;M. TaruTaru&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;6&amp;quot;&amp;gt;F. TaruTaru&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;7&amp;quot;&amp;gt;Mithra&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;8&amp;quot;&amp;gt;Galka&amp;lt;/option&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;1 &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;3&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;5&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;10&amp;lt;/option&amp;gt;&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function expandRaceTable(classname){&lt;br /&gt;
    const classnameheader = classname + &amp;quot;-header&amp;quot;;&lt;br /&gt;
    const classnameshowSelect = classname + &amp;quot;-showSelect&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    const temp = `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;1 &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;3&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;5&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;10&amp;lt;/option&amp;gt;&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
    &lt;br /&gt;
    // return popupButton;&lt;br /&gt;
    return temp;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function getSelectedNumberOfEntries(classname){&lt;br /&gt;
    // Number of entries comes from selection dropdown&lt;br /&gt;
    var e = document.getElementById(classname + &amp;quot;-showSelect&amp;quot;);&lt;br /&gt;
    if ( !e ) return 1;&lt;br /&gt;
    var entries;&lt;br /&gt;
    switch(e.value) {&lt;br /&gt;
        case &amp;quot;1&amp;quot;:&lt;br /&gt;
            entries = 3;&lt;br /&gt;
          break;&lt;br /&gt;
        case &amp;quot;2&amp;quot;:&lt;br /&gt;
            entries = 5;&lt;br /&gt;
          break;&lt;br /&gt;
        case &amp;quot;3&amp;quot;:&lt;br /&gt;
            entries = 10;&lt;br /&gt;
          break;&lt;br /&gt;
        default:&lt;br /&gt;
            entries = 1;&lt;br /&gt;
      } &lt;br /&gt;
    //console.log(classname + &amp;quot;:&amp;quot; + entries);&lt;br /&gt;
    return entries;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function gametick(){&lt;br /&gt;
    &lt;br /&gt;
    updateSidebar();&lt;br /&gt;
    updateAirshipSchedule();&lt;br /&gt;
    updateBoatSchedule();&lt;br /&gt;
    updateGuilds();&lt;br /&gt;
	updateConquest();&lt;br /&gt;
    updateMoonPhaseSchedule();&lt;br /&gt;
    updateRSE();&lt;br /&gt;
&lt;br /&gt;
	setTimeout(&amp;quot;gametick()&amp;quot;, 1000);&lt;br /&gt;
    //console.log(&#039;gametick&#039;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
gametick();&lt;br /&gt;
&lt;br /&gt;
async function fetchWithTimeout(resource, options = {}) {&lt;br /&gt;
    const { timeout = 10000 } = options;&lt;br /&gt;
&lt;br /&gt;
    const controller = new AbortController();&lt;br /&gt;
    const id = setTimeout(() =&amp;gt; controller.abort(), timeout);&lt;br /&gt;
&lt;br /&gt;
    const response = await fetch(resource, {&lt;br /&gt;
      ...options,&lt;br /&gt;
      signal: controller.signal&lt;br /&gt;
    });&lt;br /&gt;
    clearTimeout(id);&lt;br /&gt;
&lt;br /&gt;
    return response;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
async function populationFetch(){&lt;br /&gt;
&lt;br /&gt;
    try {&lt;br /&gt;
        const response = await fetchWithTimeout(&#039;https://api.horizonxi.com/api/v1/misc/exp-sync-status&#039;, {});&lt;br /&gt;
        const fetchedPopulation = await response.json();&lt;br /&gt;
        //if ( typeof(fetchedPopulation) == &#039;number&#039; ) currentPopulation = fetchedPopulation;&lt;br /&gt;
        //console.log(fetchedPopulation);&lt;br /&gt;
        //return games;&lt;br /&gt;
        //console.log(&#039;populationFetchTick&#039;, fetchedPopulation);&lt;br /&gt;
        //populationFetch();&lt;br /&gt;
        currentPopulation = fetchedPopulation;&lt;br /&gt;
        setTimeout(&amp;quot;startPopulationFetch()&amp;quot;, 300000);&lt;br /&gt;
      } catch (error) {&lt;br /&gt;
        //fetched = 0;&lt;br /&gt;
        console.log(error.name === &#039;AbortError&#039;);&lt;br /&gt;
        startPopulationFetch();&lt;br /&gt;
      }&lt;br /&gt;
      //console.log(&#039;currentPopulation = &#039;, currentPopulation);&lt;br /&gt;
&lt;br /&gt;
      //return fetched;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function startPopulationFetch(){&lt;br /&gt;
    //console.log(&#039;startPopulationFetch&#039;);&lt;br /&gt;
    populationFetch();&lt;br /&gt;
    // if ( currentPopulation == 0) startPopulationFetch();&lt;br /&gt;
    // else setTimeout(&amp;quot;startPopulationFetch()&amp;quot;, 7000);&lt;br /&gt;
}&lt;br /&gt;
startPopulationFetch();&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=MediaWiki:VanaTime.js&amp;diff=58733</id>
		<title>MediaWiki:VanaTime.js</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=MediaWiki:VanaTime.js&amp;diff=58733"/>
		<updated>2024-07-15T19:38:41Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/*********************************************************************&lt;br /&gt;
Javascript below contributes to Vana&#039;diel Time displays throughout&lt;br /&gt;
the HorizonXI Wiki&lt;br /&gt;
Credits: ********&lt;br /&gt;
https://www.pyogenes.com/ffxi/timer/v2.html &lt;br /&gt;
https://www.mithrapride.org/vana_time/index.html&lt;br /&gt;
https://www.rubydoc.info/gems/vanadiel-time/Vanadiel/Time&lt;br /&gt;
**********************************************************************/&lt;br /&gt;
&lt;br /&gt;
class timeElements {&lt;br /&gt;
// List of all class names for each element in this model, for styling &lt;br /&gt;
&lt;br /&gt;
	static sidebar = &amp;quot;n-vanatime&amp;quot;;&lt;br /&gt;
    static conquest = &amp;quot;vanatime-page-conquest-schedule&amp;quot;; // &amp;lt;span ... /&amp;gt;&lt;br /&gt;
    //static moonPhase = &amp;quot;vanatime-page-moon-phase&amp;quot;;   // not implemented&lt;br /&gt;
    static moonSchedule = &amp;quot;vanatime-page-moon-schedule-table&amp;quot;;&lt;br /&gt;
    static rseSchedule = &amp;quot;vanatime-page-rse-schedule-table&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    static airships = {&lt;br /&gt;
        //all : &amp;quot;vanatime-airship-schedule-table&amp;quot;,     // not implemented&lt;br /&gt;
        jeuno : &amp;quot;vanatime-airship-schedule-jeuno-table&amp;quot;,&lt;br /&gt;
        bastok : &amp;quot;vanatime-airship-schedule-bastok-table&amp;quot;,&lt;br /&gt;
        sandy : &amp;quot;vanatime-airship-schedule-sandy-table&amp;quot;,&lt;br /&gt;
        windy : &amp;quot;vanatime-airship-schedule-windy-table&amp;quot;,&lt;br /&gt;
        kazham : &amp;quot;vanatime-airship-schedule-kazham-table&amp;quot;,&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    static boats = {&lt;br /&gt;
        selbina : &amp;quot;vanatime-boat-schedule-selbina-table&amp;quot;,&lt;br /&gt;
        mhaura : &amp;quot;vanatime-boat-schedule-mhaura-table&amp;quot;,&lt;br /&gt;
        bibiki : &amp;quot;vanatime-boat-schedule-bibiki-table&amp;quot;,&lt;br /&gt;
        purgonorgoIsle : &amp;quot;vanatime-boat-schedule-purgonorgoIsle-table&amp;quot;,&lt;br /&gt;
        northLanding : &amp;quot;vanatime-boat-schedule-northLanding-table&amp;quot;,&lt;br /&gt;
        centralLanding : &amp;quot;vanatime-boat-schedule-centralLanding-table&amp;quot;,&lt;br /&gt;
        southLanding : &amp;quot;vanatime-boat-schedule-southLanding-table&amp;quot;&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    static guilds = {&lt;br /&gt;
        alchemy : &amp;quot;vanatime-guild-schedule-alchemy&amp;quot;,&lt;br /&gt;
        alchemy_status:  &amp;quot;vanatime-guild-schedule-alchemy-status&amp;quot;,&lt;br /&gt;
        alchemy_holiday: &amp;quot;vanatime-guild-schedule-alchemy-holiday&amp;quot;,&lt;br /&gt;
        alchemy_timer: &amp;quot;vanatime-guild-schedule-alchemy-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        smithing : &amp;quot;vanatime-guild-schedule-smithing&amp;quot;,&lt;br /&gt;
        smithing_status:  &amp;quot;vanatime-guild-schedule-smithing-status&amp;quot;,&lt;br /&gt;
        smithing_holiday: &amp;quot;vanatime-guild-schedule-smithing-holiday&amp;quot;,&lt;br /&gt;
        smithing_timer: &amp;quot;vanatime-guild-schedule-smithing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        bonecrafting : &amp;quot;vanatime-guild-schedule-bonecrafting&amp;quot;,&lt;br /&gt;
        bonecrafting_status:  &amp;quot;vanatime-guild-schedule-bonecrafting-status&amp;quot;,&lt;br /&gt;
        bonecrafting_holiday: &amp;quot;vanatime-guild-schedule-bonecrafting-holiday&amp;quot;,&lt;br /&gt;
        bonecrafting_timer: &amp;quot;vanatime-guild-schedule-bonecrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        goldsmithing : &amp;quot;vanatime-guild-schedule-goldsmithing&amp;quot;,&lt;br /&gt;
        goldsmithing_status:  &amp;quot;vanatime-guild-schedule-goldsmithing-status&amp;quot;,&lt;br /&gt;
        goldsmithing_holiday: &amp;quot;vanatime-guild-schedule-goldsmithing-holiday&amp;quot;,&lt;br /&gt;
        goldsmithing_timer: &amp;quot;vanatime-guild-schedule-goldsmithing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        clothcrafting : &amp;quot;vanatime-guild-schedule-clothcrafting&amp;quot;,&lt;br /&gt;
        clothcrafting_status:  &amp;quot;vanatime-guild-schedule-clothcrafting-status&amp;quot;,&lt;br /&gt;
        clothcrafting_holiday: &amp;quot;vanatime-guild-schedule-clothcrafting-holiday&amp;quot;,&lt;br /&gt;
        clothcrafting_timer: &amp;quot;vanatime-guild-schedule-clothcrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        woodworking : &amp;quot;vanatime-guild-schedule-woodworking&amp;quot;,&lt;br /&gt;
        woodworking_status:  &amp;quot;vanatime-guild-schedule-woodworking-status&amp;quot;,&lt;br /&gt;
        woodworking_holiday: &amp;quot;vanatime-guild-schedule-woodworking-holiday&amp;quot;,&lt;br /&gt;
        woodworking_timer: &amp;quot;vanatime-guild-schedule-woodworking-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        leathercrafting : &amp;quot;vanatime-guild-schedule-leathercrafting&amp;quot;,&lt;br /&gt;
        leathercrafting_status:  &amp;quot;vanatime-guild-schedule-leathercrafting-status&amp;quot;,&lt;br /&gt;
        leathercrafting_holiday: &amp;quot;vanatime-guild-schedule-leathercrafting-holiday&amp;quot;,&lt;br /&gt;
        leathercrafting_timer: &amp;quot;vanatime-guild-schedule-leathercrafting-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        fishing : &amp;quot;vanatime-guild-schedule-fishing&amp;quot;,&lt;br /&gt;
        fishing_status:  &amp;quot;vanatime-guild-schedule-fishing-status&amp;quot;,&lt;br /&gt;
        fishing_holiday: &amp;quot;vanatime-guild-schedule-fishing-holiday&amp;quot;,&lt;br /&gt;
        fishing_timer: &amp;quot;vanatime-guild-schedule-fishing-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        cooking : &amp;quot;vanatime-guild-schedule-cooking&amp;quot;,&lt;br /&gt;
        cooking_status:  &amp;quot;vanatime-guild-schedule-cooking-status&amp;quot;,&lt;br /&gt;
        cooking_holiday: &amp;quot;vanatime-guild-schedule-cooking-holiday&amp;quot;,&lt;br /&gt;
        cooking_timer: &amp;quot;vanatime-guild-schedule-cooking-timer&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
        all : &amp;quot;vanatime-guild-schedule-all&amp;quot;&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
class schedule {&lt;br /&gt;
    //  All raw datea is from ASB &lt;br /&gt;
    //  route definintion = [ &#039;Name of route&#039;, anim_arrive, anim_depart, timeOffset, time_interval, time_anim_arrive, time_waiting, time_anim_depart]&lt;br /&gt;
    //  Actual arrival time (when the player can enter the transport ) = time_offset + time_anim_arrive = [3] + [5]&lt;br /&gt;
    //  Departure time = arrival time + time_waiting = arrival_time + [6]&lt;br /&gt;
    //  All values listed are in VanaTime minutes, so 1440 is the total minutes in a game hour&lt;br /&gt;
    &lt;br /&gt;
        static #airship_jeuno_sandy = [&#039;Jeuno -&amp;gt; Sandoria&#039;,   0,   360, 12, 60, 12];&lt;br /&gt;
        static #airship_jeuno_windy = [&#039;Jeuno -&amp;gt; Windurst&#039;,   90,  360, 12, 60, 12];&lt;br /&gt;
        static #airship_jeuno_bastok = [&#039;Jeuno -&amp;gt; Bastok&#039;,     180, 360, 12, 60, 16];&lt;br /&gt;
        static #airship_jeuno_kazham = [&#039;Jeuno -&amp;gt; Kazham&#039;,     270, 360, 20, 50, 20];&lt;br /&gt;
        static #airship_bastok_jeuno = [&#039;Bastok -&amp;gt; Jeuno&#039;,     0,   360, 14, 60, 16];&lt;br /&gt;
        static #airship_sandy_jeuno = [&#039;Sandoria -&amp;gt; Jeuno&#039;,   180, 360, 12, 60, 16];&lt;br /&gt;
        static #airship_windy_jeuno = [&#039;Windurst -&amp;gt; Jeuno&#039;,   270, 360, 18, 60, 14];&lt;br /&gt;
        static #airship_kazham_jeuno = [&#039;Kazham -&amp;gt; Jeuno&#039;,     90,  360, 20, 50, 20];&lt;br /&gt;
    &lt;br /&gt;
        static airships = {&lt;br /&gt;
            jeuno : [&lt;br /&gt;
                this.#airship_jeuno_bastok,&lt;br /&gt;
                this.#airship_jeuno_sandy,&lt;br /&gt;
                this.#airship_jeuno_windy,&lt;br /&gt;
                this.#airship_jeuno_kazham,&lt;br /&gt;
                this.#airship_bastok_jeuno,&lt;br /&gt;
                this.#airship_sandy_jeuno,&lt;br /&gt;
                this.#airship_windy_jeuno,&lt;br /&gt;
                this.#airship_kazham_jeuno&lt;br /&gt;
            ],&lt;br /&gt;
            bastok :    [ this.#airship_bastok_jeuno, this.#airship_jeuno_bastok],&lt;br /&gt;
            sandy :     [this.#airship_sandy_jeuno, this.#airship_jeuno_sandy],&lt;br /&gt;
            windy :     [this.#airship_windy_jeuno, this.#airship_jeuno_windy],&lt;br /&gt;
            kazham :    [this.#airship_kazham_jeuno, this.#airship_jeuno_kazham]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
        static #boat_selbina_mhaura = [&#039;Selbina -&amp;gt; Mhaura&#039;,     382, 480, 18, 80, 17];&lt;br /&gt;
        static #boat_mhaura_selbina = [&#039;Mhaura -&amp;gt; Selbina&#039;,     382, 480, 18, 80, 17];&lt;br /&gt;
        static #boat_mhaura_whitegate = [&#039;Mhaura -&amp;gt; Whitegate&#039;, 142, 480, 18, 80, 17];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_whitegate_mhaura = [&#039;Whitegate -&amp;gt; Mhaura&#039;, 142, 480, 18, 80, 16];&lt;br /&gt;
        static #boat_whitegate_nashmau = [&#039;Whitegate -&amp;gt; Nashmau&#039;, 282, 480, 18, 180, 17];&lt;br /&gt;
        static #boat_nashmau_whitegate = [&#039;Nashmau -&amp;gt; Whitegate&#039;, 282, 480, 18, 180, 17];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_bibiki_tours = [&#039;Bibiki Bay -&amp;gt; Tours&#039;, 710, 720, 20, 40, 20];&lt;br /&gt;
        static #boat_bibiki_purgo = [&#039;Bibiki Bay -&amp;gt; Purgonorgo Isle&#039;, 270, 720, 20, 40, 20];&lt;br /&gt;
        static #boat_purgo_bibiki = [&#039;Purgonorgo Isle -&amp;gt; Bibiki Bay&#039;, 500, 720, 20, 40, 20];&lt;br /&gt;
    &lt;br /&gt;
        static #boat_barge_south_central_emfa = [&#039;South Landing -&amp;gt; Central Landing EMFEA&#039;, 5, 1440, 15, 35, 15];&lt;br /&gt;
        static #boat_barge_central_south_newtpool1 = [&#039;Central Landing -&amp;gt; South Landing NewtPool&#039;, 267, 1440, 12, 30, 15];&lt;br /&gt;
        static #boat_barge_south_oos = [&#039;South Landing -&amp;gt; OOS&#039;, 1402, 1440, 33,  0,  0];&lt;br /&gt;
        static #boat_barge_south_north = [&#039;South Landing -&amp;gt; North Landing&#039;, 560, 1440, 15, 35, 15];&lt;br /&gt;
        static #boat_barge_north_oos = [&#039;North Landing -&amp;gt; OOS&#039;, 925, 1440, 40,  0,  0];&lt;br /&gt;
        static #boat_barge_north_central = [&#039;North Landing -&amp;gt; Central Landing&#039;,  993, 1440, 12, 40, 15];&lt;br /&gt;
        static #boat_barge_central_south_newtpool2 = [&#039;Central Landing -&amp;gt; South Landing NewtPool 2&#039;, 1148, 1440, 12, 30, 15];&lt;br /&gt;
        static #boat_barge_south_oos1 = [&#039;South Landing -&amp;gt; OOS 2&#039;, 512, 1440, 33,  0,  0];&lt;br /&gt;
    &lt;br /&gt;
        static boats = {&lt;br /&gt;
            selbina :  [ this.#boat_selbina_mhaura ],&lt;br /&gt;
            mhaura :  [ this.#boat_mhaura_selbina, this.#boat_mhaura_whitegate ],&lt;br /&gt;
            whitegate : [ this.#boat_whitegate_mhaura, this.#boat_whitegate_nashmau],&lt;br /&gt;
            nashmau : [ this.#boat_nashmau_whitegate ],&lt;br /&gt;
            bibiki :  [ this.#boat_bibiki_tours, this.#boat_bibiki_purgo],&lt;br /&gt;
            purgonorgoIsle : [ this.#boat_purgo_bibiki ],&lt;br /&gt;
            northLanding : [ this.#boat_barge_north_oos, this.#boat_barge_north_central ],&lt;br /&gt;
            centralLanding : [ this.#boat_barge_central_south_newtpool1, this.#boat_barge_central_south_newtpool2 ],&lt;br /&gt;
            southLanding : [ this.#boat_barge_south_central_emfa, this.#boat_barge_south_oos, this.#boat_barge_south_north, this.#boat_barge_south_oos1 ]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
        static #alchemy = [480, 1380, 5];&lt;br /&gt;
        static #smithing = [480, 1380, 2];&lt;br /&gt;
        static #bonecrafting = [480, 1380, 3];&lt;br /&gt;
        static #goldsmithing = [480, 1380, 4];&lt;br /&gt;
        static #clothcrafting = [360, 1260, 0];&lt;br /&gt;
        static  #woodworking = [360, 1260, 0];&lt;br /&gt;
        static #leathercrafting = [180, 1080, 4];&lt;br /&gt;
        static #fishing = [180, 1080, 5];&lt;br /&gt;
        static #cooking = [300, 1200, 7];&lt;br /&gt;
    &lt;br /&gt;
        static guilds = {&lt;br /&gt;
            // [ Open, Close, Holiday]&lt;br /&gt;
            alchemy : this.#alchemy,&lt;br /&gt;
            smithing : this.#smithing,&lt;br /&gt;
            bonecrafting : this.#bonecrafting,&lt;br /&gt;
            goldsmithing : this.#goldsmithing,&lt;br /&gt;
            clothcrafting : this.#clothcrafting,&lt;br /&gt;
            woodworking : this.#woodworking,&lt;br /&gt;
            leathercrafting : this.#leathercrafting,&lt;br /&gt;
            fishing : this.#fishing,&lt;br /&gt;
            cooking : this.#cooking,&lt;br /&gt;
            all : [ this.#alchemy, this.#smithing, this.#bonecrafting,this.#goldsmithing, this.#clothcrafting,this.#woodworking,this.#leathercrafting, this.#fishing, this.#cooking ]&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class VanaTime{&lt;br /&gt;
    &lt;br /&gt;
    #elementalDay =     [&amp;quot;Firesday&amp;quot;,    &amp;quot;Earthsday&amp;quot;,        &amp;quot;Watersday&amp;quot;,        &amp;quot;Windsday&amp;quot;,         &amp;quot;Iceday&amp;quot;,           &amp;quot;Lightningday&amp;quot;,     &amp;quot;Lightsday&amp;quot;,    &amp;quot;Darksday&amp;quot;];&lt;br /&gt;
    #dayColor =         [&amp;quot;#FF0000&amp;quot;,     &amp;quot;#AAAA00&amp;quot;,          &amp;quot;#0000DD&amp;quot;,           &amp;quot;#00AA22&amp;quot;,         &amp;quot;#7799FF&amp;quot;,          &amp;quot;#AA00AA&amp;quot;,          &amp;quot;#AAAAAA&amp;quot;,      &amp;quot;#333333&amp;quot;];&lt;br /&gt;
    #moonPhaseName =    [&amp;quot;New Moon&amp;quot;,    &amp;quot;Waxing Crescent&amp;quot;,  &amp;quot;First Quarter&amp;quot;,    &amp;quot;Waxing Gibbous&amp;quot;,   &amp;quot;Full Moon&amp;quot;,        &amp;quot;Waning Gibbous&amp;quot;,   &amp;quot;Last Quarter&amp;quot;, &amp;quot;Waning Crescent&amp;quot;];&lt;br /&gt;
    #moonIcon =         [&#039;\u{1F311}&#039;,   &#039;\u{1F312}&#039;,        &#039;\u{1F313}&#039;,        &#039;\u{1F314}&#039;,        &#039;\u{1F315}&#039;,        &#039;\u{1F316}&#039;,        &#039;\u{1F317}&#039;,    &#039;\u{1F318}&#039;];&lt;br /&gt;
    #moonPercentages =  [&amp;quot;(10%-0%-5%)&amp;quot;, &amp;quot;(7%-38%)&amp;quot;,         &amp;quot;(40%-55%)&amp;quot;,        &amp;quot;(57%-88%)&amp;quot;,        &amp;quot;(90%-100%-95%)&amp;quot;,    &amp;quot;(93%-62%)&amp;quot;,       &amp;quot;(60%-45%)&amp;quot;,    &amp;quot;(43%-12%)&amp;quot;];&lt;br /&gt;
    #month =            [&amp;quot;Jan&amp;quot;, &amp;quot;Feb&amp;quot;, &amp;quot;Mar&amp;quot;, &amp;quot;Apr&amp;quot;, &amp;quot;May&amp;quot;, &amp;quot;Jun&amp;quot;, &amp;quot;Jul&amp;quot;, &amp;quot;Aug&amp;quot;, &amp;quot;Sep&amp;quot;, &amp;quot;Oct&amp;quot;, &amp;quot;Nov&amp;quot;, &amp;quot;Dec&amp;quot;];&lt;br /&gt;
    #weekday =          [&amp;quot;Sun&amp;quot;, &amp;quot;Mon&amp;quot;, &amp;quot;Tue&amp;quot;, &amp;quot;Wed&amp;quot;, &amp;quot;Thu&amp;quot;, &amp;quot;Fri&amp;quot;, &amp;quot;Sat&amp;quot;];&lt;br /&gt;
    #rseRace =          [&amp;quot;M. Hume&amp;quot;,&amp;quot;F. Hume&amp;quot;,&amp;quot;M. Elvaan&amp;quot;,&amp;quot;F. Elvaan&amp;quot;,&amp;quot;M. TaruTaru&amp;quot;,&amp;quot;F. TaruTaru&amp;quot;,&amp;quot;Mithra&amp;quot;,&amp;quot;Galka&amp;quot;];&lt;br /&gt;
    #rseLocation =      [&amp;quot;Gusgen Mines&amp;quot;,&amp;quot;Shakrami Maze&amp;quot;,&amp;quot;Ordelle Caves&amp;quot;];&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    // Conversions in Milliseconds&lt;br /&gt;
    //#baseDate; // built at runtime: 1024844400000&lt;br /&gt;
    #moonDate =     1074997872000; // in milliseconds&lt;br /&gt;
    #VTIME_BIRTH     = 1024844400000; // vana birthday - in milliseconds&lt;br /&gt;
    #VTIME_BASEDATE  = 1009810800;  // unix epoch - 1009810800 = se epoch (in earth seconds)&lt;br /&gt;
    rseDate =      1075281264000;&lt;br /&gt;
&lt;br /&gt;
    #ONE_SECOND = 1000000;&lt;br /&gt;
    #ONE_MINUTE;&lt;br /&gt;
    #ONE_HOUR;&lt;br /&gt;
    #ONE_DAY;&lt;br /&gt;
    // #ONE_WEEK;&lt;br /&gt;
    // #ONE_MONTH;&lt;br /&gt;
    // #ONE_YEAR;&lt;br /&gt;
&lt;br /&gt;
    // Conversions in Minutes&lt;br /&gt;
    #VTIME_YEAR  =      518400;   // 360 * GameDay&lt;br /&gt;
    #VTIME_MONTH =      43200;      // 30 * GameDay&lt;br /&gt;
    #VTIME_WEEK  =      11520;      // 8 * GameDay&lt;br /&gt;
    #VTIME_DAY   =      1440;       // 24 hours * GameHour&lt;br /&gt;
    #VTIME_HOUR  =      60;         // 60 minutes&lt;br /&gt;
    #VMULTIPLIER =      25;&lt;br /&gt;
    #MOON_CYCLE_DAYS =  84;&lt;br /&gt;
    // #MOON_CYCLE_PHASE = 17280;     // 1 moon phase cycle = 12 vana days = 12 * Gameday&lt;br /&gt;
&lt;br /&gt;
    /*&lt;br /&gt;
        Some of the math...&lt;br /&gt;
&lt;br /&gt;
        (((898 * 360) + 30) * 24 * 60 * 60) / (this.#VMULTIPLIER / 1000).....  &lt;br /&gt;
        converts vana time to earth time by ( / 25 ) then getting to milliseconds ( * 1000 )&lt;br /&gt;
    */&lt;br /&gt;
    #vanaBirthday = (((898 * 360) + 30) * 24 * 60 * 60) / (25 / 1000); // 1117359360000 - in earth time milliseconds&lt;br /&gt;
    #difference = this.#vanaBirthday - this.#VTIME_BIRTH; // 92514960000 - earth time milliseconds&lt;br /&gt;
&lt;br /&gt;
    getDifference(){ return this.#difference };&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Common variables for quick reference to current Vana time&lt;br /&gt;
     * @returns - integer / number&lt;br /&gt;
     */&lt;br /&gt;
    // vana_currentTime_inEarthMS = ((898 * 360 + 30) * (24 * 60 * 60 * 1000)) + (this.earthDate.getTime() - this.#VTIME_BIRTH) * this.#VMULTIPLIER; // vana time, represented in earth milliseconds - used for making Date() objects&lt;br /&gt;
    // vana_currentTime = this.vana_currentTime_inEarthMS / (60 * 1000); // vana time in minutes&lt;br /&gt;
    // //vana_currentTime = ( ((this.earthDate.getTime() / 1000) - this.#VTIME_BASEDATE ) / 60.0 * this.#VMULTIPLIER) + (886 * this.#VTIME_YEAR); //returned in vana minutes&lt;br /&gt;
    // vana_year = this.vana_currentTime / this.#VTIME_YEAR;&lt;br /&gt;
    // vana_month  = (this.vana_currentTime / this.#VTIME_MONTH) % 12 + 1;&lt;br /&gt;
    // vana_date = (this.vana_currentTime / this.#VTIME_DAY) % 30 + 1;&lt;br /&gt;
    // vana_weekday  = Math.floor((this.vana_currentTime % this.#VTIME_WEEK) / this.#VTIME_DAY);&lt;br /&gt;
    // vana_hour = (this.vana_currentTime % this.#VTIME_DAY) / this.#VTIME_HOUR;&lt;br /&gt;
    // vana_mins  = this.vana_currentTime % this.#VTIME_HOUR;&lt;br /&gt;
    // vana_moonphase  = Math.floor((this.vana_currentTime % this.#MOON_CYCLE_PHASE) / this.#VTIME_DAY);&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Helper functions for quick reference to any Vana time&lt;br /&gt;
     * @returns - integer / number&lt;br /&gt;
     */&lt;br /&gt;
    now_inEarthMS(){ &lt;br /&gt;
        var now = new Date();&lt;br /&gt;
        return ((898 * 360 + 30) * (24 * 60 * 60 * 1000)) + (now.getTime() - this.#VTIME_BIRTH) * this.#VMULTIPLIER; &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    now(){ return this.now_inEarthMS() / ( 60 * 1000); }&lt;br /&gt;
&lt;br /&gt;
    now_inMS(){&lt;br /&gt;
        var timenow = new Date();&lt;br /&gt;
        return ((timenow.getTime() - this.#VTIME_BIRTH) % (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    now_inMINS(){&lt;br /&gt;
        return this.now_inMS / ( 1000 * 60 );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    today_inMS(){ // result in earth Milliseconds&lt;br /&gt;
        var now = this.now_inEarthMS();&lt;br /&gt;
        return ( now - ( now % (24 * 60 * 60 * 1000) ));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    year(vanatime) {&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor(vanatime / this.#VTIME_YEAR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    month(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime / this.#VTIME_MONTH) % 12) + 1;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    date(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime / this.#VTIME_DAY) % 30) + 1;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    weekDay(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime % this.#VTIME_WEEK) / this.#VTIME_DAY);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    hour(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor((vanatime % this.#VTIME_DAY) / this.#VTIME_HOUR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    mins(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.floor(vanatime % this.#VTIME_HOUR);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    dayColor(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return this.#dayColor[this.weekDay()];&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    dayLabel(day){ &lt;br /&gt;
        if (day === undefined || day == null) return this.#elementalDay[this.weekDay()];&lt;br /&gt;
        else return this.#elementalDay[day]&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhaseIcon(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonIcon[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonIcon[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhaseName(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonPhaseName[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonPhaseName[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    moonPhasePercentages(day){  &lt;br /&gt;
        if (day === undefined || day == null) return this.#moonPercentages[this.moonLatentPhase()];&lt;br /&gt;
        else return this.#moonPercentages[day];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * Time Helper functions - supports string generation for month/week details&lt;br /&gt;
     * @param  (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */&lt;br /&gt;
    monthLabel(m){ return this.#month[m]; }&lt;br /&gt;
    weekdayLabel(w){ return this.#weekday[w]; }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * RSE Helper functions - supports string generation for RSE details&lt;br /&gt;
     * @param r (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */ &lt;br /&gt;
    rseRace(r){ return this.#rseRace[r]; }&lt;br /&gt;
&lt;br /&gt;
    /**     &lt;br /&gt;
     * RSE Helper functions - supports string generation for RSE details&lt;br /&gt;
     * @param r (required) - represents which RACE &lt;br /&gt;
     * @returns - string - from #rseRace or #rseLocation&lt;br /&gt;
     */ &lt;br /&gt;
    rseLocation(r){ return this.#rseLocation[r]; }&lt;br /&gt;
&lt;br /&gt;
    constructor(){&lt;br /&gt;
        this.#ONE_MINUTE = 60  * this.#ONE_SECOND;&lt;br /&gt;
        this.#ONE_HOUR = 60  * this.#ONE_MINUTE;&lt;br /&gt;
        this.#ONE_DAY = 24  * this.#ONE_HOUR;&lt;br /&gt;
        // this.#ONE_WEEK = 8   * this.#ONE_DAY;&lt;br /&gt;
        // this.#ONE_MONTH = 30  * this.#ONE_DAY;&lt;br /&gt;
        // this.#ONE_YEAR = 360 * this.#ONE_DAY;&lt;br /&gt;
&lt;br /&gt;
        // this.#MOON_CYCLE_PHASE = 12 * this.#VTIME_WEEK;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /******************************** MOON PHASES **********************************&lt;br /&gt;
 &lt;br /&gt;
     0% NM   7% WXC    40% FQM   57% WXG   90% FM  93% WNG  60% LQM  43% WNC  10% NM &lt;br /&gt;
     2% NM  10% WXC    43% FQM   60% WXG   93% FM  90% WNG  57% LQM  40% WNC   7% NM&lt;br /&gt;
     5% NM  12% WXC    45% FQM   62% WXG   95% FM  88% WNG  55% LQM  38% WNC   5% NM&lt;br /&gt;
            14% WXC    48% FQM   64% WXG   98% FM  86% WNG  52% LQM  36% WNC   2% NM&lt;br /&gt;
            17% WXC    50% FQM   67% WXG  100% FM  83% WNG  50% LQM  33% WNC&lt;br /&gt;
            19% WXC    52% FQM   69% WXG   98% FM  81% WNG  48% LQM  31% WNC&lt;br /&gt;
            21% WXC    55% FQM   71% WXG   95% FM  79% WNG  45% LQM  29% WNC&lt;br /&gt;
            24% WXC              74% WXG           76% WNG           26% WNC&lt;br /&gt;
            26% WXC              76% WXG           74% WNG           24% WNC&lt;br /&gt;
            29% WXC              79% WXG           71% WNG           21% WNC&lt;br /&gt;
            31% WXC              81% WXG           69% WNG           19% WNC&lt;br /&gt;
            33% WXC              83% WXG           67% WNG           17% WNC&lt;br /&gt;
            36% WXC              86% WXG           64% WNG           14% WNC&lt;br /&gt;
            38% WXC              88% WXG           62% WNG           12% WNC&lt;br /&gt;
    ********************************************************************************/&lt;br /&gt;
    /**     &lt;br /&gt;
     * Private function - supports moon phase calculations &lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer - represents the day in the 84 day moon phase cycle&lt;br /&gt;
     */ &lt;br /&gt;
    #moonDays(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return  ((( vanatime /  this.#VTIME_DAY ) + 26) % this.#MOON_CYCLE_DAYS); &lt;br /&gt;
    }  &lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Private function for doing arithmetic for moon phase percentage&lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer representing moon phase percentage&lt;br /&gt;
     */ &lt;br /&gt;
    #moonPercent(vanatime){ &lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        return Math.abs( -Math.round((42 - Math.floor(this.#moonDays(vanatime))) / 42 * 100) ); &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Helper function for getting moon phase percentage&lt;br /&gt;
     * @param vanatime (required) - Vanadiel time, in MILLISECONDS&lt;br /&gt;
     * @returns - integer representing moon phase percentage&lt;br /&gt;
     */ &lt;br /&gt;
    getMoonPercent(vanatime) { return this.#moonPercent(vanatime)};&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param vanatime - Vanadiel time, in MILLISECONDS; default value is now()&lt;br /&gt;
     * @returns - integer representing waxing/waning/neither&lt;br /&gt;
     */ &lt;br /&gt;
    #moonDirection(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        var moondays = Math.floor(this.#moonDays(vanatime));&lt;br /&gt;
        //console.log(daysmod);&lt;br /&gt;
        if (moondays == 42 || moondays == 0) { return 0; }// neither waxing nor waning&lt;br /&gt;
        else if (moondays &amp;lt; 42){ return 1; } // waning&lt;br /&gt;
        else{ return 2; } // waxing&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param vanatime - Vanadiel time, in MILLISECONDS; default value is now()&lt;br /&gt;
     * @returns - total milliseconds remaining until next conquest update&lt;br /&gt;
     */ &lt;br /&gt;
    moonLatentPhase(vanatime){&lt;br /&gt;
        if (vanatime === undefined || vanatime == null) vanatime = this.now();&lt;br /&gt;
        var moonPhase = this.#moonPercent(vanatime);&lt;br /&gt;
        var moonDirection = this.#moonDirection(vanatime);&lt;br /&gt;
&lt;br /&gt;
        //console.log(&amp;quot;*mP&amp;quot;, moonPhase);&lt;br /&gt;
        //console.log(&amp;quot;*mD&amp;quot;, moonDirection);&lt;br /&gt;
        &lt;br /&gt;
        if (moonPhase &amp;lt;= 5 || (moonPhase &amp;lt;= 10 &amp;amp;&amp;amp; moonDirection == 1)) {return 0;} // New Moon - 10% waning -&amp;gt; 5% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 7 &amp;amp;&amp;amp; moonPhase &amp;lt;= 38 &amp;amp;&amp;amp; moonDirection == 2) {return 1;}  // Waxing Crescent - 7% -&amp;gt; 38% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 40 &amp;amp;&amp;amp; moonPhase &amp;lt;= 55 &amp;amp;&amp;amp; moonDirection == 2){return 2;}  // First Quarter - 40%% -&amp;gt; 55% waxing&lt;br /&gt;
        else if (moonPhase &amp;gt;= 57 &amp;amp;&amp;amp; moonPhase &amp;lt;= 88 &amp;amp;&amp;amp; moonDirection == 2){return 3;}  // Waxing Gibbous - 57% -&amp;gt; 88%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 95 || (moonPhase &amp;gt;= 90 &amp;amp;&amp;amp; moonDirection == 2)){return 4;}  // Full Moon - waxing 90% -&amp;gt; waning 95%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 62 &amp;amp;&amp;amp; moonPhase &amp;lt;= 93 &amp;amp;&amp;amp; moonDirection == 1){return 5;}  // Waning Gibbous - 93% -&amp;gt; 62%&lt;br /&gt;
        else if (moonPhase &amp;gt;= 45 &amp;amp;&amp;amp; moonPhase &amp;lt;= 60 &amp;amp;&amp;amp; moonDirection == 1){return 6;}  // Last Quarter - 60% -&amp;gt; 45%&lt;br /&gt;
        else{return 7;}  // Waning Crescent - 43% -&amp;gt; 12%&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @returns - total milliseconds remaining until next conquest update&lt;br /&gt;
     */ &lt;br /&gt;
    conquestRemainingTime(){ &lt;br /&gt;
        var now =  new Date();&lt;br /&gt;
        //console.log(this.earthDate.getTime(), this.#VTIME_BIRTH);&lt;br /&gt;
        return (7 * (24 * 60 * 60 * 1000)) - ((now.getTime() - this.#VTIME_BIRTH) % (7 * (24 * 60 * 60 * 1000)));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @returns - integer - total Vanadiel days remaining on current conquest&lt;br /&gt;
     */ &lt;br /&gt;
    conquestRemainingVanaDays(){&lt;br /&gt;
        return Math.ceil(this.conquestRemainingTime() / (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param time - Vanadiel time, in MILLISECONDS, needing to be converted &lt;br /&gt;
     * @returns {Date} - value as Date() object&lt;br /&gt;
     */&lt;br /&gt;
    earthTime(time){&lt;br /&gt;
        if (time === undefined) time = this.now_inEarthMS();&lt;br /&gt;
        //else time = time * 60 * 1000;&lt;br /&gt;
        var earthTime = time / ( this.#VMULTIPLIER );&lt;br /&gt;
        return new Date(Math.floor(earthTime) - (this.#vanaBirthday - this.#VTIME_BIRTH));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
     /**&lt;br /&gt;
     * @param time - Vanadiel time, in minutes, needing to be converted&lt;br /&gt;
     * @returns - string, formatted 00:00&lt;br /&gt;
     */&lt;br /&gt;
     stringVanaTime(time){ &lt;br /&gt;
        if (time === undefined || time === null) time = this.now();&lt;br /&gt;
        //console.log(time);&lt;br /&gt;
        var vYear = this.year(time);&lt;br /&gt;
        var vMon  = this.month(time)&lt;br /&gt;
        var vDate = this.date(time);&lt;br /&gt;
        var vHour = this.hour(time);&lt;br /&gt;
        var vMin  = this.mins(time);&lt;br /&gt;
        // var vSec  = time.getSeconds();&lt;br /&gt;
        // var vDay  = time.getDay();&lt;br /&gt;
        //seconds left our because we don&#039;t use them for any calcs&lt;br /&gt;
&lt;br /&gt;
        if (vYear &amp;lt; 1000)  vYear = &amp;quot;0&amp;quot; + vYear; &lt;br /&gt;
        if (vMon  &amp;lt; 10) vMon  = &amp;quot;0&amp;quot; + vMon;&lt;br /&gt;
        if (vDate  &amp;lt; 10)  vDate  = &amp;quot;0&amp;quot; + vDate;&lt;br /&gt;
        if (vHour &amp;lt; 10)  vHour = &amp;quot;0&amp;quot; + vHour; &lt;br /&gt;
        if (vMin  &amp;lt; 10)  vMin  = &amp;quot;0&amp;quot; + vMin; &lt;br /&gt;
&lt;br /&gt;
        //return vYear + &amp;quot;:&amp;quot; + vMonth + &amp;quot;:&amp;quot; + vDate + &amp;quot; [&amp;quot; + vHour + &amp;quot;:&amp;quot; + vMin + &amp;quot;]&amp;quot; ; // for testing&lt;br /&gt;
        return vHour + &amp;quot;:&amp;quot; + vMin; &lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * @param time - Vanadiel time, in milliseconds, needing to be converted&lt;br /&gt;
     * @returns - string, formatted 00:00:00&lt;br /&gt;
     */&lt;br /&gt;
    stringEarthTime(time) {&lt;br /&gt;
        var eTime = this.earthTime(time);  &lt;br /&gt;
        // const monthNames = [&amp;quot;Jan&amp;quot;, &amp;quot;Feb&amp;quot;, &amp;quot;Mar&amp;quot;, &amp;quot;Apr&amp;quot;, &amp;quot;May&amp;quot;, &amp;quot;Jun&amp;quot;, &amp;quot;Jul&amp;quot;, &amp;quot;Aug&amp;quot;, &amp;quot;Sep&amp;quot;, &amp;quot;Oct&amp;quot;, &amp;quot;Nov&amp;quot;, &amp;quot;Dec&amp;quot;];&lt;br /&gt;
        //Most of these arent needed, left in for future inclusion if needed/wanted&lt;br /&gt;
        // var eYear = eTime.getFullYear();&lt;br /&gt;
        // var eMon  = monthNames[eTime.getMonth()];&lt;br /&gt;
        var eDate = eTime.getDate();&lt;br /&gt;
        var eHour = eTime.getHours();&lt;br /&gt;
        var eMin  = eTime.getMinutes();&lt;br /&gt;
        var eSec  = eTime.getSeconds();&lt;br /&gt;
        var eDay  = eTime.getDay();&lt;br /&gt;
        &lt;br /&gt;
        // Assigns a leading zero if neccessary&lt;br /&gt;
        // if (eDate &amp;lt; 10)  eDate = &amp;quot;0&amp;quot; + eDate; &lt;br /&gt;
        if (eHour &amp;lt; 10)  eHour = &amp;quot;0&amp;quot; + eHour; &lt;br /&gt;
        if (eMin &amp;lt; 10)   eMin  = &amp;quot;0&amp;quot; + eMin;  &lt;br /&gt;
        if (eSec &amp;lt; 10)   eSec  = &amp;quot;0&amp;quot; + eSec;  &lt;br /&gt;
&lt;br /&gt;
        // var str = eMon + &amp;quot; &amp;quot; + eDate + &amp;quot;,&amp;quot; + eHour + &amp;quot;:&amp;quot; + eMin + &amp;quot;:&amp;quot; + eSec;&lt;br /&gt;
        var str = eHour + &amp;quot;:&amp;quot; + eMin + &amp;quot;:&amp;quot; + eSec;&lt;br /&gt;
        return str;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * @param  nextTime - Vana time, in MINUTES, needing to be converted&lt;br /&gt;
     * @returns - string of HOURS:MINS&lt;br /&gt;
     */&lt;br /&gt;
    timeUntil(nextTime){&lt;br /&gt;
        if (nextTime === undefined) { return &amp;quot;00:00:00&amp;quot;; }&lt;br /&gt;
        else if ( !(nextTime instanceof Date) ) {&lt;br /&gt;
            //console.log(&#039;!instance of Date&#039;);&lt;br /&gt;
            var e = this.earthTime(nextTime);&lt;br /&gt;
         } //earth time for next departure&lt;br /&gt;
        else e = nextTime;&lt;br /&gt;
&lt;br /&gt;
        //console.log( e.getTime() );&lt;br /&gt;
&lt;br /&gt;
        var now = new Date(); // earth time now&lt;br /&gt;
        &lt;br /&gt;
        //get difference between the next departure and current time... we want this to be in seconds, and Date()&lt;br /&gt;
        //and nextDeparture should be in milliseconds, so we /1000&lt;br /&gt;
&lt;br /&gt;
        var days = (e.getTime() - now.getTime()) / (24 * 60 * 60 * 1000);&lt;br /&gt;
        var hours = (days - Math.floor(days)) * 24;&lt;br /&gt;
        var minutes = (hours - Math.floor(hours)) * 60;&lt;br /&gt;
        var seconds = Math.floor((minutes - Math.floor(minutes)) * 60);&lt;br /&gt;
&lt;br /&gt;
        days = Math.floor(days);&lt;br /&gt;
        hours = Math.floor(hours);&lt;br /&gt;
        minutes = Math.floor(minutes);&lt;br /&gt;
        &lt;br /&gt;
        if (hours &amp;lt; 10)  hours = &amp;quot;0&amp;quot; + hours; &lt;br /&gt;
        if (minutes &amp;lt; 10)   minutes  = &amp;quot;0&amp;quot; + minutes;  &lt;br /&gt;
        if (seconds &amp;lt; 10)   seconds  = &amp;quot;0&amp;quot; + seconds;  &lt;br /&gt;
        &lt;br /&gt;
        var str = minutes + &amp;quot;:&amp;quot; + seconds;&lt;br /&gt;
&lt;br /&gt;
        if ( days &amp;gt; 0 ) { str = [days, hours, str].join(&#039;:&#039;); }&lt;br /&gt;
        else if ( hours &amp;gt; 0 || typeof(hours) == &#039;string&#039;) { str = [hours, str].join(&#039;:&#039;); }&lt;br /&gt;
&lt;br /&gt;
        return str;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    timer(time1, time2){&lt;br /&gt;
        var seconds = Math.floor((time1.getTime() - time2.getTime()) / 1000); &lt;br /&gt;
                &lt;br /&gt;
        //basic math functions to get each element of time separated &lt;br /&gt;
        var minutes = Math.floor(seconds / 60);&lt;br /&gt;
        var hours = Math.floor(minutes / 60);&lt;br /&gt;
        var days = Math.floor(hours / 24);&lt;br /&gt;
&lt;br /&gt;
        hours = hours-(days * 24);&lt;br /&gt;
        minutes = minutes-(days * 24 * 60)-(hours * 60);&lt;br /&gt;
        seconds = seconds-(days * 24 * 60 * 60 )-(hours * 60 * 60)-(minutes * 60);&lt;br /&gt;
&lt;br /&gt;
        seconds &amp;lt; 10 ? seconds = &amp;quot;0&amp;quot; + seconds : seconds;&lt;br /&gt;
        minutes &amp;lt; 10 ? minutes = &amp;quot;0&amp;quot; + minutes : minutes;&lt;br /&gt;
        hours &amp;lt; 10 ? hours = &amp;quot;0&amp;quot; + hours : hours;&lt;br /&gt;
        &lt;br /&gt;
        var str = hours + &amp;quot;:&amp;quot; + minutes + &amp;quot;:&amp;quot; + seconds;&lt;br /&gt;
        if ( days != 0) str = [days, str].join(&#039;:&#039;);&lt;br /&gt;
        return str; &lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
const vanatime = new VanaTime();&lt;br /&gt;
let currentPopulation = 0;&lt;br /&gt;
////////////////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
function pageHasElement(element){&lt;br /&gt;
	&lt;br /&gt;
    function test(v){&lt;br /&gt;
        var i = document.getElementById(v);&lt;br /&gt;
        var c = document.getElementsByClassName(v);&lt;br /&gt;
&lt;br /&gt;
        if ( i ) { return true; }&lt;br /&gt;
        if ( c[0] ) { return true; }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (typeof(element) == &#039;string&#039;) return test(element);&lt;br /&gt;
    else { &lt;br /&gt;
        for (const [k,v] of Object.entries(element) ){ &lt;br /&gt;
            if (test(v) == true) return true;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateSidebar() {&lt;br /&gt;
    if (!pageHasElement(timeElements.sidebar)) return;&lt;br /&gt;
&lt;br /&gt;
    var hour = vanatime.hour();&lt;br /&gt;
    hour &amp;lt; 10 ? hour = [&amp;quot;0&amp;quot;, hour].join(&#039;&#039;) : hour;&lt;br /&gt;
    var mins = vanatime.mins();&lt;br /&gt;
    mins &amp;lt; 10 ? mins = [&amp;quot;0&amp;quot;, mins].join(&#039;&#039;) : mins;&lt;br /&gt;
&lt;br /&gt;
    var sidebarTime = &amp;quot;&amp;lt;div&amp;gt;&amp;lt;li&amp;gt;&amp;lt;b&amp;gt;&amp;quot; + hour + &amp;quot;:&amp;quot; + mins + &amp;quot;&amp;lt;/b&amp;gt;  ~  &amp;quot; + vanatime.year() + &amp;quot;-&amp;quot; + vanatime.month() + &amp;quot;-&amp;quot; + vanatime.date() + &amp;quot;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
	sidebarTime +=	&amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-weight: bold; font-size:14px; color:&amp;quot; + vanatime.dayColor() + &amp;quot;\&amp;quot; &amp;gt;&amp;quot;  + vanatime.dayLabel() + &amp;quot;&amp;lt;/span&amp;gt;&amp;lt;span style=\&amp;quot;font-size:14px;\&amp;quot;&amp;gt;  ~ &amp;quot; + vanatime.moonPhaseIcon() + vanatime.getMoonPercent() + &amp;quot;%&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
    //sidebarTime +=	&amp;quot;&amp;lt;li&amp;gt;\u{1F7E2} Online &amp;quot;;&lt;br /&gt;
    if ( currentPopulation != 0 ) sidebarTime += &amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-size:9px;\&amp;quot;&amp;gt;\u{1F7E2}&amp;lt;/span&amp;gt; Online &amp;lt;b&amp;gt;&amp;quot; + currentPopulation + &amp;quot;&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
    else sidebarTime += &amp;quot;&amp;lt;li&amp;gt;&amp;lt;span style=\&amp;quot;font-size:9px;\&amp;quot;&amp;gt;\u{1F534}&amp;lt;/span&amp;gt; Online &amp;lt;i&amp;gt;~Standby~&amp;lt;/i&amp;gt;&amp;lt;/li&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    sidebarTime += &amp;quot;&amp;lt;/div&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	const sidebar_vanatime = document.getElementById(timeElements.sidebar);&lt;br /&gt;
    if (sidebar_vanatime) sidebar_vanatime.innerHTML = sidebarTime;&lt;br /&gt;
	//for (let i = 0; i &amp;lt; page_vanatime.length; i = i+1) { page_vanatime[i].innerHTML = sidebarTime; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateBoatSchedule()  {&lt;br /&gt;
&lt;br /&gt;
    if (!pageHasElement(timeElements.boats)) return;&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.selbina, schedule.boats.selbina, 3);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.mhaura, schedule.boats.mhaura, 3);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.whitegate, schedule.boats.whitegate, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.nashmau, schedule.boats.nashmau, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.bibiki, schedule.boats.bibiki, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.purgonorgoIsle, schedule.boats.purgonorgoIsle, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.northLanding, schedule.boats.northLanding, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.centralLanding, schedule.boats.centralLanding, 1);&lt;br /&gt;
    populateTransportSchedule(timeElements.boats.southLanding, schedule.boats.southLanding, 1);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateAirshipSchedule(){&lt;br /&gt;
    if (!pageHasElement(timeElements.airships)) return;&lt;br /&gt;
&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.jeuno, schedule.airships.jeuno, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.bastok, schedule.airships.bastok, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.sandy, schedule.airships.sandy, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.windy, schedule.airships.windy, 1);&lt;br /&gt;
   populateTransportSchedule(timeElements.airships.kazham, schedule.airships.kazham, 1);&lt;br /&gt;
}&lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function _transportScheduleHeader(classname){&lt;br /&gt;
&lt;br /&gt;
    var header = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot; + classname + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Destination&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	//header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Departure Day&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;VanaTime&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Earth Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Departs&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
	return header;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _transportScheduleBody(schedule, entriesPerSchedule, numberOfEntries){&lt;br /&gt;
    function _helper(sched, n){&lt;br /&gt;
        var helperoffset = (sched[1] + sched[3] + sched[4]) * 60  * 1000 / 25;  // VANA MILLISECONDS&lt;br /&gt;
        //console.log(&amp;quot;helperoffset: &amp;quot;, helperoffset, vanatime.now_inMS());&lt;br /&gt;
        while (helperoffset &amp;lt;  vanatime.now_inMS() ) {&lt;br /&gt;
            helperoffset += (sched[2] * n  * 60 * 1000 / 25);&lt;br /&gt;
        }&lt;br /&gt;
        return helperoffset; // VANA MILLISECONDS&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var html = &amp;quot;&amp;quot;;&lt;br /&gt;
    var offset = {};&lt;br /&gt;
    var rowhighlight = true;&lt;br /&gt;
&lt;br /&gt;
    for( let n=1; n &amp;lt;= numberOfEntries; n++ ){ &lt;br /&gt;
        html += &#039;&amp;lt;TR class=&amp;quot;vanatime-main-table-row-spacer&amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
        for( let x=0; x &amp;lt; schedule.length; x++ ){ &lt;br /&gt;
            const offsetVariable = x + (schedule.length * (n-1));&lt;br /&gt;
&lt;br /&gt;
            for( let i=1 ; i &amp;lt;= entriesPerSchedule; i++ ){&lt;br /&gt;
                console.log(n,x,i, offsetVariable);&lt;br /&gt;
&lt;br /&gt;
                if ( i &amp;gt; 1 ) offset[offsetVariable] +=  (schedule[x][2] * 60 * 1000 / 25);&lt;br /&gt;
                //else if ( lastOffset ) offset = lastOffset;&lt;br /&gt;
                else offset[offsetVariable] = _helper(schedule[x], n);&lt;br /&gt;
&lt;br /&gt;
                // offset must be greater than the offset before it&lt;br /&gt;
                if ( offsetVariable &amp;gt;= schedule.length &amp;amp;&amp;amp; offset[offsetVariable] &amp;lt;= offset[offsetVariable - schedule.length] )&lt;br /&gt;
                    {&lt;br /&gt;
                        console.log( &amp;quot;fired &amp;quot; + offsetVariable );&lt;br /&gt;
                        offset[offsetVariable] = offset[offsetVariable - schedule.length] + (schedule[x][2] * 60 * 1000 / 25);&lt;br /&gt;
                    }&lt;br /&gt;
&lt;br /&gt;
                var earthdepTime = (vanatime.today_inMS() + (offset[offsetVariable] * 25));&lt;br /&gt;
                var vanadepTime = earthdepTime  / ( 60 * 1000);&lt;br /&gt;
                //var arrTime = depTime - ( sched[2][4] * 60 * 1000);  /// LEAVE THIS in the event someone wants to add ARRIVAL TIMES to future HTML tables&lt;br /&gt;
&lt;br /&gt;
                //html += &#039;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;x= &#039; + x + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringVanaTime(vanadepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringEarthTime(earthdepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.timeUntil(earthdepTime)  +&#039;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
                var rowclass = &amp;quot;&amp;quot;;&lt;br /&gt;
                if ( rowhighlight ) rowclass = `class=&amp;quot;vanatime-main-table-row-highlight&amp;quot;`;&lt;br /&gt;
&lt;br /&gt;
                html += &#039;&amp;lt;TR &#039; + rowclass + &#039;&amp;gt;&amp;lt;TD&amp;gt;&#039; + schedule[x][0] + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringVanaTime(vanadepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.stringEarthTime(earthdepTime) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.timeUntil(earthdepTime)  +&#039;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
                rowhighlight = !rowhighlight;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return html;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function populateTransportSchedule(classname, schedule, entriesPerSchedule){&lt;br /&gt;
    const shipSched = document.getElementById(classname);&lt;br /&gt;
	if (shipSched) {&lt;br /&gt;
        var numberOfEntries = getSelectedNumberOfEntries(classname);&lt;br /&gt;
        if (numberOfEntries === &#039;undefined&#039; || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
        var _HTMLheader = _transportScheduleHeader(classname);&lt;br /&gt;
        var _HTMLbody = this._transportScheduleBody(schedule, entriesPerSchedule, numberOfEntries);&lt;br /&gt;
        var updatedSched =  _HTMLheader + _HTMLbody + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        const classname_details = classname + &amp;quot;-details&amp;quot;;&lt;br /&gt;
        let t = shipSched.getElementsByClassName(classname_details)[0];&lt;br /&gt;
        var _HTMLdetails = &#039;&#039;;&lt;br /&gt;
        if ( !t ){&lt;br /&gt;
&lt;br /&gt;
            var temp = expandTableSelection(classname); &lt;br /&gt;
            if ( !temp ) temp = &amp;quot;&amp;quot;;&lt;br /&gt;
            const div = &#039;&amp;lt;div class=&amp;quot;vanatime-main-table&amp;quot;&amp;gt;&#039; + temp ;&lt;br /&gt;
            _HTMLdetails = `&amp;lt;span class=&amp;quot;${classname_details}&amp;quot;&amp;gt;${updatedSched}&amp;lt;/span&amp;gt;`;&lt;br /&gt;
            shipSched.innerHTML =  div + _HTMLdetails + &#039;&amp;lt;/div&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
        }&lt;br /&gt;
        else {&lt;br /&gt;
            t.innerHTML = updatedSched;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateGuilds(){&lt;br /&gt;
    if (!pageHasElement(timeElements.guilds)) return;&lt;br /&gt;
&lt;br /&gt;
    /* ALCHEMY */&lt;br /&gt;
	const page_alchemy_hours = document.getElementById(timeElements.guilds.alchemy);&lt;br /&gt;
    if ( page_alchemy_hours ) { page_alchemy_hours.innerHTML = _guildSchedule(schedule.guilds.alchemy);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_status = document.getElementById(timeElements.guilds.alchemy_status);&lt;br /&gt;
    if ( page_alchemy_status ) { page_alchemy_status.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_holiday = document.getElementById(timeElements.guilds.alchemy_holiday);&lt;br /&gt;
    if ( page_alchemy_holiday ) { page_alchemy_holiday.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_alchemy_timer = document.getElementById(timeElements.guilds.alchemy_timer);&lt;br /&gt;
    if ( page_alchemy_timer ) { page_alchemy_timer.innerHTML = _guildSchedule(schedule.guilds.alchemy, timeElements.guilds.alchemy_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* BONECRAFT */&lt;br /&gt;
	const page_bonecraft_hours = document.getElementById(timeElements.guilds.bonecrafting);&lt;br /&gt;
	if ( page_bonecraft_hours ) { page_bonecraft_hours.innerHTML = _guildSchedule(schedule.guilds.bonecrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_status = document.getElementById(timeElements.guilds.bonecraft_status);&lt;br /&gt;
    if ( page_bonecraft_status ) { page_bonecraft_status.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_holiday = document.getElementById(timeElements.guilds.bonecraft_holiday);&lt;br /&gt;
    if ( page_bonecraft_holiday ) { page_bonecraft_holiday.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_bonecraft_timer = document.getElementById(timeElements.guilds.bonecraft_timer);&lt;br /&gt;
    if ( page_bonecraft_timer ) { page_bonecraft_timer.innerHTML = _guildSchedule(schedule.guilds.bonecrafting, timeElements.guilds.bonecraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* CLOTHCRAFT */&lt;br /&gt;
	const page_clothcraft_hours = document.getElementById(timeElements.guilds.clothcrafting);&lt;br /&gt;
	if ( page_clothcraft_hours ) { page_clothcraft_hours.innerHTML = _guildSchedule(schedule.guilds.clothcrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_status = document.getElementById(timeElements.guilds.clothcraft_status);&lt;br /&gt;
    if ( page_clothcraft_status ) { page_clothcraft_status.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_holiday = document.getElementById(timeElements.guilds.clothcraft_holiday);&lt;br /&gt;
    if ( page_clothcraft_holiday ) { page_clothcraft_holiday.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_clothcraft_timer = document.getElementById(timeElements.guilds.clothcraft_timer);&lt;br /&gt;
    if ( page_clothcraft_timer ) { page_clothcraft_timer.innerHTML = _guildSchedule(schedule.guilds.clothcrafting, timeElements.guilds.clothcraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* COOKING */&lt;br /&gt;
	const page_cooking_hours = document.getElementById(timeElements.guilds.cooking);&lt;br /&gt;
	if ( page_cooking_hours ) { page_cooking_hours.innerHTML = _guildSchedule(schedule.guilds.cooking);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_status = document.getElementById(timeElements.guilds.cooking_status);&lt;br /&gt;
    if ( page_cooking_status ) { page_cooking_status.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_holiday = document.getElementById(timeElements.guilds.cooking_holiday);&lt;br /&gt;
    if ( page_cooking_holiday ) { page_cooking_holiday.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_cooking_timer = document.getElementById(timeElements.guilds.cooking_timer);&lt;br /&gt;
    if ( page_cooking_timer ) { page_cooking_timer.innerHTML = _guildSchedule(schedule.guilds.cooking, timeElements.guilds.cooking_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* FISHING */&lt;br /&gt;
	const page_fishing_hours = document.getElementById(timeElements.guilds.fishing);&lt;br /&gt;
	if ( page_fishing_hours ) { page_fishing_hours.innerHTML = _guildSchedule(schedule.guilds.fishing);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_status = document.getElementById(timeElements.guilds.fishing_status);&lt;br /&gt;
    if ( page_fishing_status ) { page_fishing_status.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_holiday = document.getElementById(timeElements.guilds.fishing_holiday);&lt;br /&gt;
    if ( page_fishing_holiday ) { page_fishing_holiday.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_fishing_timer = document.getElementById(timeElements.guilds.fishing_timer);&lt;br /&gt;
    if ( page_fishing_timer ) { page_fishing_timer.innerHTML = _guildSchedule(schedule.guilds.fishing, timeElements.guilds.fishing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* GOLDSMITHING */&lt;br /&gt;
	const page_goldsmithing_hours = document.getElementById(timeElements.guilds.goldsmithing);&lt;br /&gt;
	if ( page_goldsmithing_hours ) {  page_goldsmithing_hours.innerHTML = _guildSchedule(schedule.guilds.goldsmithing);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_status = document.getElementById(timeElements.guilds.goldsmithing_status);&lt;br /&gt;
    if ( page_goldsmithing_status ) { page_goldsmithing_status.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_holiday = document.getElementById(timeElements.guilds.goldsmithing_holiday);&lt;br /&gt;
    if ( page_goldsmithing_holiday ) { page_goldsmithing_holiday.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_goldsmithing_timer = document.getElementById(timeElements.guilds.goldsmithing_timer);&lt;br /&gt;
    if ( page_goldsmithing_timer ) { page_goldsmithing_timer.innerHTML = _guildSchedule(schedule.guilds.goldsmithing, timeElements.guilds.goldsmithing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* LEATHERCRAFT */&lt;br /&gt;
	const page_leathercraft_hours = document.getElementById(timeElements.guilds.leathercrafting);&lt;br /&gt;
	if ( page_leathercraft_hours ) { page_leathercraft_hours.innerHTML = _guildSchedule(schedule.guilds.leathercrafting);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_status = document.getElementById(timeElements.guilds.leathercraft_status);&lt;br /&gt;
    if ( page_leathercraft_status ) { page_leathercraft_status.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_holiday = document.getElementById(timeElements.guilds.leathercraft_holiday);&lt;br /&gt;
    if ( page_leathercraft_holiday ) { page_leathercraft_holiday.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_leathercraft_timer = document.getElementById(timeElements.guilds.leathercraft_timer);&lt;br /&gt;
    if ( page_leathercraft_timer ) { page_leathercraft_timer.innerHTML = _guildSchedule(schedule.guilds.leathercrafting, timeElements.guilds.leathercraft_timer);  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /* SMITHING */&lt;br /&gt;
	const page_smithing_hours = document.getElementById(timeElements.guilds.smithing);&lt;br /&gt;
	if ( page_smithing_hours ) { page_smithing_hours.innerHTML = _guildSchedule(schedule.guilds.smithing); } &lt;br /&gt;
&lt;br /&gt;
    const page_smithing_status = document.getElementById(timeElements.guilds.smithing_status);&lt;br /&gt;
    if ( page_smithing_status ) { page_smithing_status.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_smithing_holiday = document.getElementById(timeElements.guilds.smithing_holiday);&lt;br /&gt;
    if ( page_smithing_holiday ) { page_smithing_holiday.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_smithing_timer = document.getElementById(timeElements.guilds.smithing_timer);&lt;br /&gt;
    if ( page_smithing_timer ) { page_smithing_timer.innerHTML = _guildSchedule(schedule.guilds.smithing, timeElements.guilds.smithing_timer);  }&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
    /* WOODWORKING */&lt;br /&gt;
	const page_woodworking_hours = document.getElementById(timeElements.guilds.woodworking);&lt;br /&gt;
	if ( page_woodworking_hours ) { page_woodworking_hours.innerHTML = _guildSchedule(schedule.guilds.woodworking); } &lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_status = document.getElementById(timeElements.guilds.woodworking_status);&lt;br /&gt;
    if ( page_woodworking_status ) { page_woodworking_status.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_status);  }&lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_holiday = document.getElementById(timeElements.guilds.woodworking_holiday);&lt;br /&gt;
    if ( page_woodworking_holiday ) { page_woodworking_holiday.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_holiday);  }&lt;br /&gt;
&lt;br /&gt;
    const page_woodworking_timer = document.getElementById(timeElements.guilds.woodworking_timer);&lt;br /&gt;
    if ( page_woodworking_timer ) { page_woodworking_timer.innerHTML = _guildSchedule(schedule.guilds.woodworking, timeElements.guilds.woodworking_timer);  }&lt;br /&gt;
&lt;br /&gt;
    const page_allguilds_hours = document.getElementById(timeElements.guilds.all);&lt;br /&gt;
	if ( page_allguilds_hours ) {  &lt;br /&gt;
        &lt;br /&gt;
        var guildOut = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot;+ timeElements.guilds.all + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039; border=&#039;1px solid black&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;center&#039; WIDTH=100 &amp;gt;Guild&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TH ALIGN=&#039;center&#039; WIDTH=175 &amp;gt;Status&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Alchemy&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.alchemy)         + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Blacksmithing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +   _guildSchedule(schedule.guilds.smithing) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; bonecrafting&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +     _guildSchedule(schedule.guilds.bonecrafting) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Goldsmithing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +    _guildSchedule(schedule.guilds.goldsmithing) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Clothcrafting&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +   _guildSchedule(schedule.guilds.clothcrafting) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Woodworking&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +     _guildSchedule(schedule.guilds.woodworking) 	+ &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Leatherworking &amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; + _guildSchedule(schedule.guilds.leathercrafting) + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Fishing&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.fishing) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt; Cooking&amp;lt;/TH&amp;gt;&amp;lt;td&amp;gt;&amp;quot; +         _guildSchedule(schedule.guilds.cooking) 	    + &amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
        guildOut = guildOut + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
        page_allguilds_hours.innerHTML = guildOut; &lt;br /&gt;
    } &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _guildStatusCheck(guild, statusID) {&lt;br /&gt;
&lt;br /&gt;
    return outputText = [outputTxt1, outputTxt2];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _guildSchedule(guild, statusID) {&lt;br /&gt;
    &lt;br /&gt;
    if (guild === &#039;undefined&#039;) return &amp;quot;_guildSchedule: error&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    var now = vanatime.now_inMS();&lt;br /&gt;
    var guildOpens = guild[0] * 60 * 1000 / 25;&lt;br /&gt;
    var guildCloses = guild[1] * 60 * 1000 / 25;&lt;br /&gt;
&lt;br /&gt;
    // Guild open/close check&lt;br /&gt;
    var nextOpenTime = 0;&lt;br /&gt;
    var outputTxt1 = &amp;quot;&amp;quot;, outputTxt2 = &amp;quot;&amp;quot;;&lt;br /&gt;
    if (guildOpens &amp;gt;= now) {&lt;br /&gt;
        nextOpenTime = (((guildOpens - now) * 25) + vanatime.now_inEarthMS());&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Open tomorrow.&amp;quot;;&lt;br /&gt;
    } else if ((guildOpens &amp;lt; now) &amp;amp;&amp;amp; (guildCloses &amp;gt; now)) {&lt;br /&gt;
        nextOpenTime = (((guildCloses - now) * 25) + vanatime.now_inEarthMS());&lt;br /&gt;
        outputTxt1 = &amp;quot;Closes in: &amp;quot;;&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Open for business.&amp;quot;;&lt;br /&gt;
    } else if (guildCloses &amp;lt;= now)  {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25) - now  + guildOpens) * 25 + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;; &lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Open tomorrow.&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;status&#039;)) {&lt;br /&gt;
        // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
        // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
        return outputTxt2;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
&lt;br /&gt;
    // Holiday check &lt;br /&gt;
    if ((guild[2] == vanatime.weekDay()) &amp;amp;&amp;amp; (guildCloses &amp;gt; now)) {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25)  - now + guildOpens) * 25 + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed for Guild Holiday.&amp;quot;;&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp;statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
            // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
            // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
            return outputTxt2;&lt;br /&gt;
        }&lt;br /&gt;
    } else if (((vanatime.weekDay() + 1) == guild[2]) &amp;amp;&amp;amp; (guildCloses &amp;lt;= now))  {&lt;br /&gt;
        nextOpenTime = ((24 * 60 * 60 * 1000 / 25)  - now + guildOpens) * 25 + (24 * 60 * 60 * 1000 / 25) + vanatime.now_inEarthMS();&lt;br /&gt;
        outputTxt2 = &amp;quot;Currently Closed. Guild Holiday tomorrow.&amp;quot;;&lt;br /&gt;
        outputTxt1 = &amp;quot;Opens in: &amp;quot;;&lt;br /&gt;
        if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
            // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
            // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
            return outputTxt2;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp;statusID.includes(&#039;holiday&#039;)) {&lt;br /&gt;
        // outputTxt2 = [`&amp;lt;span id=\&#039;${statusID}\&#039;&amp;gt;`, outputTxt2].join(&#039;&#039;); &lt;br /&gt;
        // outputTxt2 = [outputTxt2, &#039;&amp;lt;/span&#039;].join(&#039;&#039;);&lt;br /&gt;
        return `Guild is not on holiday until ${vanatime.dayLabel(guild[2])}.`;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /****DEBUGGING*****/&lt;br /&gt;
    // if (guild == schedule.guilds.fishing) {&lt;br /&gt;
    //     console.log(guild[2], nextOpenTime, now, vanatime.timeUntil(nextOpenTime) );&lt;br /&gt;
    // }&lt;br /&gt;
    /****DEBUGGING*****/&lt;br /&gt;
&lt;br /&gt;
    if(typeof(statusID) == &#039;string&#039; &amp;amp;&amp;amp; statusID.includes(&#039;timer&#039;)) {&lt;br /&gt;
        return outputTxt1 + vanatime.timeUntil(nextOpenTime);&lt;br /&gt;
    }&lt;br /&gt;
    return outputTxt1 + vanatime.timeUntil(nextOpenTime) + &amp;quot;. &amp;quot; + outputTxt2;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function updateConquest()  {&lt;br /&gt;
    if (!pageHasElement(timeElements.conquest)) return;&lt;br /&gt;
    &lt;br /&gt;
    function stringNextConquest(remaining){&lt;br /&gt;
        //if (nextConquest === undefined) { return &amp;quot;stringConquestTimer: timer undefined&amp;quot;; }&lt;br /&gt;
        const now = new Date();&lt;br /&gt;
        remaining = now.getTime() + remaining;&lt;br /&gt;
&lt;br /&gt;
        var nextConquest = new Date(remaining);&lt;br /&gt;
        var tempHour = nextConquest.getHours();&lt;br /&gt;
        var tempMin  = nextConquest.getMinutes();&lt;br /&gt;
        var tempSec  = nextConquest.getSeconds();&lt;br /&gt;
&lt;br /&gt;
        if (tempHour &amp;lt; 10)  tempHour = &amp;quot;0&amp;quot; + tempHour; &lt;br /&gt;
        if (tempMin &amp;lt; 10)   tempMin  = &amp;quot;0&amp;quot; + tempMin;  &lt;br /&gt;
        if (tempSec &amp;lt; 10)   tempSec  = &amp;quot;0&amp;quot; + tempSec;  &lt;br /&gt;
&lt;br /&gt;
        var strNextConquest = nextConquest.toDateString() + &amp;quot; &amp;quot; + tempHour + &amp;quot;:&amp;quot; + tempMin + &amp;quot;:&amp;quot; + tempSec;&lt;br /&gt;
&lt;br /&gt;
            // var remaining = (temp.getTime() - now.getTime()) / (24 * 60 * 60 * 1000);&lt;br /&gt;
            // var hours = (remaining - Math.floor(remaining)) * 24;&lt;br /&gt;
            // var mins = (hours - Math.floor(hours)) * 60;&lt;br /&gt;
            // var secs = Math.floor((mins - Math.floor(mins)) * 60);&lt;br /&gt;
&lt;br /&gt;
            // remaining = Math.floor(remaining);&lt;br /&gt;
            // hours = Math.floor(hours);&lt;br /&gt;
            // mins = Math.floor(mins);&lt;br /&gt;
&lt;br /&gt;
            // if (hours &amp;lt; 10)  hours = &amp;quot;0&amp;quot; + hours; &lt;br /&gt;
            // if (mins &amp;lt; 10)   mins  = &amp;quot;0&amp;quot; + mins;  &lt;br /&gt;
            // if (secs &amp;lt; 10)   secs  = &amp;quot;0&amp;quot; + secs;  &lt;br /&gt;
&lt;br /&gt;
            // // tempDays &amp;lt; 10 ? [&amp;quot;0&amp;quot;, tempDays].join(&#039;:&#039;) : tempDays;&lt;br /&gt;
            // // tempDays &amp;gt; 0 ? [tempDays, strTimer].join(&#039;:&#039;) : null;&lt;br /&gt;
&lt;br /&gt;
            // strDiff = hours + &amp;quot;:&amp;quot; + mins + &amp;quot;:&amp;quot; + secs;&lt;br /&gt;
&lt;br /&gt;
        //return strNextConquest + &amp;quot;(&amp;quot; + strDiff + &amp;quot;)&amp;quot;;&lt;br /&gt;
        return strNextConquest + &amp;quot;(&amp;quot; + vanatime.timeUntil(nextConquest) + &amp;quot;)&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    const now = new Date();&lt;br /&gt;
    var remaining = vanatime.conquestRemainingTime();&lt;br /&gt;
    remainingVanaDaysOnConquest = vanatime.conquestRemainingVanaDays();&lt;br /&gt;
    &lt;br /&gt;
    conq = remainingVanaDaysOnConquest + &#039; Vana´diel Days &amp;lt;BR&amp;gt;&#039;;&lt;br /&gt;
    conq += stringNextConquest(remaining); //+ &#039; (&#039; + timer.getHours() + &amp;quot;:&amp;quot; + timer.getMinutes() + &amp;quot;:&amp;quot; + timer.getSeconds() + &#039;)&#039;;&lt;br /&gt;
&lt;br /&gt;
    const conquest_time = document.getElementById(timeElements.conquest);&lt;br /&gt;
    if (conquest_time) conquest_time.innerHTML = conq; &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function updateMoonPhaseSchedule(){&lt;br /&gt;
    if (!pageHasElement(timeElements.moonSchedule)) return;&lt;br /&gt;
&lt;br /&gt;
    populateMoonPhaseSchedule(timeElements.moonSchedule, 7);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _moonPhaseScheduleHeader(classname){&lt;br /&gt;
    var header = &amp;quot;&amp;lt;TABLE CLASS=&#039;&amp;quot; + classname + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;&#039; WIDTH=&#039;500&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TR &amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Moon Phase&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Start Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
	header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;End Time&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    //header += &amp;quot;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Phase Ends in...&amp;lt;/TH&amp;gt;&amp;quot;;&lt;br /&gt;
    header += &amp;quot;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
	return header;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function _moonPhaseScheduleBody(numberOfEntries){&lt;br /&gt;
    var html = &amp;quot;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    if ( numberOfEntries === undefined || numberOfEntries === null ) numberOfEntries = 7;&lt;br /&gt;
&lt;br /&gt;
    // DEBUGGING&lt;br /&gt;
    numberOfEntries = 7;&lt;br /&gt;
&lt;br /&gt;
        var vTempTime = vanatime.today_inMS() / (60 * 1000); // VANA TIME IN TOTAL MINUTES&lt;br /&gt;
        var thisMoonPhase = vanatime.moonLatentPhase(vTempTime); &lt;br /&gt;
&lt;br /&gt;
        var lunarOffset = 0, &lt;br /&gt;
            _time;&lt;br /&gt;
        for(var x = 0 ; x &amp;lt; numberOfEntries; x++ ){&lt;br /&gt;
&lt;br /&gt;
            if ( x &amp;gt; 0 ){&lt;br /&gt;
                lunarOffset += 7;&lt;br /&gt;
                if ( thisMoonPhase == 1 || thisMoonPhase == 3 || thisMoonPhase == 5 || thisMoonPhase == 7) {&lt;br /&gt;
                    _time = vTempTime + (60 * 24 * lunarOffset);&lt;br /&gt;
                    if ( vanatime.moonLatentPhase(_time) == thisMoonPhase) lunarOffset += 7;&lt;br /&gt;
                }&lt;br /&gt;
                //console.log(thisMoonPhase);&lt;br /&gt;
&lt;br /&gt;
                thisMoonPhase++;&lt;br /&gt;
                if (thisMoonPhase &amp;gt; 7) thisMoonPhase = 0;&lt;br /&gt;
                //console.log(thisMoonPhase);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            var phaseStartTime;&lt;br /&gt;
            for( var i = 1 ; i &amp;gt;= -13 ; i-- ) {&lt;br /&gt;
                _time = vTempTime + (60 * 24 * lunarOffset) + (60 * 24 * (i - 1)); // VANA MINUTES&lt;br /&gt;
            //console.log(&amp;quot;s&amp;quot;, thisMoonPhase, lunarOffset, vanatime.moonLatentPhase(_time));&lt;br /&gt;
                &lt;br /&gt;
                if ( vanatime.moonLatentPhase(_time) != thisMoonPhase ) {&lt;br /&gt;
                    //console.log( &amp;quot;start&amp;quot;, i, vanatime.moonLatentPhase(_time), thisMoonPhase );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
                else phaseStartTime = _time * 60; // VANA SECONDS&lt;br /&gt;
            }&lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
            var phaseEndTime; &lt;br /&gt;
            for( var i = -1 ; i &amp;lt;= 14 ; i++ ) {&lt;br /&gt;
                _time = vTempTime + (60 * 24 * lunarOffset) + (60 * 24 * (i + 1));// VANA MINUTES&lt;br /&gt;
            //console.log(&amp;quot;e&amp;quot;, thisMoonPhase,lunarOffset,vanatime.moonLatentPhase(_time));&lt;br /&gt;
            &lt;br /&gt;
                if ( vanatime.moonLatentPhase(_time) != thisMoonPhase ) {&lt;br /&gt;
                    //console.log( &amp;quot;end&amp;quot;, i, vanatime.moonLatentPhase(_time), thisMoonPhase );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
                else phaseEndTime = (_time + (60 * 24)) * 60; // VANA SECONDS&lt;br /&gt;
                // for loop breaks when _time is at 00:00 for the day the moon phase changes... &lt;br /&gt;
                // we add another day to this (60 + 24) to get the start of the next day for the table&lt;br /&gt;
            } &lt;br /&gt;
            &lt;br /&gt;
&lt;br /&gt;
            const startDate = new Date(Math.floor(phaseStartTime / (25 / 1000)) - vanatime.getDifference() );&lt;br /&gt;
            const endDate = new Date(Math.floor(phaseEndTime / (25 / 1000)) - vanatime.getDifference() );&lt;br /&gt;
&lt;br /&gt;
            var strDetails = vanatime.moonPhaseIcon(thisMoonPhase) + &amp;quot; &amp;quot; + vanatime.moonPhaseName(thisMoonPhase) + &amp;quot; &amp;quot;  + vanatime.moonPhasePercentages(thisMoonPhase);            &lt;br /&gt;
&lt;br /&gt;
            function dateString(date){&lt;br /&gt;
                var sec = date.getSeconds(), hrs = date.getHours(), mins = date.getMinutes(); &lt;br /&gt;
                sec &amp;lt; 10 ? sec = &amp;quot;0&amp;quot; + sec : sec;&lt;br /&gt;
                hrs &amp;lt; 10 ? hrs = &amp;quot;0&amp;quot; + hrs : hrs;&lt;br /&gt;
                mins &amp;lt; 10 ? mins = &amp;quot;0&amp;quot; + mins : mins;&lt;br /&gt;
                return vanatime.weekdayLabel(date.getDay()) + &amp;quot;, &amp;quot; + date.getDate() + &amp;quot; &amp;quot; + vanatime.monthLabel(date.getMonth()) + &amp;quot; &amp;quot; + hrs + &amp;quot;:&amp;quot; + mins + &amp;quot;:&amp;quot; + sec;&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            html += &#039;&amp;lt;TR &amp;gt;&amp;lt;TD&amp;gt;&#039; + strDetails + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + dateString(startDate) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + dateString(endDate)  + &#039;&amp;lt;/TD&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
            // const now = new Date();&lt;br /&gt;
            // var strTimer = vanatime.timer(endDate, now);&lt;br /&gt;
            // html += &#039;&amp;lt;TD&amp;gt;&#039; + strTimer + &#039;&amp;lt;/TD&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
            html += &#039;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
        }&lt;br /&gt;
    return html;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function populateMoonPhaseSchedule(classname, numberOfEntries){&lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    const moonSchedule = document.getElementById(classname);&lt;br /&gt;
    if (moonSchedule) {&lt;br /&gt;
        numberOfEntries = Number(moonSchedule.getAttribute(&#039;data-entries&#039;));&lt;br /&gt;
        if (numberOfEntries === undefined || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 7;&lt;br /&gt;
        else numberOfEntries = numberOfEntries * 7;&lt;br /&gt;
        var _HTMLheader = this._moonPhaseScheduleHeader(classname);&lt;br /&gt;
        var _HTMLbody = this._moonPhaseScheduleBody(numberOfEntries);&lt;br /&gt;
        moonSchedule.innerHTML = _HTMLheader + _HTMLbody + &amp;quot;&amp;lt;/TABLE&amp;gt;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function updateRSE()  {&lt;br /&gt;
    const rseclass = timeElements.rseSchedule;&lt;br /&gt;
    const rseSched = document.getElementById(rseclass);&lt;br /&gt;
	if (!rseSched) return;&lt;br /&gt;
    &lt;br /&gt;
        function formatDate(varTime, showDay) {&lt;br /&gt;
&lt;br /&gt;
            var varDate = new Date(varTime);&lt;br /&gt;
            var yyyy = varDate.getYear();&lt;br /&gt;
        &lt;br /&gt;
            var mm = varDate.getMonth() + 1;&lt;br /&gt;
            if (mm &amp;lt; 10) { mm = &amp;quot;0&amp;quot; + mm; }&lt;br /&gt;
        &lt;br /&gt;
            var dd = varDate.getDate();&lt;br /&gt;
            if (dd &amp;lt; 10) { dd = &amp;quot;0&amp;quot; + dd; }&lt;br /&gt;
        &lt;br /&gt;
            var day = varDate.getDay();&lt;br /&gt;
        &lt;br /&gt;
            var hh = varDate.getHours();&lt;br /&gt;
            &lt;br /&gt;
            if (hh &amp;lt; 10) { hh = &amp;quot;0&amp;quot; + hh; }&lt;br /&gt;
        &lt;br /&gt;
            var min = varDate.getMinutes();&lt;br /&gt;
            if (min &amp;lt; 10) { min = &amp;quot;0&amp;quot; + min; }&lt;br /&gt;
        &lt;br /&gt;
            var ss = varDate.getSeconds();&lt;br /&gt;
            if (ss &amp;lt; 10) { ss = &amp;quot;0&amp;quot; + ss; }&lt;br /&gt;
            if (showDay == 1)  {&lt;br /&gt;
            dateString = vanatime.weekdayLabel(day) + &amp;quot;, &amp;quot; + vanatime.monthLabel(mm-1) + &#039; &#039; + dd + &#039;, &#039; + yyyy + &amp;quot; &amp;quot; + hh + &amp;quot;:&amp;quot; + min + &amp;quot;:&amp;quot; + ss;&lt;br /&gt;
            } else if (showDay == 2)  {&lt;br /&gt;
            dateString = vanatime.monthLabel(mm-1) + &amp;quot; &amp;quot; + dd + &amp;quot;,  &amp;quot; + hh + &amp;quot;:&amp;quot; + min + &amp;quot;:&amp;quot; + ss;&lt;br /&gt;
            }&lt;br /&gt;
            return dateString;&lt;br /&gt;
        }&lt;br /&gt;
     &lt;br /&gt;
    var timenow = new Date();&lt;br /&gt;
    var localtime = timenow.getTime();&lt;br /&gt;
&lt;br /&gt;
    // ???&lt;br /&gt;
    var repeatCal = 8;&lt;br /&gt;
    &lt;br /&gt;
    var rowclass;&lt;br /&gt;
    var rowhighlight = true;&lt;br /&gt;
&lt;br /&gt;
    RSECal = &amp;quot;&amp;lt;TABLE CLASS=\&#039;&amp;quot; + rseclass + &amp;quot; vanatime-main-table&amp;quot; + &amp;quot;\&#039; WIDTH=&#039;500&#039; CELLSPACING=&#039;0&#039; CELLPADDING=&#039;0&#039;&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Date &amp;amp; Time&amp;lt;/TH&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Race&amp;lt;/TH&amp;gt;&amp;lt;TH ALIGN=&#039;LEFT&#039;&amp;gt;Location&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;&lt;br /&gt;
    &lt;br /&gt;
    var numberOfEntries = getSelectedNumberOfEntries(rseclass);&lt;br /&gt;
    if (numberOfEntries === &#039;undefined&#039; || numberOfEntries === null || numberOfEntries == 0 ) numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
    numberOfEntries = 1;&lt;br /&gt;
&lt;br /&gt;
    for( let n=1; n &amp;lt;= numberOfEntries; n++ ){ &lt;br /&gt;
        &lt;br /&gt;
       for ( i = 0; i &amp;lt; repeatCal; i++) {&lt;br /&gt;
          elapsedWeeks = Math.floor( (localtime - vanatime.rseDate) / (8 * (24 * 60 * 60 * 1000 / 25)) ) + i;&lt;br /&gt;
          RSEstart = vanatime.rseDate + (elapsedWeeks * 8 * (24 * 60 * 60 * 1000 / 25));&lt;br /&gt;
          &lt;br /&gt;
          if ( rowhighlight ) rowclass = `class=&amp;quot;vanatime-main-table-row-highlight&amp;quot;`;&lt;br /&gt;
          else rowclass = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
          RSECal = RSECal + &amp;quot;&amp;lt;TR &amp;quot; + rowclass + &amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEstart,2) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039; + vanatime.rseRace(elapsedWeeks % 8) + &#039;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&#039;;&lt;br /&gt;
          //RSECal = RSECal + &amp;quot;&amp;lt;A HREF=#  onmousedown=&#039;javascript:getRSEDetails(&amp;quot; + (elapsedWeeks % 3) + &amp;quot;)&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
          RSECal = RSECal + vanatime.rseLocation(elapsedWeeks % 3);&lt;br /&gt;
          RSECal = RSECal + &#039;&amp;lt;/A&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
          rowhighlight = !rowhighlight;&lt;br /&gt;
       }&lt;br /&gt;
    //   if (repeatCal &amp;lt; 1) { RSECal = &amp;quot;&amp;quot;; } &lt;br /&gt;
    //   else { RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;; }&lt;br /&gt;
    RSECal += &#039;&amp;lt;TR class=&amp;quot;vanatime-main-table-row-spacer&amp;quot;&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;;&lt;br /&gt;
    // else {&lt;br /&gt;
    //    RSECal = &amp;quot;&amp;lt;TABLE CLASS=&#039;blank&#039; CELLPADDING=&#039;0&#039; CELLSPACING=&#039;0&#039;&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH WIDTH=&#039;120&#039; ALIGN=&#039;LEFT&#039;&amp;gt;Start&amp;lt;/TH&amp;gt;&amp;lt;TH WIDTH=&#039;120&#039; ALIGN=&#039;LEFT&#039;&amp;gt;End&amp;lt;/TH&amp;gt;&amp;lt;TH WIDTH=&#039;60&#039; ALIGN=&#039;LEFT&#039;&amp;gt;Location&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;&lt;br /&gt;
    //    offsetTime = race * 8 * msGameDay;&lt;br /&gt;
 &lt;br /&gt;
    //    for ( i = 0; i &amp;lt; repeatCal; i++) {&lt;br /&gt;
    //       elapsedWeeks = Math.floor( (localtime - vanatime.rseDate) / (64 * msGameDay) ) + i;&lt;br /&gt;
          &lt;br /&gt;
    //       elapsedLocationWeeks = Math.floor( (localtime - vanatime.rseDate) / (8 * msGameDay) ) + (8 * i);&lt;br /&gt;
    //       raceOffset = race - (elapsedLocationWeeks % 8);&lt;br /&gt;
    //       elapsedLocationWeeks = elapsedLocationWeeks + raceOffset;&lt;br /&gt;
 &lt;br /&gt;
    //       RSEstart = vanatime.rseDate + (elapsedWeeks * 64 * msGameDay) + offsetTime ;&lt;br /&gt;
    //       RSEend = RSEstart + (8 * msGameDay);&lt;br /&gt;
    //       RSECal = RSECal + &amp;quot;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEstart,2) + &amp;quot;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;quot; + formatDate(RSEend,2) + &amp;quot;&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&amp;quot;;&lt;br /&gt;
    //       //RSECal = RSECal + &amp;quot;&amp;lt;A HREF=#  onmousedown=&#039;javascript:getRSEDetails(&amp;quot; + (elapsedLocationWeeks % 3) + &amp;quot;)&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
    //       RSECal = RSECal + RSEloc[(elapsedLocationWeeks) % 3] &lt;br /&gt;
    //       RSECal = RSECal + &amp;quot;&amp;lt;/A&amp;gt;&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;quot;;&lt;br /&gt;
    //    }&lt;br /&gt;
    //   if (repeatCal &amp;lt; 1) { RSECal = &amp;quot;&amp;quot;; } else { RSECal = RSECal + &#039;&amp;lt;/TABLE&amp;gt;&#039;; }&lt;br /&gt;
 &lt;br /&gt;
    // }&lt;br /&gt;
&lt;br /&gt;
    const classname_details = rseclass + &amp;quot;-details&amp;quot;;&lt;br /&gt;
    let t = document.getElementsByClassName(classname_details)[0];&lt;br /&gt;
    var _HTMLdetails = &#039;&#039;;&lt;br /&gt;
    //console.log(t);&lt;br /&gt;
    if ( t === &#039;undefined&#039; || t === null || !t ){&lt;br /&gt;
        &lt;br /&gt;
        var temp = expandTableSelection(rseclass); &lt;br /&gt;
        if ( !temp ) temp = &amp;quot;&amp;quot;;&lt;br /&gt;
        const div = &#039;&amp;lt;div class=&amp;quot;vanatime-main-table&amp;quot;&amp;gt;&#039; + temp ;&lt;br /&gt;
        _HTMLdetails = `&amp;lt;span class=&amp;quot;${classname_details}&amp;quot;&amp;gt;${RSECal}&amp;lt;/span&amp;gt;`;&lt;br /&gt;
        rseSched.innerHTML =  div + _HTMLdetails + &#039;&amp;lt;/div&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    else {&lt;br /&gt;
        console.log(t);&lt;br /&gt;
        t.innerHTML = RSECal;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    //document.getElementById(rseclass).innerHTML = RSECal;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
function expandTableSelection(classname){&lt;br /&gt;
&lt;br /&gt;
    const classnameheader = classname + &amp;quot;-header&amp;quot;;&lt;br /&gt;
    const classnameshowSelect = classname + &amp;quot;-showSelect&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    if ( classname == timeElements.rseSchedule ) {&lt;br /&gt;
        return `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;All &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;M. Hume&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;F. Hume&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;M. Elvaan&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;4&amp;quot;&amp;gt;F. Elvaan&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;5&amp;quot;&amp;gt;M. TaruTaru&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;6&amp;quot;&amp;gt;F. TaruTaru&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;7&amp;quot;&amp;gt;Mithra&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;8&amp;quot;&amp;gt;Galka&amp;lt;/option&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;1 &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;3&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;5&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;10&amp;lt;/option&amp;gt;&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function expandRaceTable(classname){&lt;br /&gt;
    const classnameheader = classname + &amp;quot;-header&amp;quot;;&lt;br /&gt;
    const classnameshowSelect = classname + &amp;quot;-showSelect&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    const temp = `&lt;br /&gt;
        &amp;lt;div class=&amp;quot;${classnameheader}&amp;quot; style=&amp;quot;background:#FFFFFF00; width: max-content; float: right;&amp;quot;&amp;gt;Shown:&lt;br /&gt;
        &amp;lt;select id=&amp;quot;${classnameshowSelect}&amp;quot; style=&amp;quot;background:#DFDFDF50; &amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;0&amp;quot;&amp;gt;1 &amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;1&amp;quot;&amp;gt;3&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;2&amp;quot;&amp;gt;5&amp;lt;/option&amp;gt;&lt;br /&gt;
            &amp;lt;option value=&amp;quot;3&amp;quot;&amp;gt;10&amp;lt;/option&amp;gt;&lt;br /&gt;
        &amp;lt;/select&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    `;&lt;br /&gt;
    &lt;br /&gt;
    // return popupButton;&lt;br /&gt;
    return temp;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function getSelectedNumberOfEntries(classname){&lt;br /&gt;
    // Number of entries comes from selection dropdown&lt;br /&gt;
    var e = document.getElementById(classname + &amp;quot;-showSelect&amp;quot;);&lt;br /&gt;
    if ( !e ) return 1;&lt;br /&gt;
    var entries;&lt;br /&gt;
    switch(e.value) {&lt;br /&gt;
        case &amp;quot;1&amp;quot;:&lt;br /&gt;
            entries = 3;&lt;br /&gt;
          break;&lt;br /&gt;
        case &amp;quot;2&amp;quot;:&lt;br /&gt;
            entries = 5;&lt;br /&gt;
          break;&lt;br /&gt;
        case &amp;quot;3&amp;quot;:&lt;br /&gt;
            entries = 10;&lt;br /&gt;
          break;&lt;br /&gt;
        default:&lt;br /&gt;
            entries = 1;&lt;br /&gt;
      } &lt;br /&gt;
    //console.log(classname + &amp;quot;:&amp;quot; + entries);&lt;br /&gt;
    return entries;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function gametick(){&lt;br /&gt;
    &lt;br /&gt;
    updateSidebar();&lt;br /&gt;
    updateAirshipSchedule();&lt;br /&gt;
    updateBoatSchedule();&lt;br /&gt;
    updateGuilds();&lt;br /&gt;
	updateConquest();&lt;br /&gt;
    updateMoonPhaseSchedule();&lt;br /&gt;
    updateRSE();&lt;br /&gt;
&lt;br /&gt;
	setTimeout(&amp;quot;gametick()&amp;quot;, 1000);&lt;br /&gt;
    //console.log(&#039;gametick&#039;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
gametick();&lt;br /&gt;
&lt;br /&gt;
async function fetchWithTimeout(resource, options = {}) {&lt;br /&gt;
    const { timeout = 10000 } = options;&lt;br /&gt;
&lt;br /&gt;
    const controller = new AbortController();&lt;br /&gt;
    const id = setTimeout(() =&amp;gt; controller.abort(), timeout);&lt;br /&gt;
&lt;br /&gt;
    const response = await fetch(resource, {&lt;br /&gt;
      ...options,&lt;br /&gt;
      signal: controller.signal&lt;br /&gt;
    });&lt;br /&gt;
    clearTimeout(id);&lt;br /&gt;
&lt;br /&gt;
    return response;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
async function populationFetch(){&lt;br /&gt;
&lt;br /&gt;
    try {&lt;br /&gt;
        const response = await fetchWithTimeout(&#039;https://api.hugin.gg/online&#039;, {});&lt;br /&gt;
        const fetchedPopulation = await response.json();&lt;br /&gt;
        //if ( typeof(fetchedPopulation) == &#039;number&#039; ) currentPopulation = fetchedPopulation;&lt;br /&gt;
        //console.log(fetchedPopulation);&lt;br /&gt;
        //return games;&lt;br /&gt;
        //console.log(&#039;populationFetchTick&#039;, fetchedPopulation);&lt;br /&gt;
        //populationFetch();&lt;br /&gt;
        currentPopulation = fetchedPopulation;&lt;br /&gt;
        setTimeout(&amp;quot;startPopulationFetch()&amp;quot;, 300000);&lt;br /&gt;
      } catch (error) {&lt;br /&gt;
        //fetched = 0;&lt;br /&gt;
        console.log(error.name === &#039;AbortError&#039;);&lt;br /&gt;
        startPopulationFetch();&lt;br /&gt;
      }&lt;br /&gt;
      //console.log(&#039;currentPopulation = &#039;, currentPopulation);&lt;br /&gt;
&lt;br /&gt;
      //return fetched;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function startPopulationFetch(){&lt;br /&gt;
    //console.log(&#039;startPopulationFetch&#039;);&lt;br /&gt;
    populationFetch();&lt;br /&gt;
    // if ( currentPopulation == 0) startPopulationFetch();&lt;br /&gt;
    // else setTimeout(&amp;quot;startPopulationFetch()&amp;quot;, 7000);&lt;br /&gt;
}&lt;br /&gt;
startPopulationFetch();&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=HAAP.I&amp;diff=52108</id>
		<title>HAAP.I</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=HAAP.I&amp;diff=52108"/>
		<updated>2024-06-16T10:15:13Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Sells: */ Weekly limits&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{NPC&lt;br /&gt;
| image =  HAAP.I.png&lt;br /&gt;
| name =  HAAP.I&lt;br /&gt;
| gender = &lt;br /&gt;
| race = &lt;br /&gt;
| bestiary = Automaton&lt;br /&gt;
| job = &lt;br /&gt;
| affiliation = &lt;br /&gt;
| occupation = &lt;br /&gt;
| status = &lt;br /&gt;
| relatives = &lt;br /&gt;
| type = &lt;br /&gt;
| type add = &lt;br /&gt;
| merchant region = &lt;br /&gt;
| location = {{Location|Selbina|H-8}} &lt;br /&gt;
| description = &lt;br /&gt;
| starts quests = &lt;br /&gt;
| starts missions = &lt;br /&gt;
| involved in quests = &lt;br /&gt;
| involved in missions = &lt;br /&gt;
| involved in events = &lt;br /&gt;
| quote =&lt;br /&gt;
| dialogue = &lt;br /&gt;
| notes = {{Changes|Horizon XI custom NPC}} This is a Horizon XI custom NPC. He is part of the [[Horizon Adventuring Assistance Program]]&lt;br /&gt;
| historical background = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Sells:===&lt;br /&gt;
{| class=&amp;quot;npc-table horizon-table table-sm sortable&amp;quot;&lt;br /&gt;
! width=&amp;quot;40%&amp;quot; | Items&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Price&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Caps&lt;br /&gt;
|-&lt;br /&gt;
|[[Beastmen&#039;s Seal]]&lt;br /&gt;
|1x [[HAAP Points]]&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|[[Kindred&#039;s Seal]]&lt;br /&gt;
|2x [[HAAP Points]]&lt;br /&gt;
|5x&lt;br /&gt;
|-&lt;br /&gt;
|[[Ginuva&#039;s Battle Theory]]&lt;br /&gt;
|1x [[HAAP Points]]&lt;br /&gt;
|3x&lt;br /&gt;
|-&lt;br /&gt;
|[[Schultz Stratagems]]&lt;br /&gt;
|2x [[HAAP Points]]&lt;br /&gt;
|2x&lt;br /&gt;
|-&lt;br /&gt;
|[[Dragon Chronicles]]&lt;br /&gt;
|2x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Miratete&#039;s Memoirs]]&lt;br /&gt;
|4x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Aern Axe II]]&lt;br /&gt;
|250x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Aern Spear II]]&lt;br /&gt;
|250x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Aern Dagger II]]&lt;br /&gt;
|250x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Aern Staff II]]&lt;br /&gt;
|250x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|-&lt;br /&gt;
|[[Aern Sword II]]&lt;br /&gt;
|250x [[HAAP Points]]&lt;br /&gt;
|1x&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Ninja%27s_Garb_Set&amp;diff=51522</id>
		<title>Ninja&#039;s Garb Set</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Ninja%27s_Garb_Set&amp;diff=51522"/>
		<updated>2024-05-21T14:40:20Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:armor]][[category:Armor Sets]]&lt;br /&gt;
[[File:Ninja&#039;s Garb Set.JPG|thumb|All five races in full Ninja&#039;s Garb.]]&lt;br /&gt;
Ninjas are practitioners of martial arts from the Far East. Stealth, speed and the art of hitting with dual-wielded katanas and throwing shuriken - these statistics are enhanced with this set. The entire black colored set fits perfectly for ninjas. For a fee you can store the set at any [[Armor Storer]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See Also:&#039;&#039; [[Ninja&#039;s Garb +1 Set]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Number of Pieces:&#039;&#039;&#039; 5&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Storage Options:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Armor Depository]]&#039;&#039;&#039; 500 gil for set on pick up.&amp;lt;br&amp;gt;&lt;br /&gt;
Will receive [[Ninja&#039;s garb claim slip]] upon trading whole set to npc.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Porter Moogle]]&#039;&#039;&#039; with [[Moogle Storage Slip 04]]&amp;lt;br&amp;gt;&lt;br /&gt;
Can store single pieces.&lt;br /&gt;
&lt;br /&gt;
:{| width=&amp;quot;80%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
|-  style=&amp;quot;background:#ffdead;&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
! width=&amp;quot;5%&amp;quot; | &#039;&#039;&#039;Level&#039;&#039;&#039;&lt;br /&gt;
! width=&amp;quot;45%&amp;quot; | &#039;&#039;&#039;Armor Piece&#039;&#039;&#039;&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; | &#039;&#039;&#039;Obtained From&#039;&#039;&#039;&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
| 56&lt;br /&gt;
| &#039;&#039;&#039;[[Ninja Hatsuburi]]&#039;&#039;&#039; {{rare|nc}}{{exclusive|nc}}&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[[:category:Head|Head]]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; All Races&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;DEF:&#039;&#039;&#039; 21 &#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +10 &#039;&#039;&#039;[[AGI]]&#039;&#039;&#039; +3 &#039;&#039;&#039;[[CHR]]&#039;&#039;&#039; +5 {{Resist Ice}} +10&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Ninjutsu Skill|Ninjutsu skill]]&#039;&#039;&#039; +5&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lv.&#039;&#039;&#039; 56 &#039;&#039;&#039;[[NIN]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|Prerequisite: [[Borghertz&#039;s Lurking Hands]]*&amp;lt;br&amp;gt;&lt;br /&gt;
Coffer: [[The Boyahda Tree]]&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
| 58&lt;br /&gt;
| &#039;&#039;&#039;[[Ninja Chainmail]]&#039;&#039;&#039; {{rare|nc}}{{exclusive|nc}}&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[[:category:body|Body]]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; All Races&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;DEF:&#039;&#039;&#039; 41 &#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +15 &#039;&#039;&#039;[[VIT]]&#039;&#039;&#039; +3&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Enhances &amp;quot;[[Dual Wield]]&amp;quot; effect&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Damage#Physical Damage|Physical damage]]: &amp;quot;[[Blaze Spikes]]&amp;quot; effect&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lv.&#039;&#039;&#039; 58 &#039;&#039;&#039;[[NIN]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|Prerequisite: [[I&#039;ll Take the Big Box]]&amp;lt;br&amp;gt;&lt;br /&gt;
Quest: [[True Will]]&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
| 60&lt;br /&gt;
| &#039;&#039;&#039;[[Ninja Tekko]]&#039;&#039;&#039; {{rare|nc}}{{exclusive|nc}}&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[[:category:Hands|Hands]]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; All Races&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;DEF:&#039;&#039;&#039; 14 &#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +13 &#039;&#039;&#039;[[DEX]]&#039;&#039;&#039; +3&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Ranged Attack]]&#039;&#039;&#039; +20&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[:category:Throwing|Throwing skill]]&#039;&#039;&#039; +5&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lv.&#039;&#039;&#039; 60 &#039;&#039;&#039;[[NIN]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|Prerequisite: [[I&#039;ll Take the Big Box]]&amp;lt;br&amp;gt;&lt;br /&gt;
Quest: [[Borghertz&#039;s Lurking Hands]]&amp;lt;br&amp;gt;&lt;br /&gt;
Coffer: [[Ifrit&#039;s Cauldron]]&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
| 52&lt;br /&gt;
| &#039;&#039;&#039;[[Ninja Hakama]]&#039;&#039;&#039; {{rare|nc}}{{exclusive|nc}}&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[[:category:Legs|Legs]]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; All Races&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;DEF:&#039;&#039;&#039; 29 &#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +15 &#039;&#039;&#039;[[Ranged Accuracy]]&#039;&#039;&#039; +10&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Nighttime]]: [[Evasion]]&#039;&#039;&#039; +10&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lv.&#039;&#039;&#039; 52 &#039;&#039;&#039;[[NIN]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
| Quest: [[I&#039;ll Take the Big Box]]&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
| 54&lt;br /&gt;
| &#039;&#039;&#039;[[Ninja Kyahan]]&#039;&#039;&#039; {{rare|nc}}{{exclusive|nc}}&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[[:category:Feet|Feet]]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; All Races&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;DEF:&#039;&#039;&#039; 12 &#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +12 &#039;&#039;&#039;[[AGI]]&#039;&#039;&#039; +4&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Nighttime]]: [[Movement Speed|Movement speed]]&#039;&#039;&#039; +25%&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lv.&#039;&#039;&#039; 54 &#039;&#039;&#039;[[NIN]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|Prerequisite: [[Borghertz&#039;s Lurking Hands]]*&amp;lt;br&amp;gt;&lt;br /&gt;
Coffer: [[Sea Serpent Grotto]]&lt;br /&gt;
|- style=&amp;quot;background:#e3e6ff;&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&#039;&#039; The [[Ninja Hatsuburi]] &amp;amp; [[Ninja Kyahan]] don&#039;t require you to finish [[Borghertz&#039;s Lurking Hands]]. They just require that you have started this quest. Once the quest has been started you can go open their respective coffers and get the armor. YOU MUST OPEN THE COFFERS ON NINJA.&#039;&#039;&lt;br /&gt;
:* To see a side by side comparison of Artifact/Relic sets visit [[Ninja Artifact/Relic Sets Comparison]]. &lt;br /&gt;
&lt;br /&gt;
==Set Summary==&lt;br /&gt;
*&#039;&#039;&#039;[[Defense]]&#039;&#039;&#039; +117&lt;br /&gt;
*&#039;&#039;&#039;[[HP]]&#039;&#039;&#039; +65&lt;br /&gt;
*&#039;&#039;&#039;[[DEX]]&#039;&#039;&#039; +3&lt;br /&gt;
*&#039;&#039;&#039;[[AGI]]&#039;&#039;&#039; +4&lt;br /&gt;
*&#039;&#039;&#039;[[VIT]]&#039;&#039;&#039; +3&lt;br /&gt;
*&#039;&#039;&#039;[[CHR]]&#039;&#039;&#039; +5&lt;br /&gt;
*{{Resist Ice}} +10&lt;br /&gt;
*&#039;&#039;&#039;[[Ranged Accuracy]]&#039;&#039;&#039; +10&lt;br /&gt;
*&#039;&#039;&#039;[[Ranged Attack]]&#039;&#039;&#039; +20&lt;br /&gt;
*&#039;&#039;&#039;[[Ninjutsu Skill|Ninjutsu skill]]&#039;&#039;&#039; +5&lt;br /&gt;
*&#039;&#039;&#039;[[:category:Throwing|Throwing skill]]&#039;&#039;&#039; +5&lt;br /&gt;
*&#039;&#039;&#039;[[Nighttime]]: [[Evasion]]&#039;&#039;&#039; +10&lt;br /&gt;
*&#039;&#039;&#039;[[Nighttime]]: [[Movement Speed|Movement speed]]&#039;&#039;&#039; +25%&lt;br /&gt;
*&#039;&#039;&#039;Enhances &amp;quot;[[Dual Wield]]&amp;quot; effect&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Damage#Physical Damage|Physical damage]]: &amp;quot;[[Blaze Spikes]]&amp;quot; effect&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51521</id>
		<title>Ninja Hatsuburi</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51521"/>
		<updated>2024-05-21T14:39:46Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Statistics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&lt;br /&gt;
[[Category:Artifact Armor]][[Category:Ninja]]&lt;br /&gt;
&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|Ninja-hatsuburi.png|Ninja Hatsuburi}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = Armor&lt;br /&gt;
| name = Ninja hatsuburi&lt;br /&gt;
| tags = {{Rare}}{{Exclusive}}&lt;br /&gt;
| slot = Head&lt;br /&gt;
| stats = {{stat|def|21}} {{stat|hp|+10}} {{stat|agi|+3}} {{stat|chr|+5}} {{stat|ice resistance|+10}} &amp;lt;br&amp;gt;{{stat|Ninjutsu Skill|+5}}&lt;br /&gt;
| level = 56&lt;br /&gt;
| jobs = [[NIN]]&lt;br /&gt;
| set = Ninja&#039;s Garb Set&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Horizon Changes {{changes}}==&lt;br /&gt;
AGI+3 was added&lt;br /&gt;
&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| resale price = none&lt;br /&gt;
| upgrade artifact armor = Ninja Hatsuburi +1&lt;br /&gt;
}}&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Undeliverable Exclusive}}&lt;br /&gt;
===Quest===&lt;br /&gt;
*[[Borghertz&#039;s Lurking Hands]] ([[The Boyahda Tree]] [[Treasure Coffer|Coffer]])&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51520</id>
		<title>Ninja Hatsuburi</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51520"/>
		<updated>2024-05-21T14:39:24Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: /* Horizon Changes {{changes}} */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&lt;br /&gt;
[[Category:Artifact Armor]][[Category:Ninja]]&lt;br /&gt;
&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|Ninja-hatsuburi.png|Ninja Hatsuburi}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = Armor&lt;br /&gt;
| name = Ninja hatsuburi&lt;br /&gt;
| tags = {{Rare}}{{Exclusive}}&lt;br /&gt;
| slot = Head&lt;br /&gt;
| stats = {{stat|def|21}} {{stat|hp|+10}} {{stat|chr|+5}} {{stat|ice resistance|+10}} &amp;lt;br&amp;gt;{{stat|Ninjutsu Skill|+5}}&lt;br /&gt;
| level = 56&lt;br /&gt;
| jobs = [[NIN]]&lt;br /&gt;
| set = Ninja&#039;s Garb Set&lt;br /&gt;
}}&lt;br /&gt;
==Horizon Changes {{changes}}==&lt;br /&gt;
AGI+3 was added&lt;br /&gt;
&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| resale price = none&lt;br /&gt;
| upgrade artifact armor = Ninja Hatsuburi +1&lt;br /&gt;
}}&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Undeliverable Exclusive}}&lt;br /&gt;
===Quest===&lt;br /&gt;
*[[Borghertz&#039;s Lurking Hands]] ([[The Boyahda Tree]] [[Treasure Coffer|Coffer]])&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51519</id>
		<title>Ninja Hatsuburi</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Ninja_Hatsuburi&amp;diff=51519"/>
		<updated>2024-05-21T14:39:04Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&lt;br /&gt;
[[Category:Artifact Armor]][[Category:Ninja]]&lt;br /&gt;
&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|Ninja-hatsuburi.png|Ninja Hatsuburi}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = Armor&lt;br /&gt;
| name = Ninja hatsuburi&lt;br /&gt;
| tags = {{Rare}}{{Exclusive}}&lt;br /&gt;
| slot = Head&lt;br /&gt;
| stats = {{stat|def|21}} {{stat|hp|+10}} {{stat|chr|+5}} {{stat|ice resistance|+10}} &amp;lt;br&amp;gt;{{stat|Ninjutsu Skill|+5}}&lt;br /&gt;
| level = 56&lt;br /&gt;
| jobs = [[NIN]]&lt;br /&gt;
| set = Ninja&#039;s Garb Set&lt;br /&gt;
}}&lt;br /&gt;
==Horizon Changes {{changes}}==&lt;br /&gt;
???&lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| resale price = none&lt;br /&gt;
| upgrade artifact armor = Ninja Hatsuburi +1&lt;br /&gt;
}}&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Undeliverable Exclusive}}&lt;br /&gt;
===Quest===&lt;br /&gt;
*[[Borghertz&#039;s Lurking Hands]] ([[The Boyahda Tree]] [[Treasure Coffer|Coffer]])&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=File:Ninja-hatsuburi.png&amp;diff=51518</id>
		<title>File:Ninja-hatsuburi.png</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=File:Ninja-hatsuburi.png&amp;diff=51518"/>
		<updated>2024-05-21T14:38:48Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Quu_Domi_the_Gallant&amp;diff=51122</id>
		<title>Quu Domi the Gallant</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Quu_Domi_the_Gallant&amp;diff=51122"/>
		<updated>2024-05-11T19:25:42Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Horizon-specific drop change&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Lottery Spawn Notorious Monsters]]&lt;br /&gt;
{{Infobox Monster&lt;br /&gt;
| job = [[Ninja]]&lt;br /&gt;
| family = Yagudo&lt;br /&gt;
| crystal = Wind&lt;br /&gt;
| weaknesses = {{Element|Ice}}&lt;br /&gt;
| type = Notorious Monster&lt;br /&gt;
| image = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nms horizon-table table-xl&amp;quot;&lt;br /&gt;
! Zone || Level || Drops || Steal || Spawns || Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Castle Oztroja]]&lt;br /&gt;
|36&lt;br /&gt;
|&lt;br /&gt;
*[[Sarutobi Kyahan]] {{Hxi Drop Rate|asb=false|0|0}} {{changes}}&lt;br /&gt;
*[[Strider Sword]] {{Hxi Drop Rate|asb=false|0|0}}&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
*&lt;br /&gt;
|1&lt;br /&gt;
|A, L, S {{HPMP|low hp=2000|high hp=2400|low mp=none}}&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|&lt;br /&gt;
{{Monster Notes}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
*[[Lottery Spawn]] from the [[Yagudo Herald]] and [[Yagudo Oracle]] at (H-7) and (H-8) in the courtyard, on map 6 (South Courtyard) in [[Castle Oztroja]].&lt;br /&gt;
**Placeholder IDs are 09B [[Yagudo Herald]] and 09C [[Yagudo Oracle]]&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
	<entry>
		<id>https://horizonffxi.wiki/w/index.php?title=Kuftal_Coffer_Key&amp;diff=50321</id>
		<title>Kuftal Coffer Key</title>
		<link rel="alternate" type="text/html" href="https://horizonffxi.wiki/w/index.php?title=Kuftal_Coffer_Key&amp;diff=50321"/>
		<updated>2024-05-03T05:44:34Z</updated>

		<summary type="html">&lt;p&gt;Hugin8484: Removed reference to French version of the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item Sections}}&amp;lt;section begin=&amp;quot;Item Image&amp;quot;/&amp;gt;{{Item Image|KuftalCofferKey.jpg|Kuftal Coffer Key}}&amp;lt;section end=&amp;quot;Item Image&amp;quot;/&amp;gt;&lt;br /&gt;
==Statistics==&lt;br /&gt;
{{Item Statistics&lt;br /&gt;
| type = coffer key&lt;br /&gt;
| icon id = 1051&lt;br /&gt;
| name = Kuftal coffer key&lt;br /&gt;
| tags = {{Rare}}{{Exclusive}}&lt;br /&gt;
| description = A key that opens a treasure coffer in&amp;lt;br&amp;gt;the [[Kuftal Tunnel]].&lt;br /&gt;
}}&lt;br /&gt;
===Possible Treasure===&lt;br /&gt;
*7,000 - 14,400 gil&lt;br /&gt;
*[[Aquamarine]]&lt;br /&gt;
*{{KeyItem}}[[Challenge to the Royal Knights]]*&lt;br /&gt;
*[[Chrysoberyl]]&lt;br /&gt;
*[[Fluorite]]&lt;br /&gt;
*[[Jadeite]]&lt;br /&gt;
*{{KeyItem}}[[Large Trick Box]]*&lt;br /&gt;
*{{KeyItem}}[[Map of the Kuftal Tunnel]]**&lt;br /&gt;
*[[Moonstone]]&lt;br /&gt;
*{{KeyItem}}[[Old Gauntlets|Old Gauntlets (SAM)]]*&lt;br /&gt;
*[[Painite]]&lt;br /&gt;
*[[Sunstone]]&lt;br /&gt;
*[[Zircon]]&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; Only available if you have the necessary quest active.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;**&amp;lt;/nowiki&amp;gt; Automatically received if you do not already have the map. Quest items take priority. &lt;br /&gt;
==Other Uses==&lt;br /&gt;
{{Used In&lt;br /&gt;
| quest = Borghertz&#039;s Loyal Hands&lt;br /&gt;
| quest descriptor = SAM AF&lt;br /&gt;
| quest 2 = Knight Stalker&lt;br /&gt;
| quest 2 descriptor = DRG AF&lt;br /&gt;
| quest 3 = True Will&lt;br /&gt;
| quest 3 descriptor = NIN AF&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
| gobbie mystery box = 50&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
| resale price = none&lt;br /&gt;
}}&lt;br /&gt;
==Treasure Maps==&lt;br /&gt;
[[File:KuftalTunnelChests1.png|100px|Coffers on [[Kuftal Tunnel]]&#039;s first map]]&lt;br /&gt;
[[File:KuftalTunnelChests2.png|100px|Coffers on [[Kuftal Tunnel]]&#039;s second map]]&lt;br /&gt;
==How to Obtain==&lt;br /&gt;
{{AH|Exclusive}}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
===[[Curio Vendor Moogle]]===&lt;br /&gt;
{{Curio Vendor Moogle|5,000|Ochre}}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
===Dropped By===&lt;br /&gt;
{| class=&amp;quot;ffxi-table wide-table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! Level&lt;br /&gt;
! Zone&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[Scavenger Crab]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 60-62&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
:&#039;&#039;Spawned by Fishing&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| [[Stygian Pugil]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 64-66&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
:&#039;&#039;Spawned by Fishing&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| [[Cave Worm]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 60-63&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Haunt]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 60-63&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sabotender Sediendo]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 64-67&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Robber Crab]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 60-63&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Sand Lizard]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 61-64&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Recluse Spider]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 63-66&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|-&lt;br /&gt;
| [[Deinonychus]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 65-68&lt;br /&gt;
| [[Kuftal Tunnel]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Hugin8484</name></author>
	</entry>
</feed>