<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.horizonsend.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gutin</id>
	<title>Horizon&#039;s End Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.horizonsend.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gutin"/>
	<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php/Special:Contributions/Gutin"/>
	<updated>2026-09-14T04:23:14Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.5</generator>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12346</id>
		<title>Steve Gutin</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12346"/>
		<updated>2026-08-29T20:41:05Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox player&lt;br /&gt;
|name = Steve Gutin&lt;br /&gt;
|nationalities = [[Gutin War Cult]] &amp;lt;small&amp;gt;(formerly)&amp;lt;/small&amp;gt;&amp;lt;br&amp;gt;[[Hellfire]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Steve Gutin is a player, and was the head diety and true leader of [[Gutin War Cult]].&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:Steve Gutin}}&lt;br /&gt;
[[Category: People]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12345</id>
		<title>Steve Gutin</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12345"/>
		<updated>2026-08-29T20:40:58Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox player&lt;br /&gt;
|name = Steve Gutin&lt;br /&gt;
|nationalities = [[Gutin War Cult]] &amp;lt;small&amp;gt;(formerly)&amp;lt;/small&amp;gt;&amp;lt;br&amp;gt;[[Hellfire]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Steve Gutin is a player, and was the head Diety and true leader of [[Gutin War Cult]].&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:Steve Gutin}}&lt;br /&gt;
[[Category: People]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12344</id>
		<title>Steve Gutin</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12344"/>
		<updated>2026-08-29T20:40:47Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox player&lt;br /&gt;
|name = Steve Gutin&lt;br /&gt;
|nationalities = [[Gutin War Cult]] &amp;lt;small&amp;gt;(formerly)&amp;lt;/small&amp;gt;&amp;lt;br&amp;gt;[[Hellfire]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Steve Gutin is a player, and was the head [[Diety]] and true leader of [[Gutin War Cult]].&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:Steve Gutin}}&lt;br /&gt;
[[Category: People]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Light_Blue_Terracotta&amp;diff=12308</id>
		<title>Light Blue Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Light_Blue_Terracotta&amp;diff=12308"/>
		<updated>2026-08-28T04:59:14Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Green_Terracotta&amp;diff=12307</id>
		<title>Green Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Green_Terracotta&amp;diff=12307"/>
		<updated>2026-08-28T04:59:05Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Lime_Terracotta&amp;diff=12306</id>
		<title>Lime Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Lime_Terracotta&amp;diff=12306"/>
		<updated>2026-08-28T04:58:59Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Yellow_Terracotta&amp;diff=12305</id>
		<title>Yellow Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Yellow_Terracotta&amp;diff=12305"/>
		<updated>2026-08-28T04:58:54Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Orange_Terracotta&amp;diff=12304</id>
		<title>Orange Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Orange_Terracotta&amp;diff=12304"/>
		<updated>2026-08-28T04:58:48Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Red_Terracotta&amp;diff=12303</id>
		<title>Red Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Red_Terracotta&amp;diff=12303"/>
		<updated>2026-08-28T04:58:42Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Brown_Terracotta&amp;diff=12302</id>
		<title>Brown Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Brown_Terracotta&amp;diff=12302"/>
		<updated>2026-08-28T04:58:37Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Black_Terracotta&amp;diff=12301</id>
		<title>Black Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Black_Terracotta&amp;diff=12301"/>
		<updated>2026-08-28T04:58:31Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Gray_Terracotta&amp;diff=12300</id>
		<title>Gray Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Gray_Terracotta&amp;diff=12300"/>
		<updated>2026-08-28T04:58:26Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Light_Gray_Terracotta&amp;diff=12299</id>
		<title>Light Gray Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Light_Gray_Terracotta&amp;diff=12299"/>
		<updated>2026-08-28T04:58:20Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=White_Terracotta&amp;diff=12298</id>
		<title>White Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=White_Terracotta&amp;diff=12298"/>
		<updated>2026-08-28T04:58:15Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Pink_Terracotta&amp;diff=12297</id>
		<title>Pink Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Pink_Terracotta&amp;diff=12297"/>
		<updated>2026-08-28T04:58:09Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Magenta_Terracotta&amp;diff=12296</id>
		<title>Magenta Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Magenta_Terracotta&amp;diff=12296"/>
		<updated>2026-08-28T04:58:01Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Purple_Terracotta&amp;diff=12295</id>
		<title>Purple Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Purple_Terracotta&amp;diff=12295"/>
		<updated>2026-08-28T04:57:56Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Blue_Terracotta&amp;diff=12294</id>
		<title>Blue Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Blue_Terracotta&amp;diff=12294"/>
		<updated>2026-08-28T04:57:52Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Cyan_Terracotta&amp;diff=12293</id>
		<title>Cyan Terracotta</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Cyan_Terracotta&amp;diff=12293"/>
		<updated>2026-08-28T04:57:44Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Redirected page to Printer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Printer]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_White_Concrete.png&amp;diff=12292</id>
		<title>File:Invicon White Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_White_Concrete.png&amp;diff=12292"/>
		<updated>2026-08-28T04:56:38Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Light_Gray_Concrete.png&amp;diff=12291</id>
		<title>File:Invicon Light Gray Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Light_Gray_Concrete.png&amp;diff=12291"/>
		<updated>2026-08-28T04:56:33Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Gray_Concrete.png&amp;diff=12290</id>
		<title>File:Invicon Gray Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Gray_Concrete.png&amp;diff=12290"/>
		<updated>2026-08-28T04:56:29Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Black_Concrete.png&amp;diff=12289</id>
		<title>File:Invicon Black Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Black_Concrete.png&amp;diff=12289"/>
		<updated>2026-08-28T04:56:15Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Gutin uploaded File:Invicon Black Concrete.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Licensing ==&lt;br /&gt;
{{License Mojang}}&lt;br /&gt;
[[Category:InvSprite files]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Brown_Concrete.png&amp;diff=12288</id>
		<title>File:Invicon Brown Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Brown_Concrete.png&amp;diff=12288"/>
		<updated>2026-08-28T04:56:07Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Red_Concrete.png&amp;diff=12287</id>
		<title>File:Invicon Red Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Red_Concrete.png&amp;diff=12287"/>
		<updated>2026-08-28T04:56:02Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Orange_Concrete.png&amp;diff=12286</id>
		<title>File:Invicon Orange Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Orange_Concrete.png&amp;diff=12286"/>
		<updated>2026-08-28T04:55:58Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Lime_Concrete.png&amp;diff=12285</id>
		<title>File:Invicon Lime Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Lime_Concrete.png&amp;diff=12285"/>
		<updated>2026-08-28T04:55:47Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Green_Concrete.png&amp;diff=12284</id>
		<title>File:Invicon Green Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Green_Concrete.png&amp;diff=12284"/>
		<updated>2026-08-28T04:55:42Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Cyan_Concrete.png&amp;diff=12283</id>
		<title>File:Invicon Cyan Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Cyan_Concrete.png&amp;diff=12283"/>
		<updated>2026-08-28T04:55:38Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Light_Blue_Concrete.png&amp;diff=12282</id>
		<title>File:Invicon Light Blue Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Light_Blue_Concrete.png&amp;diff=12282"/>
		<updated>2026-08-28T04:55:34Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Blue_Concrete.png&amp;diff=12281</id>
		<title>File:Invicon Blue Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Blue_Concrete.png&amp;diff=12281"/>
		<updated>2026-08-28T04:55:29Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Purple_Concrete.png&amp;diff=12280</id>
		<title>File:Invicon Purple Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Purple_Concrete.png&amp;diff=12280"/>
		<updated>2026-08-28T04:55:24Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Magenta_Concrete.png&amp;diff=12279</id>
		<title>File:Invicon Magenta Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Magenta_Concrete.png&amp;diff=12279"/>
		<updated>2026-08-28T04:55:19Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Pink_Concrete.png&amp;diff=12278</id>
		<title>File:Invicon Pink Concrete.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Pink_Concrete.png&amp;diff=12278"/>
		<updated>2026-08-28T04:55:12Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Autocannon&amp;diff=12277</id>
		<title>Autocannon</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Autocannon&amp;diff=12277"/>
		<updated>2026-08-28T04:53:45Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox multiblock v2|name=Autocannon|image=|image2=|image3=&amp;lt;gallery mode=slideshow&amp;gt;&lt;br /&gt;
Autocannon.png|Normal&lt;br /&gt;
Autocannon 1.png|Expanded&lt;br /&gt;
&amp;lt;/gallery&amp;gt;|custom_property_title1=Cooldown|custom_property_title2=Power Consumption|custom_property_title3=Vertical Fire Arc|custom_property_title4=Horizontal Fire Arc|custom_property_title5=Innacuracy Degrees|custom_property_title6=Projectile Range|custom_property_title7=Projectile Velocity|custom_property_title8=Explosion Power|custom_property_title9=Shield Damage Multiplier|custom_property_title10=Area Shield Damage Multiplier|custom_property_title11=Number of Projectiles|custom_property_value1=500ms|custom_property_value2=1000|custom_property_value3=Unknown|custom_property_value4=Unknown|custom_property_value5=2.0 Degrees|custom_property_value6=200m|custom_property_value7=450m/s|custom_property_value8=3.5|custom_property_value9=1.0|custom_property_value10=1.0|custom_property_value11=2|resource_title1=Assembly Core|resource_title2=Iron Block|resource_title3=Any Concrete|resource_title4=Any Sign|resource_title5=Grindstone|resource_title6=End Rod|resource_title7=Sponge|resource_title8=Any Dyed Terracotta|resource_title9=Any Stairs|resource_value1=1|resource_value2=1|resource_value3=1|resource_value4=1|resource_value5=4|resource_value6=4|resource_value7=4|resource_value8=10|resource_value9=18}}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Autocannon&#039;&#039;&#039; is a light, manually controlled weapon available on the [[Stasis Corvette]]. This weapon has a high velocity, designed around countering small enemy ships.&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Autocannon&amp;diff=12275</id>
		<title>Autocannon</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Autocannon&amp;diff=12275"/>
		<updated>2026-08-28T04:52:50Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox multiblock v2|name=Autocannon|image=|image2=|image3=&amp;lt;gallery mode=slideshow&amp;gt;&lt;br /&gt;
Autocannon.png|Normal&lt;br /&gt;
Autocannon 1.png|Expanded&lt;br /&gt;
&amp;lt;/gallery&amp;gt;|custom_property_title1=Cooldown|custom_property_title2=Power Consumption|custom_property_title3=Vertical Fire Arc|custom_property_title4=Horizontal Fire Arc|custom_property_title5=Innacuracy Degrees|custom_property_title6=Projectile Range|custom_property_title7=Projectile Velocity|custom_property_title8=Explosion Power|custom_property_title9=Shield Damage Multiplier|custom_property_title10=Area Shield Damage Multiplier|custom_property_title11=Number of Projectiles|custom_property_value1=500ms|custom_property_value2=1000|custom_property_value3=Unknown|custom_property_value4=Unknown|custom_property_value5=2.0 Degrees|custom_property_value6=200m|custom_property_value7=450m/s|custom_property_value8=3.5|custom_property_value9=1.0|custom_property_value10=1.0|custom_property_value11=2|resource_title1=Assembly Core|resource_title2=Iron Block|resource_title3=Any Concrete Block|resource_title4=Any sign|resource_title5=Grindstone|resource_title6=End Rod|resource_title7=Sponge|resource_title8=Any Dyed Terracotta|resource_title9=Any Stairs|resource_value1=1|resource_value2=1|resource_value3=1|resource_value4=1|resource_value5=4|resource_value6=4|resource_value7=4|resource_value8=10|resource_value9=18}}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Autocannon&#039;&#039;&#039; is a light, manually controlled weapon available on the [[Stasis Corvette]]. This weapon has a high velocity, designed around countering small enemy ships.&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12272</id>
		<title>Steve Gutin</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Steve_Gutin&amp;diff=12272"/>
		<updated>2026-08-28T02:28:56Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Reverted edits by Bronze (talk) to last revision by Wiki Port 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox player&lt;br /&gt;
|name = Steve Gutin&lt;br /&gt;
|nationalities = [[Gutin War Cult]] &amp;lt;small&amp;gt;(formerly)&amp;lt;/small&amp;gt;&amp;lt;br&amp;gt;[[Hellfire]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:Steve Gutin}}&lt;br /&gt;
[[Category: People]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_block.png&amp;diff=12270</id>
		<title>File:Invicon Scordite block.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_block.png&amp;diff=12270"/>
		<updated>2026-08-28T02:21:39Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Gutin moved page File:Invicon Scordite block.png to File:Invicon Scordite Block.png: Misspelled title&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[File:Invicon Scordite Block.png]]&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_Block.png&amp;diff=12269</id>
		<title>File:Invicon Scordite Block.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_Block.png&amp;diff=12269"/>
		<updated>2026-08-28T02:21:39Z</updated>

		<summary type="html">&lt;p&gt;Gutin: Gutin moved page File:Invicon Scordite block.png to File:Invicon Scordite Block.png: Misspelled title&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_Block.png&amp;diff=12268</id>
		<title>File:Invicon Scordite Block.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Scordite_Block.png&amp;diff=12268"/>
		<updated>2026-08-28T02:21:20Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12267</id>
		<title>Module:Inventory slot/Aliases</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12267"/>
		<updated>2026-08-28T02:17:18Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local aliases = {&lt;br /&gt;
	-- Common fuel types for furnace --&lt;br /&gt;
	[&#039;Any fuel&#039;] = { &#039;Coal&#039;, &#039;Charcoal&#039;, { title = &#039;Log&#039;, name = &#039;Oak Log&#039; }, { title = &#039;Overworld Planks&#039;, name = &#039;Oak Planks&#039; }, &#039;Lava Bucket&#039;, &#039;Block of Coal&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- All armor --&lt;br /&gt;
	[&#039;Any leather armor&#039;] = { &#039;Leather Cap&#039;, &#039;Leather Tunic&#039;, &#039;Leather Pants&#039;, &#039;Leather Boots&#039; },&lt;br /&gt;
	[&#039;Any golden armor&#039;] = { &#039;Golden Helmet&#039;, &#039;Golden Chestplate&#039;, &#039;Golden Leggings&#039;, &#039;Golden Boots&#039; },&lt;br /&gt;
	[&#039;Any chainmail armor&#039;] = { &#039;Chainmail Helmet&#039;, &#039;Chainmail Chestplate&#039;, &#039;Chainmail Leggings&#039;, &#039;Chainmail Boots&#039; },&lt;br /&gt;
	[&#039;Any iron armor&#039;] = { &#039;Iron Helmet&#039;, &#039;Iron Chestplate&#039;, &#039;Iron Leggings&#039;, &#039;Iron Boots&#039; },&lt;br /&gt;
	[&#039;Any diamond armor&#039;] = { &#039;Diamond Helmet&#039;, &#039;Diamond Chestplate&#039;, &#039;Diamond Leggings&#039;, &#039;Diamond Boots&#039; },&lt;br /&gt;
	[&#039;Any netherite armor&#039;] = { &#039;Netherite Helmet&#039;, &#039;Netherite Chestplate&#039;, &#039;Netherite Leggings&#039;, &#039;Netherite Boots&#039; },&lt;br /&gt;
&lt;br /&gt;
    -- Stones --&lt;br /&gt;
	[&#039;Any Cobblestone or Blackstone&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039; },&lt;br /&gt;
	[&#039;Any stone-tier block&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039;, &#039;Cobbled Deepslate&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Miscellaeous collections --&lt;br /&gt;
	[&#039;Any leaves&#039;] = { &#039;Oak Leaves&#039;, &#039;Spruce Leaves&#039;, &#039;Birch Leaves&#039;, &#039;Acacia Leaves&#039;, &#039;Jungle Leaves&#039;, &#039;Dark Oak Leaves&#039;, &#039;Mangrove Leaves&#039;, &#039;Cherry Leaves&#039;, &#039;Pale Oak Leaves&#039;, &#039;Azalea Leaves&#039;, &#039;Flowering Azalea Leaves&#039; };&lt;br /&gt;
	[&#039;Any egg&#039;] = { &#039;Egg&#039;, &#039;Blue Egg&#039;, &#039;Brown Egg&#039;};&lt;br /&gt;
	[&#039;Any stairs&#039;] = { &#039;Tuff Stairs&#039;, &#039;Polished Tuff Stairs&#039;, &#039;Tuff Brick Stairs&#039;, &#039;Cut Copper Stairs&#039;, &#039;Exposed Cut Copper Stairs&#039;, &#039;Weathered Cut Copper Stairs&#039;, &#039;Oxidized Cut Copper Stairs&#039;, &#039;Waxed Cut Copper Stairs&#039;, &#039;Waxed Exposed Cut Copper Stairs&#039;, &#039;Waxed Weathered Cut Copper Stairs&#039;, &#039;Waxed Oxidized Cut Copper Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Resin Brick Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Nether Brick Stairs&#039;, &#039;Sandstone Stairs&#039;, &#039;Oak Stairs&#039;, &#039;Spruce Stairs&#039;, &#039;Birch Stairs&#039;, &#039;Jungle Stairs&#039;, &#039;Acacia Stairs&#039;, &#039;Cherry Stairs&#039;, &#039;Dark Oak Stairs&#039;, &#039;Pale Oak Stairs&#039;, &#039;Mangrove Stairs&#039;, &#039;Bamboo Stairs&#039;, &#039;Bamboo Mosaic Stairs&#039;, &#039;Crimson Stairs&#039;, &#039;Warped Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Stone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Smooth Quartz Stairs&#039;, &#039;Granite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039; },&lt;br /&gt;
	&lt;br /&gt;
    [&#039;Any inventory&#039;] = { &#039;Chest&#039;, &#039;Trapped Chest&#039;, &#039;Barrel&#039;, &#039;Furnace&#039;, &#039;Smoker&#039;, &#039;Dispenser&#039;, &#039;Dropper&#039;, &#039;Decorated Pot&#039; },&lt;br /&gt;
    --Glass--&lt;br /&gt;
[&#039;Any Glass Pane&#039;] = {&lt;br /&gt;
	&#039;Glass Pane&#039;,&lt;br /&gt;
	&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
},&lt;br /&gt;
[&#039;Any Glass&#039;] = {&lt;br /&gt;
	&#039;Glass&#039;,&lt;br /&gt;
	&#039;White Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Black Stained Glass&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass&#039;,&lt;br /&gt;
	&#039;Red Stained Glass&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass&#039;,&lt;br /&gt;
	&#039;Green Stained Glass&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass&#039;,&lt;br /&gt;
},&lt;br /&gt;
    -- Misc HE--&lt;br /&gt;
    [&#039;Any Thruster Block&#039;]={&#039;Sea Lantern.gif&#039;, &#039;Glowstone&#039;, &#039;Shroomlight&#039;, &#039;Ochre Froglight&#039;, &#039;Verdant Froglight&#039;, &#039;Pearlescent Froglight&#039;, &#039;Redstone Lamp&#039;},&lt;br /&gt;
	-- Display names --&lt;br /&gt;
	[&#039;Broken Elytra&#039;] = { title = &#039;&amp;amp;dElytra&#039;, name = &#039;Broken Elytra&#039; },&lt;br /&gt;
	[&#039;Button&#039;] = { title = &#039;Button&#039;, name = &#039;Stone Button&#039;},&lt;br /&gt;
	[&#039;Wooden Button&#039;] = { title = &#039;Button&#039;, name = &#039;Oak Button&#039;},&lt;br /&gt;
	[&#039;Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Ominous Banner&#039;] = { title = &#039;&amp;amp;6&amp;amp;oOminous Banner&#039;, name = &#039;Ominous Banner&#039;, text = &lt;br /&gt;
		&#039;&amp;amp;7Cyan Lozenge/&amp;amp;7Light Gray Base/&amp;amp;7Gray Pale/&amp;amp;7Light Gray Bordure/&amp;amp;7Black Fess/&amp;amp;7Light Gray Per Fess&#039;},&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Basic&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Basic&#039; },&lt;br /&gt;
    [&#039;Power Hoe Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Basic&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Enhanced&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Advanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Advanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Advanced&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Battery A&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;cA &amp;amp;9Battery&#039;, name = &#039;Battery A&#039; },&lt;br /&gt;
    [&#039;Battery M&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;aM &amp;amp;9Battery&#039;, name = &#039;Battery M&#039; },&lt;br /&gt;
    [&#039;Battery G&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;6G &amp;amp;9Battery&#039;, name = &#039;Battery G&#039; },&lt;br /&gt;
&lt;br /&gt;
	[&#039;Half Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Half Filled Bundle&#039; },&lt;br /&gt;
	[&#039;Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Filled Bundle&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Empty display name --&lt;br /&gt;
	[&#039;debug_fourj_item&#039;] = { title = &#039;\226\128\140&#039;, name = &#039;debug_fourj_item&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Equipment with custom rarity --&lt;br /&gt;
	[&#039;Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Damaged Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Trident BE&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;9 +8 Attack Damage&#039;},&lt;br /&gt;
	[&#039;Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Damaged Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Mace BE&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;9 +5 Attack Damage&#039;},&lt;br /&gt;
	[&amp;quot;Damaged Elytra&amp;quot;] = { title = &amp;quot;&amp;amp;dElytra&amp;quot;, name = &amp;quot;Damaged Elytra&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Boots&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Boots&amp;quot;, name = &amp;quot;Damaged Chainmail Boots&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Chestplate&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Chestplate&amp;quot;, name = &amp;quot;Damaged Chainmail Chestplate&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Helmet&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Helmet&amp;quot;, name = &amp;quot;Damaged Chainmail Helmet&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Leggings&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Leggings&amp;quot;, name = &amp;quot;Damaged Chainmail Leggings&amp;quot; },&lt;br /&gt;
	&lt;br /&gt;
	-- Ominous Bottles --&lt;br /&gt;
    [&#039;Ominous Bottle&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle II&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen II (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle III&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen III (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle IV&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen IV (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle V&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen V (01:40:00)&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Bedrock and Education Edition display names --&lt;br /&gt;
	[&#039;Buried Treasure Map BE&#039;] = { title = &#039;Treasure Map&#039;, name = &#039;Buried Treasure Map BE&#039; },&lt;br /&gt;
	[&#039;Elytra Wings&#039;] = { title = &#039;Elytra Wings&#039;, name = &#039;Elytra&#039; },&lt;br /&gt;
	[&#039;Glowing Obsidian&#039;] = { title = &#039;tile.glowingobsidian.name&#039;, name = &#039;Glowing Obsidian&#039; },&lt;br /&gt;
	[&#039;Map (no markers)&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;cNo&#039; },&lt;br /&gt;
	[&#039;Locator Map&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;aYes&#039; },&lt;br /&gt;
	[&#039;Shrub BE&#039;] = { title = &#039;Fern&#039;, name = &#039;Short Grass&#039; },&lt;br /&gt;
	[&#039;Unknown&#039;] = { title = &#039;Unknown&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update&#039;] = { title = &#039;tile.info_update.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update2&#039;] = { title = &#039;tile.info_update2.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;reserved6&#039;] = { title = &#039;tile.reserved6.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;Smooth Purpur&#039;] = { title = &#039;tile.deprecated_purpur_block_2.name&#039;, name = &#039;Smooth Purpur&#039; },&lt;br /&gt;
	[&#039;Beacon BE&#039;] = { title = &#039;&amp;amp;bBeacon&#039;, name = &#039;Beacon BE&#039; },&lt;br /&gt;
	[&#039;Conduit BE&#039;] = { title = &#039;&amp;amp;eConduit&#039;, name = &#039;Conduit BE&#039; },&lt;br /&gt;
	[&#039;Dragon Egg BE&#039;] = { title = &#039;&amp;amp;dDragon Egg&#039;, name = &#039;Dragon Egg BE&#039; },&lt;br /&gt;
	[&#039;Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;eSkeleton Skull&#039;, name = &#039;Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Wither Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;bWither Skeleton Skull&#039;, name = &#039;Wither Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Zombie Head BE&#039;] = { title = &#039;&amp;amp;eZombie Head&#039;, name = &#039;Zombie Head BE&#039; },&lt;br /&gt;
	[&#039;Player Head BE&#039;] = { title = &#039;&amp;amp;ePlayer Head&#039;, name = &#039;Player Head BE&#039; },&lt;br /&gt;
	[&#039;Creeper Head BE&#039;] = { title = &#039;&amp;amp;eCreeper Head&#039;, name = &#039;Creeper Head BE&#039; },&lt;br /&gt;
	[&#039;Dragon Head BE&#039;] = { title = &#039;&amp;amp;dDragon Head&#039;, name = &#039;Dragon Head BE&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Chemistry --&lt;br /&gt;
	[&#039;Lead (element)&#039;] = { title = &#039;Lead&#039;, name = &#039;Lead (element)&#039; },&lt;br /&gt;
	[&#039;Water (compound)&#039;] = { title = &#039;Water&#039;, name = &#039;Water (compound)&#039; },&lt;br /&gt;
	[&#039;Chloride&#039;] = { &#039;Calcium Chloride&#039;, &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Sparkler&#039;] = { &#039;Orange Sparkler&#039;, &#039;Blue Sparkler&#039;, &#039;Red Sparkler&#039;, &#039;Purple Sparkler&#039;, &#039;Green Sparkler&#039; },&lt;br /&gt;
	[&#039;Matching Chloride&#039;] = { &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Matching Colored Torch&#039;] = { &#039;Blue Torch&#039;, &#039;Red Torch&#039;, &#039;Purple Torch&#039;, &#039;Green Torch&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- April Fools&#039; Day jokes --&lt;br /&gt;
	[&#039;New Thing Banner Pattern&#039;] = { title = &#039;&amp;amp;dBanner Pattern&#039;, name = &#039;New Thing Banner Pattern&#039;, text = &#039;&amp;amp;7New Thing&#039;},&lt;br /&gt;
	-- Note: These can&#039;t use this module&#039;s default color handling because potato peels have no white variant but do include the uncolored variant in recipes&lt;br /&gt;
	[&#039;Any Potato Peels&#039;] = { &#039;Potato Peels&#039;, &#039;Light Gray Potato Peels&#039;, &#039;Gray Potato Peels&#039;, &#039;Black Potato Peels&#039;, &#039;Brown Potato Peels&#039;, &#039;Red Potato Peels&#039;, &#039;Orange Potato Peels&#039;, &#039;Yellow Potato Peels&#039;, &#039;Lime Potato Peels&#039;, &#039;Green Potato Peels&#039;, &#039;Cyan Potato Peels&#039;, &#039;Light Blue Potato Peels&#039;, &#039;Blue Potato Peels&#039;, &#039;Purple Potato Peels&#039;, &#039;Magenta Potato Peels&#039;, &#039;Pink Potato Peels&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- Old textures --&lt;br /&gt;
	[&#039;Apple Revision 1&#039;] = { title = &#039;Apple&#039;, name = &#039;Apple Revision 1&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Stairs&#039;] = aliases[&#039;Any stairs&#039;]&lt;br /&gt;
&lt;br /&gt;
-- Tooltip colors --&lt;br /&gt;
local yellowTooltips = {&lt;br /&gt;
    &#039;Bottle o\&#039; Enchanting&#039;,&lt;br /&gt;
    &#039;Chainmail Boots&#039;,&lt;br /&gt;
    &#039;Chainmail Chestplate&#039;,&lt;br /&gt;
    &#039;Chainmail Helmet&#039;,&lt;br /&gt;
    &#039;Chainmail Leggings&#039;,&lt;br /&gt;
    &#039;Conduit&#039;,&lt;br /&gt;
    &#039;Creeper Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Creeper Head&#039;,&lt;br /&gt;
    &#039;Disc Fragment 5&#039;,&lt;br /&gt;
    &#039;Dragon\&#039;s Breath&#039;,&lt;br /&gt;
    &#039;Echo Shard&#039;,&lt;br /&gt;
    &#039;Enchanted Book&#039;,&lt;br /&gt;
    &#039;Goat Horn&#039;,&lt;br /&gt;
    &#039;Heart of the Sea&#039;,&lt;br /&gt;
    &#039;Nautilus Shell&#039;,&lt;br /&gt;
    &#039;Ominous Banner&#039;,&lt;br /&gt;
    &#039;Piglin Head&#039;,&lt;br /&gt;
    &#039;Player Head&#039;,&lt;br /&gt;
    &#039;Recovery Compass&#039;,&lt;br /&gt;
    &#039;Skeleton Skull&#039;,&lt;br /&gt;
    &#039;Sniffer Egg&#039;,&lt;br /&gt;
    &#039;Snout Banner Pattern&#039;,&lt;br /&gt;
    &#039;Totem of Undying&#039;,&lt;br /&gt;
    &#039;Zombie Head&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( yellowTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local aquaTooltips = {&lt;br /&gt;
	&#039;Beacon&#039;,&lt;br /&gt;
	&#039;Enchanted Golden Apple&#039;,&lt;br /&gt;
    &#039;Flow Banner Pattern&#039;,&lt;br /&gt;
	&#039;Guster Banner Pattern&#039;,&lt;br /&gt;
	&#039;Nether Star&#039;,&lt;br /&gt;
    &#039;Skull Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Thing Banner Pattern&#039;,&lt;br /&gt;
    &#039;Wither Skeleton Skull&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( aquaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;b&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local magentaTooltips = {&lt;br /&gt;
	&#039;Barrier&#039;,&lt;br /&gt;
	&#039;Command Block&#039;,&lt;br /&gt;
	&#039;Chain Command Block&#039;,&lt;br /&gt;
	&#039;Debug Stick&#039;,&lt;br /&gt;
	&#039;Dragon Egg&#039;,&lt;br /&gt;
	&#039;Dragon Head&#039;,&lt;br /&gt;
	&#039;Elytra&#039;,&lt;br /&gt;
	&#039;Heavy Core&#039;,&lt;br /&gt;
	&#039;Jigsaw Block&#039;,&lt;br /&gt;
	&#039;Knowledge Book&#039;,&lt;br /&gt;
	&#039;Light&#039;,&lt;br /&gt;
	&#039;Repeating Command Block&#039;,&lt;br /&gt;
	&#039;Structure Block&#039;,&lt;br /&gt;
	&#039;Structure Void&#039;,&lt;br /&gt;
	&#039;Test Block&#039;,&lt;br /&gt;
	&#039;Test Instance Block&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( magentaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;d&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons --&lt;br /&gt;
local tools = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5, 1.6 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6, 1.6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7, 1.6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8, 1.6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3, 1.2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4, 1.2 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5, 1.2 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6, 1.2 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 7, 0.8 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 9, 0.8 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 9, 0.9 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 7, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 9, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 10, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 3.5, 1 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 4.5, 1 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 5.5, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 6.5, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 1, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 1, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 1, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 1, 4 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local materialGroups = {}&lt;br /&gt;
local toolGroups = {}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( tools ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	local damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
	local text = &#039;/&amp;amp;7When in Main Hand:/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[3] .. &#039; Attack Damage/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[4] .. &#039; Attack Speed&#039;&lt;br /&gt;
	aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
	aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
	&lt;br /&gt;
	local materialGroup = toolProps[1]:lower()&lt;br /&gt;
	local toolGroup = toolProps[2]:lower()&lt;br /&gt;
	&lt;br /&gt;
	if toolProps[2] ~= &#039;Sword&#039; then&lt;br /&gt;
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end&lt;br /&gt;
		table.insert( materialGroups[materialGroup], aliases[aliasName] )&lt;br /&gt;
	end&lt;br /&gt;
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end&lt;br /&gt;
	table.insert( toolGroups[toolGroup], aliases[aliasName] )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for materialGroup, items in pairs( materialGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. materialGroup .. &#039; tools&#039;] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for toolGroup, items in pairs( toolGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. toolGroup] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons in Bedrock Edition --&lt;br /&gt;
local toolsBE = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 4 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 5 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 7 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 5 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 6 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( toolsBE ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	aliases[aliasName .. &#039; BE&#039;] = { title = aliasName, name = aliasName, text = &#039;/&amp;amp;9+&#039; .. toolProps[3] .. &#039; Attack Damage&#039;}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Armor tooltips --&lt;br /&gt;
local head = {&lt;br /&gt;
	{&#039;Leather Cap&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Iron Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond Helmet&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Helmet&#039;, 3, 3, 1 },&lt;br /&gt;
	{&#039;Turtle Shell&#039;, 2 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local body = {&lt;br /&gt;
	{&#039;Leather Tunic&#039;, 3 },&lt;br /&gt;
	{&#039;Chainmail Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Iron Chestplate&#039;, 6 },&lt;br /&gt;
	{&#039;Golden Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Diamond Chestplate&#039;, 8, 2 },&lt;br /&gt;
	{&#039;Netherite Chestplate&#039;, 8, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local legs = {&lt;br /&gt;
	{&#039;Leather Pants&#039;, 2 },&lt;br /&gt;
	{&#039;Chainmail Leggings&#039;, 4 },&lt;br /&gt;
	{&#039;Iron Leggings&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Leggings&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond Leggings&#039;, 6, 2 },&lt;br /&gt;
	{&#039;Netherite Leggings&#039;, 6, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local feet = {&lt;br /&gt;
	{&#039;Leather Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Iron Boots&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond Boots&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Boots&#039;, 3, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local equipped = {&lt;br /&gt;
	{&#039;Leather Horse Armor&#039;, 3 },&lt;br /&gt;
	{&#039;Iron Horse Armor&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Horse Armor&#039;, 7 },&lt;br /&gt;
	{&#039;Diamond Horse Armor&#039;, 11, 2 },&lt;br /&gt;
	{&#039;Wolf Armor&#039;, 11 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local bodyParts = {&lt;br /&gt;
    {head, &amp;quot;on Head&amp;quot;},&lt;br /&gt;
    {body, &amp;quot;on Body&amp;quot;},&lt;br /&gt;
    {legs, &amp;quot;on Legs&amp;quot;},&lt;br /&gt;
    {feet, &amp;quot;on Feet&amp;quot;},&lt;br /&gt;
    {equipped, &amp;quot;equipped&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local trimMaterial = {&lt;br /&gt;
	{&#039;Quartz&#039;, &#039;&amp;amp;h&#039;},&lt;br /&gt;
	{&#039;Iron&#039;, &#039;&amp;amp;i&#039;},&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;&amp;amp;j&#039;},&lt;br /&gt;
	{&#039;Redstone&#039;, &#039;&amp;amp;y&#039;},&lt;br /&gt;
	{&#039;Copper&#039;, &#039;&amp;amp;z&#039;},&lt;br /&gt;
	{&#039;Gold&#039;, &#039;&amp;amp;p&#039;},&lt;br /&gt;
	{&#039;Emerald&#039;, &#039;&amp;amp;q&#039;},&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;&amp;amp;s&#039;},&lt;br /&gt;
	{&#039;Lapis&#039;, &#039;&amp;amp;t&#039;},&lt;br /&gt;
	{&#039;Amethyst&#039;, &#039;&amp;amp;u&#039;},&lt;br /&gt;
	{&#039;Resin&#039;, &#039;&amp;amp;v&#039;},&lt;br /&gt;
	{&#039;Amber&#039;, &#039;&amp;amp;6&#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, bodyPart in ipairs(bodyParts) do&lt;br /&gt;
    local items = bodyPart[1]&lt;br /&gt;
    local bodyPartName = bodyPart[2]&lt;br /&gt;
    &lt;br /&gt;
    for _, toolProps in ipairs(items) do&lt;br /&gt;
        local aliasName = toolProps[1]&lt;br /&gt;
        local damagedName&lt;br /&gt;
        if string.find(aliasName, &amp;quot;Horse Armor&amp;quot;) then&lt;br /&gt;
            damagedName = aliasName &lt;br /&gt;
        else&lt;br /&gt;
            damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
        end     &lt;br /&gt;
        local text = &#039;/&amp;amp;7When &#039; .. bodyPartName .. &#039;:/&amp;amp;9+&#039; .. toolProps[2] .. &#039; Armor/&#039;&lt;br /&gt;
        if toolProps[3] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[3] .. &#039; Armor Toughness/&#039;&lt;br /&gt;
        end&lt;br /&gt;
        if toolProps[4] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[4] .. &#039; Knockback Resistance&#039;&lt;br /&gt;
        end&lt;br /&gt;
        aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
        aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
        if bodyPartName ~= &amp;quot;equipped&amp;quot; then&lt;br /&gt;
			for _, materialType in ipairs( trimMaterial ) do&lt;br /&gt;
	        	local trimName = materialType[1] .. &#039; Trim &#039; .. aliasName&lt;br /&gt;
				local trimText = &#039;&amp;amp;7Upgrade:/&amp;amp;#160;&#039; .. materialType[2] .. &#039;Armor Trim/&amp;amp;#160;&#039; .. materialType[1] .. &#039; Material/&#039;&lt;br /&gt;
				aliases[trimName] = { title = aliasName, name = trimName, text = trimText .. text }&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Lists of item variants --&lt;br /&gt;
local itemVariants = {&lt;br /&gt;
	[&#039;Small Flower&#039;] = { &#039;Oxeye Daisy&#039;, &#039;Cornflower&#039;, &#039;Lily of the Valley&#039;, &#039;Wither Rose&#039;, &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039;, &#039;Azure Bluet&#039;, &#039;Allium&#039;, &#039;Blue Orchid&#039;, &#039;Poppy&#039;, &#039;Dandelion&#039;, &#039;Torchflower&#039;, &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Eyeblossom&#039;] = { &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Mushroom&#039;] = { &#039;Red Mushroom&#039;, &#039;Brown Mushroom&#039; },&lt;br /&gt;
	[&#039;Quartz Block&#039;] = { &#039;Block of Quartz&#039;, &#039;Chiseled Quartz Block&#039;, &#039;Quartz Pillar&#039; },&lt;br /&gt;
	[&#039;Red Sandstone&#039;] = { &#039;Red Sandstone&#039;, &#039;Cut Red Sandstone&#039;, &#039;Chiseled Red Sandstone&#039;, &#039;Smooth Red Sandstone&#039; },&lt;br /&gt;
	[&#039;Sandstone&#039;] = { &#039;Sandstone&#039;, &#039;Cut Sandstone&#039;, &#039;Chiseled Sandstone&#039;, &#039;Smooth Sandstone&#039; },&lt;br /&gt;
	[&#039;Stone Bricks&#039;] = { &#039;Stone Bricks&#039;, &#039;Mossy Stone Bricks&#039;, &#039;Cracked Stone Bricks&#039;, &#039;Chiseled Stone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Slab&#039;] = { &#039;Stone Slab&#039;, &#039;Cobblestone Slab&#039;, &#039;Mossy Cobblestone Slab&#039;, &#039;Smooth Stone Slab&#039;, &#039;Stone Brick Slab&#039;, &#039;Mossy Stone Brick Slab&#039;, &lt;br /&gt;
		&#039;Granite Slab&#039;, &#039;Polished Granite Slab&#039;, &#039;Diorite Slab&#039;, &#039;Polished Diorite Slab&#039;, &#039;Andesite Slab&#039;, &#039;Polished Andesite Slab&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Slab&#039;, &#039;Polished Deepslate Slab&#039;, &#039;Deepslate Brick Slab&#039;, &#039;Deepslate Tile Slab&#039;, &#039;Brick Slab&#039;, &#039;Mud Brick Slab&#039;, &#039;Resin Brick Slab&#039;,&lt;br /&gt;
		&#039;Sandstone Slab&#039;, &#039;Smooth Sandstone Slab&#039;, &#039;Cut Sandstone Slab&#039;, &#039;Red Sandstone Slab&#039;, &#039;Smooth Red Sandstone Slab&#039;, &#039;Cut Red Sandstone Slab&#039;, &#039;Prismarine Slab&#039;, &#039;Prismarine Brick Slab&#039;, &#039;Dark Prismarine Slab&#039;, &lt;br /&gt;
		&#039;Nether Brick Slab&#039;, &#039;Red Nether Brick Slab&#039;, &#039;Blackstone Slab&#039;, &#039;Polished Blackstone Slab&#039;, &#039;Polished Blackstone Brick Slab&#039;, &#039;End Stone Brick Slab&#039;, &#039;Purpur Slab&#039;, &#039;Quartz Slab&#039;, &#039;Smooth Quartz Slab&#039;, &#039;Petrified Oak Slab&#039; },&lt;br /&gt;
	[&#039;Stone Stairs&#039;] = { &#039;Stone Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &lt;br /&gt;
		&#039;Granite Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Resin Brick Stairs&#039;, &lt;br /&gt;
		&#039;Sandstone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &lt;br /&gt;
		&#039;Nether Brick Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Smooth Quartz Stairs&#039; },&lt;br /&gt;
	[&#039;Wall&#039;] = { &#039;Cobblestone Wall&#039;, &#039;Mossy Cobblestone Wall&#039;, &#039;Stone Brick Wall&#039;, &#039;Mossy Stone Brick Wall&#039;, &#039;Granite Wall&#039;, &#039;Diorite Wall&#039;, &#039;Andesite Wall&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;, &#039;Polished Deepslate Wall&#039;, &#039;Deepslate Brick Wall&#039;, &#039;Deepslate Tile Wall&#039;, &#039;Brick Wall&#039;, &#039;Mud Brick Wall&#039;, &#039;Resin Brick Wall&#039;, &#039;Sandstone Wall&#039;, &#039;Red Sandstone Wall&#039;, &#039;Prismarine Wall&#039;, &lt;br /&gt;
		&#039;Nether Brick Wall&#039;, &#039;Red Nether Brick Wall&#039;, &#039;Blackstone Wall&#039;, &#039;Polished Blackstone Wall&#039;, &#039;Polished Blackstone Brick Wall&#039;, &#039;End Stone Brick Wall&#039; },&lt;br /&gt;
	[&#039;Purpur Block&#039;] = { &#039;Purpur Block&#039;, &#039;Purpur Pillar&#039; },&lt;br /&gt;
	[&#039;Stone&#039;] = { &#039;Stone&#039;, &#039;Andesite&#039;, &#039;Granite&#039;, &#039;Diorite&#039;, &#039;Polished Andesite&#039;, &#039;Polished Granite&#039;, &#039;Polished Diorite&#039; },&lt;br /&gt;
	[&#039;Resin Block&#039;] = { &#039;Block of Resin&#039;, &#039;Resin Bricks&#039;, &#039;Chiseled Resin Bricks&#039; },&lt;br /&gt;
	[&#039;Tulip&#039;] = { &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039; },&lt;br /&gt;
	[&#039;Prismarine&#039;] = { &#039;Prismarine&#039;, &#039;Prismarine Bricks&#039;, &#039;Dark Prismarine&#039; },&lt;br /&gt;
	[&#039;Ore&#039;] = { &#039;Coal Ore&#039;, &#039;Iron Ore&#039;, &#039;Gold Ore&#039;, &#039;Lapis Lazuli Ore&#039;, &#039;Redstone Ore&#039;, &#039;Emerald Ore&#039;, &#039;Diamond Ore&#039;, &#039;Nether Quartz Ore&#039;, &#039;Nether Gold Ore&#039;, &#039;Deepslate Coal Ore&#039;, &lt;br /&gt;
		&#039;Deepslate Copper Ore&#039;, &#039;Deepslate Emerald Ore&#039;, &#039;Deepslate Iron Ore&#039;, &#039;Deepslate Gold Ore&#039;, &#039;Deepslate Lapis Lazuli Ore&#039;, &#039;Deepslate Redstone Ore&#039;, &#039;Deepslate Diamond Ore&#039;},&lt;br /&gt;
	[&#039;Dead Coral Block&#039;] = { &#039;Dead Tube Coral Block&#039;, &#039;Dead Brain Coral Block&#039;, &#039;Dead Bubble Coral Block&#039;, &#039;Dead Fire Coral Block&#039;, &#039;Dead Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Coral Block&#039;] = { &#039;Tube Coral Block&#039;, &#039;Brain Coral Block&#039;, &#039;Bubble Coral Block&#039;, &#039;Fire Coral Block&#039;, &#039;Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Dead Coral&#039;] = { &#039;Dead Tube Coral&#039;, &#039;Dead Brain Coral&#039;, &#039;Dead Bubble Coral&#039;, &#039;Dead Fire Coral&#039;, &#039;Dead Horn Coral&#039; },&lt;br /&gt;
	[&#039;Dead Coral Fan&#039;] = { &#039;Dead Tube Coral Fan&#039;, &#039;Dead Brain Coral Fan&#039;, &#039;Dead Bubble Coral Fan&#039;, &#039;Dead Fire Coral Fan&#039;, &#039;Dead Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Coral&#039;] = { &#039;Tube Coral&#039;, &#039;Brain Coral&#039;, &#039;Bubble Coral&#039;, &#039;Fire Coral&#039;, &#039;Horn Coral&#039; },&lt;br /&gt;
	[&#039;Coral Fan&#039;] = { &#039;Tube Coral Fan&#039;, &#039;Brain Coral Fan&#039;, &#039;Bubble Coral Fan&#039;, &#039;Fire Coral Fan&#039;, &#039;Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Torch&#039;] = { &#039;Torch&#039;, &#039;Soul Torch&#039; },&lt;br /&gt;
	[&#039;Lantern&#039;] = { &#039;Lantern&#039;, &#039;Soul Lantern&#039; },&lt;br /&gt;
	[&#039;Fungus&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Fungi&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Roots&#039;] = { &#039;Crimson Roots&#039;, &#039;Warped Roots&#039; },&lt;br /&gt;
	[&#039;Nylium&#039;] = { &#039;Crimson Nylium&#039;, &#039;Warped Nylium&#039; },&lt;br /&gt;
	[&#039;Soul Sand&#039;] = { &#039;Soul Sand&#039;, &#039;Soul Soil&#039; },&lt;br /&gt;
	[&#039;Campfire&#039;] = { &#039;Campfire&#039;, &#039;Soul Campfire&#039; },&lt;br /&gt;
	[&#039;Blackstone&#039;] = { &#039;Blackstone&#039;, &#039;Polished Blackstone&#039;, &#039;Chiseled Polished Blackstone&#039;, &#039;Polished Blackstone Bricks&#039;, &#039;Cracked Polished Blackstone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Button&#039;] = { &#039;Stone Button&#039;, &#039;Polished Blackstone Button&#039; },&lt;br /&gt;
	[&#039;Stone Pressure Plate&#039;] = { &#039;Stone Pressure Plate&#039;, &#039;Polished Blackstone Pressure Plate&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Copper --&lt;br /&gt;
local copperstuff = {&lt;br /&gt;
	&#039;Block of Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper Stairs&#039;,&lt;br /&gt;
	&#039;Cut Copper Slab&#039;,&lt;br /&gt;
	&#039;Chiseled Copper&#039;,&lt;br /&gt;
	&#039;Copper Grate&#039;,&lt;br /&gt;
	&#039;Copper Bulb&#039;,&lt;br /&gt;
	&#039;Copper Door&#039;,&lt;br /&gt;
	&#039;Copper Trapdoor&#039;,&lt;br /&gt;
}&lt;br /&gt;
local coppervariants = { &#039;&#039;, &#039;Exposed &#039;, &#039;Weathered &#039;, &#039;Oxidized &#039; }&lt;br /&gt;
for _, copper in ipairs( copperstuff ) do&lt;br /&gt;
	itemVariants[&#039;Unwaxed &#039; .. copper] = {}&lt;br /&gt;
	itemVariants[&#039;Waxed &#039; .. copper] = {}&lt;br /&gt;
	for _, coppervariant in ipairs( coppervariants ) do&lt;br /&gt;
		local name = coppervariant .. copper&lt;br /&gt;
		if copper == &#039;Block of Copper&#039; and coppervariant ~= &#039;&#039; then&lt;br /&gt;
			name = coppervariant .. &#039;Copper&#039;&lt;br /&gt;
		end&lt;br /&gt;
		table.insert( itemVariants[&#039;Unwaxed &#039; .. copper], name )&lt;br /&gt;
		table.insert( itemVariants[&#039;Waxed &#039; .. copper], &#039;Waxed &#039; .. name )&lt;br /&gt;
	end&lt;br /&gt;
	itemVariants[copper] = {}&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Unwaxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Waxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for aliasName, aliasItems in pairs( itemVariants ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. aliasName] = aliasItems&lt;br /&gt;
	aliases[&#039;Matching &#039; .. aliasName] = aliasItems&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Discs --&lt;br /&gt;
local discs = { &lt;br /&gt;
	{ &#039;13&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Cat&#039;,                 &#039;C418&#039;,         &#039;cat&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Blocks&#039;,              &#039;C418&#039;,         &#039;blocks&#039;,    &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Chirp&#039;,               &#039;C418&#039;,         &#039;chirp&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Far&#039;,                 &#039;C418&#039;,         &#039;far&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mall&#039;,                &#039;C418&#039;,         &#039;mall&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mellohi&#039;,             &#039;C418&#039;,         &#039;mellohi&#039;,   &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Stal&#039;,                &#039;C418&#039;,         &#039;stal&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Strad&#039;,               &#039;C418&#039;,         &#039;strad&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Ward&#039;,                &#039;C418&#039;,         &#039;ward&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;11&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wait&#039;,                &#039;C418&#039;,         &#039;wait&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Otherside&#039;,           &#039;Lena Raine&#039;,   &#039;otherside&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Pigstep&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;5&#039;,                   &#039;Samuel Åberg&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Relic&#039;,               &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Precipice&#039;,           &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Creator&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Creator (Music Box)&#039;, &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
}&lt;br /&gt;
for _, disc in ipairs( discs ) do&lt;br /&gt;
    local rarityColor = disc[4]&lt;br /&gt;
	local name = &#039;Music Disc &#039; .. disc[1]&lt;br /&gt;
	local artist = disc[2]&lt;br /&gt;
	local trackname = disc[1]&lt;br /&gt;
	if disc[3] ~= &#039;&#039; then&lt;br /&gt;
		trackname = disc[3]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = rarityColor .. &#039;Music Disc&#039;, name = name, text = &#039;&amp;amp;7&#039; .. artist .. &#039; - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Disc Fragments --&lt;br /&gt;
local disc_fragments = { &lt;br /&gt;
	{ &#039;5&#039;,    },&lt;br /&gt;
}&lt;br /&gt;
for _, disc_fragment in ipairs( disc_fragments ) do&lt;br /&gt;
	local name = &#039;Disc Fragment &#039; .. disc_fragment[1]&lt;br /&gt;
	local trackname = disc_fragment[1]&lt;br /&gt;
	if disc_fragment[2] ~= nil then&lt;br /&gt;
		trackname = disc_fragment[2]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;eDisc Fragment&#039;, name = name, text = &#039;&amp;amp;7Music Disc - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Paintings --&lt;br /&gt;
local paintings = { &lt;br /&gt;
	{ &#039;Kebab med tre pepperoni&#039;,    &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;de_aztec&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Albanian&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Target Successfully Bombed&#039;, &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Paradisträd&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wasteland&#039;,                  &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Meditative&#039;,                 &#039;Sarah Boeving&#039;,           &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wanderer&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Graham&#039;,                     &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Prairie Ride&#039;,               &#039;Sarah Boeving&#039;,           &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;The Pool&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Bonjour Monsieur Courbet&#039;,   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;sunset_dense&#039;,               &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Seaside&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Creebet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Match&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bust&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The Stage Is Set&#039;,           &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The void&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Skull and Roses&#039;,            &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wither&#039;,                     &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Baroque&#039;,                    &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Humble&#039;,                     &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bouquet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cavebird&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cotán&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Endboss&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Fern&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Owlemons&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Sunflowers&#039;,                 &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Tides&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Backyard&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Pond&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Fighters&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Changing&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Finding&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Lowmist&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Passage&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Mortal Coil&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Kong&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Pointer&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Pigscene&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Skull On Fire&#039;,              &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Unpacked&#039;,                   &#039;Sarah Boeving&#039;,           &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Orb&#039;,                        &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Earth&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wind&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Fire&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Water&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; }&lt;br /&gt;
}&lt;br /&gt;
for _, painting in ipairs( paintings ) do&lt;br /&gt;
	local name = &#039;Painting &#039; .. painting[1]&lt;br /&gt;
	local artist = painting[2]&lt;br /&gt;
	local artwork = painting[1]&lt;br /&gt;
	local size = painting[3]&lt;br /&gt;
	aliases[name] = { title = &#039;Painting&#039;, name = &#039;Painting&#039;, text = &#039;&amp;amp;e&#039; .. artwork .. &#039;/&amp;amp;7&#039; .. artist .. &#039;/&#039; .. &#039;&amp;amp;f&#039; .. size }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Damaged items, note it skips tools, weapons, and armor as they are handled above to add the damage tooltip. --&lt;br /&gt;
-- Items with rarity (such as Mace and Elytra) are hard-coded in the module&#039;s beginning.&lt;br /&gt;
local damagedItems = {&lt;br /&gt;
	&#039;Bow&#039;,&lt;br /&gt;
	&#039;Brush&#039;,&lt;br /&gt;
	&#039;Carrot on a Stick&#039;,&lt;br /&gt;
	&#039;Crossbow&#039;,&lt;br /&gt;
	&#039;Fishing Rod&#039;,&lt;br /&gt;
	&#039;Flint and Steel&#039;,&lt;br /&gt;
	&#039;Shears&#039;,&lt;br /&gt;
	&#039;Shield&#039;&lt;br /&gt;
}&lt;br /&gt;
for _, item in ipairs( damagedItems ) do&lt;br /&gt;
	local name = &#039;Damaged &#039; .. item&lt;br /&gt;
	aliases[name] = { title = item, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Banners and colored items --&lt;br /&gt;
local patterns = {&lt;br /&gt;
	&#039;Base Dexter Canton&#039;,&lt;br /&gt;
	&#039;Base&#039;,&lt;br /&gt;
	&#039;Base Gradient&#039;,&lt;br /&gt;
	&#039;Base Indented&#039;,&lt;br /&gt;
	&#039;Base Sinister Canton&#039;,&lt;br /&gt;
	&#039;Bend&#039;,&lt;br /&gt;
	&#039;Bend Sinister&#039;,&lt;br /&gt;
	&#039;Bordure&#039;,&lt;br /&gt;
	&#039;Bordure Indented&#039;,&lt;br /&gt;
	&#039;Chevron&#039;,&lt;br /&gt;
	&#039;Chief Dexter Canton&#039;,&lt;br /&gt;
	&#039;Chief&#039;,&lt;br /&gt;
	&#039;Chief Indented&#039;,&lt;br /&gt;
	&#039;Chief Sinister Canton&#039;,&lt;br /&gt;
	&#039;Creeper Charge&#039;,&lt;br /&gt;
	&#039;Cross&#039;,&lt;br /&gt;
	&#039;Fess&#039;,&lt;br /&gt;
	&#039;Field Masoned&#039;,&lt;br /&gt;
	&#039;Flow&#039;,&lt;br /&gt;
	&#039;Flower Charge&#039;,&lt;br /&gt;
	&#039;Globe&#039;,&lt;br /&gt;
	&#039;Gradient&#039;,&lt;br /&gt;
	&#039;Guster&#039;,&lt;br /&gt;
	&#039;Inverted Chevron&#039;,&lt;br /&gt;
	&#039;Lozenge&#039;,&lt;br /&gt;
	&#039;Thing&#039;,&lt;br /&gt;
	&#039;Pale&#039;,&lt;br /&gt;
	&#039;Pale Dexter&#039;,&lt;br /&gt;
	&#039;Pale Sinister&#039;,&lt;br /&gt;
	&#039;Paly&#039;,&lt;br /&gt;
	&#039;Per Bend&#039;,&lt;br /&gt;
	&#039;Per Bend Inverted&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister Inverted&#039;,&lt;br /&gt;
	&#039;Per Fess&#039;,&lt;br /&gt;
	&#039;Per Fess Inverted&#039;,&lt;br /&gt;
	&#039;Per Pale&#039;,&lt;br /&gt;
	&#039;Per Pale Inverted&#039;,&lt;br /&gt;
	&#039;Piglin&#039;,&lt;br /&gt;
	&#039;Snout&#039;,&lt;br /&gt;
	&#039;Roundel&#039;,&lt;br /&gt;
	&#039;Saltire&#039;,&lt;br /&gt;
	&#039;Skull Charge&#039;&lt;br /&gt;
}&lt;br /&gt;
local colors = {&lt;br /&gt;
	&#039;White&#039;,&lt;br /&gt;
	&#039;Light Gray&#039;,&lt;br /&gt;
	&#039;Gray&#039;,&lt;br /&gt;
	&#039;Black&#039;,&lt;br /&gt;
	&#039;Brown&#039;,&lt;br /&gt;
	&#039;Red&#039;,&lt;br /&gt;
	&#039;Orange&#039;,&lt;br /&gt;
	&#039;Yellow&#039;,&lt;br /&gt;
	&#039;Lime&#039;,&lt;br /&gt;
	&#039;Green&#039;,&lt;br /&gt;
	&#039;Cyan&#039;,&lt;br /&gt;
	&#039;Light Blue&#039;,&lt;br /&gt;
	&#039;Blue&#039;,&lt;br /&gt;
	&#039;Purple&#039;,&lt;br /&gt;
	&#039;Magenta&#039;,&lt;br /&gt;
	&#039;Pink&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Firework Stars --&lt;br /&gt;
local fireworkStar = {}&lt;br /&gt;
for _, color in ipairs( colors ) do&lt;br /&gt;
	local name = color .. &#039; Firework Star&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;Firework Star&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color }&lt;br /&gt;
	table.insert( fireworkStar, aliases[name] )&lt;br /&gt;
	for _, pattern in ipairs( patterns ) do&lt;br /&gt;
		name = color .. &#039; &#039; .. pattern .. &#039; Banner&#039;&lt;br /&gt;
		aliases[name] = { title = &#039;Banner&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color .. &#039; &#039; .. pattern }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Any Firework Star&#039;] = fireworkStar&lt;br /&gt;
aliases[&#039;Matching Firework Star&#039;] = fireworkStar&lt;br /&gt;
&lt;br /&gt;
-- Items that use the sixteen colors --&lt;br /&gt;
local coloredItems = {&lt;br /&gt;
	withWhite = {&lt;br /&gt;
		&#039;Balloon&#039;,&lt;br /&gt;
		&#039;Banner&#039;,&lt;br /&gt;
		&#039;Bed&#039;,&lt;br /&gt;
		&#039;Carpet&#039;,&lt;br /&gt;
		&#039;Concrete&#039;,&lt;br /&gt;
		&#039;Concrete Powder&#039;,&lt;br /&gt;
		&#039;Glazed Terracotta&#039;,&lt;br /&gt;
		&#039;Glow Stick&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Shield&#039;,&lt;br /&gt;
		&#039;Shulker Box&#039;,&lt;br /&gt;
		&#039;Stained Glass&#039;,&lt;br /&gt;
		&#039;Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Wool&#039;,&lt;br /&gt;
&lt;br /&gt;
		&#039;$Dyed Bundle&#039;,&lt;br /&gt;
		&#039;$Dyed Candle&#039;,&lt;br /&gt;
		&#039;$Dyed Terracotta&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	noWhite = {&lt;br /&gt;
		&#039;$Dyed Wool&#039;,&lt;br /&gt;
		&#039;$Dyed Bed&#039;,&lt;br /&gt;
		&#039;$Dyed Carpet&#039;,&lt;br /&gt;
		&#039;$Colored Dye&#039;,&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local coloredBadItems = {&lt;br /&gt;
	[&#039;Light Gray Glow Stick&#039;] = 1,&lt;br /&gt;
	[&#039;Black Glow Stick&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for type, items in pairs( coloredItems ) do&lt;br /&gt;
	for _, item in ipairs( items ) do&lt;br /&gt;
		local coloredItemAliases = {}&lt;br /&gt;
		local defaultItemAliases&lt;br /&gt;
&lt;br /&gt;
		if item:find( &#039;%$[^1]&#039; ) then&lt;br /&gt;
			defaultItemAliases = {}&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type == &#039;noWhite&#039; then&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+&#039;, &#039;White&#039; )&lt;br /&gt;
			else&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			end&lt;br /&gt;
			table.insert( defaultItemAliases, itemName )&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		for _, color in ipairs( colors ) do&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type ~= &#039;noWhite&#039; or color ~= &#039;White&#039; then&lt;br /&gt;
				if item:find( &#039;%$1&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$1&#039;, color )&lt;br /&gt;
				elseif item:find( &#039;%$&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$%w+&#039;, color )&lt;br /&gt;
				else&lt;br /&gt;
					itemName = color .. &#039; &#039; .. item&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			if not coloredBadItems[itemName] then&lt;br /&gt;
				if defaultItemAliases then&lt;br /&gt;
					table.insert( defaultItemAliases, itemName )&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				table.insert( coloredItemAliases, itemName )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if defaultItemAliases then&lt;br /&gt;
			local defaultItem = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			aliases[&#039;Any &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
			aliases[&#039;Matching &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
		end&lt;br /&gt;
		item = item:gsub( &#039;%$1 &#039;, &#039;&#039; )&lt;br /&gt;
		item = item:gsub( &#039;%$&#039;, &#039;&#039; )&lt;br /&gt;
		aliases[&#039;Any &#039; .. item] = coloredItemAliases&lt;br /&gt;
		aliases[&#039;Matching &#039; .. item] = coloredItemAliases&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
-- list of all potions with no effects&lt;br /&gt;
local noEffects = {&lt;br /&gt;
	&#039;Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Potion&#039;,&lt;br /&gt;
	&#039;Thick Potion&#039;,&lt;br /&gt;
	&#039;Mundane Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Potion&#039;,&lt;br /&gt;
	&#039;Splash Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Splash Potion&#039;,&lt;br /&gt;
	&#039;Thick Splash Potion&#039;,&lt;br /&gt;
	&#039;Mundane Splash Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Splash Potion&#039;,&lt;br /&gt;
	&#039;Lingering Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Lingering Potion&#039;,&lt;br /&gt;
	&#039;Thick Lingering Potion&#039;,&lt;br /&gt;
	&#039;Mundane Lingering Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Lingering Potion&#039;,&lt;br /&gt;
	&#039;Tipped Arrow&#039;,&lt;br /&gt;
	&#039;Arrow of Splashing&#039;,&lt;br /&gt;
	&#039;Uncraftable Tipped Arrow&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs(noEffects) do&lt;br /&gt;
	aliases[name] = { name = name, text = &#039;&amp;amp;7No Effects&#039; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- start these lists with the no effect items as names are not normal&lt;br /&gt;
local potionItems = {&lt;br /&gt;
	[&#039;Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Splash Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Splash Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Splash Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Lingering Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Lingering Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Lingering Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Tipped Arrow&#039;] = {&lt;br /&gt;
		aliases[&#039;Arrow of Splashing&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Potions --&lt;br /&gt;
local effects = {&lt;br /&gt;
	-- durations are in the order normal, extended, enhanced&lt;br /&gt;
	{name = &#039;Regeneration&#039;, effect = &#039;&amp;amp;9Regeneration&#039;, enhanced = &#039;II&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:22&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Swiftness&#039;, effect = &#039;&amp;amp;9Speed&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Fire Resistance&#039;, effect = &#039;&amp;amp;9Fire Resistance&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Poison&#039;, effect = &#039;&amp;amp;cPoison&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:21&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Healing&#039;, effect = &#039;&amp;amp;9Instant Health&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Night Vision&#039;,    effect = &#039;&amp;amp;9Night Vision&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Weakness&#039;,        effect = &#039;&amp;amp;cWeakness&#039;,        durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Strength&#039;, effect = &#039;&amp;amp;9Strength&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039;}, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Slowness&#039;, effect = &#039;&amp;amp;cSlowness&#039;, enhanced = &#039;IV&#039;, &lt;br /&gt;
		durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039;, &#039;0:20&#039;}, lingering = {&#039;0:22&#039;, &#039;1:00&#039;, &#039;0:05&#039;}, arrow = { &#039;0:11&#039;, &#039;0:30&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Leaping&#039;, effect = &#039;&amp;amp;9Jump Boost&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Harming&#039;, effect = &#039;&amp;amp;cInstant Damage&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Water Breathing&#039;, effect = &#039;&amp;amp;9Water Breathing&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Invisibility&#039;,    effect = &#039;&amp;amp;9Invisibility&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Slow Falling&#039;,    effect = &#039;&amp;amp;9Slow Falling&#039;,    durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Luck&#039;,  effect = &#039;&amp;amp;9Luck&#039;,   durations = { normal = { &#039;5:00&#039; }, lingering = { &#039;1:15&#039; }, arrow = { &#039;0:37&#039; }}},&lt;br /&gt;
	{ name = &#039;Decay&#039;, effect = &#039;&amp;amp;cWither II&#039;, durations = { normal = { &#039;0:40&#039; }, lingering = { &#039;0:10&#039; }, arrow = { &#039;0:05&#039; }}},&lt;br /&gt;
	{ name = &#039;the Turtle Master&#039;, text = &#039;&amp;amp;cSlowness IV ($1)/&amp;amp;9Resistance III ($1)&#039;, enhanced = &#039;&amp;amp;cSlowness VI ($1)/&amp;amp;9Resistance IV ($1)&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:20&#039;, &#039;0:40&#039;, &#039;0:20&#039; }, lingering = { &#039;0:15&#039;, &#039;0:45&#039;, &#039;0:15&#039; }, arrow = {  &#039;0:07&#039;, &#039;0:22&#039;, &#039;0:07&#039; }}},&lt;br /&gt;
	{ name = &#039;Oozing&#039;,  effect = &#039;&amp;amp;cOozing&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Infestation&#039;,  effect = &#039;&amp;amp;cInfested&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Weaving&#039;,  effect = &#039;&amp;amp;cWeaving&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Wind Charging&#039;,  effect = &#039;&amp;amp;cWind Charged&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}}&lt;br /&gt;
}&lt;br /&gt;
local types = {&lt;br /&gt;
	{name = &#039;Potion&#039;,           durations = &#039;normal&#039;,    text = &#039;Potion of &#039;},&lt;br /&gt;
	{name = &#039;Splash Potion&#039;,    durations = &#039;normal&#039;,    text = &#039;Splash Potion of &#039;},&lt;br /&gt;
	{name = &#039;Lingering Potion&#039;, durations = &#039;lingering&#039;, text = &#039;Lingering Potion of &#039;},&lt;br /&gt;
	{name = &#039;Tipped Arrow&#039;,     durations = &#039;arrow&#039;,     text = &#039;Arrow of &#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, effect in ipairs(effects) do&lt;br /&gt;
	for _, type in ipairs(types) do&lt;br /&gt;
		-- form name, it will be reused&lt;br /&gt;
		local name =  type.text .. effect.name&lt;br /&gt;
		local potionName = {}&lt;br /&gt;
		if type.name == &#039;Tipped Arrow&#039; then&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		else&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- if we have durations, add times&lt;br /&gt;
		if effect.durations then&lt;br /&gt;
			local durations = effect.durations[type.durations]&lt;br /&gt;
			&lt;br /&gt;
			-- turtle master is weird, so just do a fancy string replacement&lt;br /&gt;
			if effect.text then&lt;br /&gt;
				aliases[name] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[1] ) }&lt;br /&gt;
				aliases[name .. &#039; Extended&#039;] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
				aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.enhanced:gsub( &#039;%$1&#039;, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
			else&lt;br /&gt;
				-- we always have normal&lt;br /&gt;
				aliases[name] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[1] ) }&lt;br /&gt;
			&lt;br /&gt;
				-- ensure we have extended&lt;br /&gt;
				if durations[2] then&lt;br /&gt;
					aliases[name .. &#039; Extended&#039;] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
					&lt;br /&gt;
					-- and enhanced&lt;br /&gt;
					if effect.enhanced then&lt;br /&gt;
						aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = string.format( &#039;%s %s (%s)&#039;, effect.effect, effect.enhanced, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- otherwise its just effect, currently every potion with no duration can be enhanced&lt;br /&gt;
			aliases[name] = { name = potionName, text = effect.effect}&lt;br /&gt;
			aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.effect .. &#039; &#039; .. effect.enhanced .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- add the base potion to the any list&lt;br /&gt;
		table.insert(potionItems[type.name], aliases[name])&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- build the any lists&lt;br /&gt;
for item, potionAliases in pairs( potionItems ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. item] = potionAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = potionAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Wood --&lt;br /&gt;
local woodTypes = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Oak&#039;,&lt;br /&gt;
	    &#039;Spruce&#039;,&lt;br /&gt;
	    &#039;Birch&#039;,&lt;br /&gt;
	    &#039;Jungle&#039;,&lt;br /&gt;
	    &#039;Acacia&#039;,&lt;br /&gt;
        &#039;Dark Oak&#039;,&lt;br /&gt;
        &#039;Mangrove&#039;,&lt;br /&gt;
        &#039;Cherry&#039;,&lt;br /&gt;
        &#039;Pale Oak&#039;,&lt;br /&gt;
        &#039;Bamboo&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Crimson&#039;,&lt;br /&gt;
        &#039;Warped&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {},&lt;br /&gt;
}&lt;br /&gt;
local woodTypeWorld = {}&lt;br /&gt;
for _, world in ipairs({&#039;overworld&#039;, &#039;nether&#039;}) do&lt;br /&gt;
	local woods = woodTypes[world]&lt;br /&gt;
	for _, type in ipairs(woods) do&lt;br /&gt;
		woodTypeWorld[type] = world&lt;br /&gt;
        table.insert(woodTypes.both, type)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
local woodItems = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Log&#039;,&lt;br /&gt;
        &#039;Wood&#039;,&lt;br /&gt;
        &#039;Stripped $1 Log&#039;,&lt;br /&gt;
        &#039;Stripped $1 Wood&#039;,&lt;br /&gt;
        &#039;Boat&#039;,&lt;br /&gt;
        &#039;Boat with Chest&#039;,&lt;br /&gt;
        &#039;Sapling&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Stem&#039;,&lt;br /&gt;
        &#039;Hyphae&#039;,&lt;br /&gt;
        &#039;Stripped $1 Stem&#039;,&lt;br /&gt;
        &#039;Stripped $1 Hyphae&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {&lt;br /&gt;
		-- Any/Matching X or Y&lt;br /&gt;
        &#039;${Log,Stem}&#039;,&lt;br /&gt;
        &#039;${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Log,Stem}&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Dimensional prefixes&lt;br /&gt;
        &#039;$world Planks&#039;,&lt;br /&gt;
        &#039;$world $wood Stairs&#039;,&lt;br /&gt;
        &#039;$world $wood Slab&#039;,&lt;br /&gt;
        &#039;$world $wood Fence&#039;,&lt;br /&gt;
        &#039;$world $wood Fence Gate&#039;,&lt;br /&gt;
        &#039;$world $wood Door&#039;,&lt;br /&gt;
        &#039;$world $wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$world $wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$world $wood Button&#039;,&lt;br /&gt;
        &#039;$world $wood Sign&#039;,&lt;br /&gt;
        &#039;$world $wood Hanging Sign&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Both dimensions&lt;br /&gt;
		-- Items with non-wood variants include $wood&lt;br /&gt;
        &#039;Planks&#039;,&lt;br /&gt;
        &#039;$wood Stairs&#039;,&lt;br /&gt;
        &#039;$wood Slab&#039;,&lt;br /&gt;
        &#039;$wood Fence&#039;,&lt;br /&gt;
        &#039;Fence Gate&#039;,&lt;br /&gt;
        &#039;$wood Door&#039;,&lt;br /&gt;
        &#039;$wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$wood Button&#039;,&lt;br /&gt;
        &#039;Sign&#039;,&lt;br /&gt;
        &#039;Hanging Sign&#039;,&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
local woodItemWorld = {}&lt;br /&gt;
for world, items in pairs(woodItems) do&lt;br /&gt;
    for _, item in ipairs(items) do&lt;br /&gt;
		-- expand $world (should only happen in &amp;quot;both&amp;quot;)&lt;br /&gt;
        if (item:find(&#039;%$world&#039;)) and world == &#039;both&#039; then&lt;br /&gt;
            item = item:gsub(&#039;%$world &#039;, &#039;&#039;)&lt;br /&gt;
            woodItemWorld[&#039;Overworld &#039; .. item] = &#039;overworld&#039;&lt;br /&gt;
			woodItemWorld[&#039;Nether &#039; .. item] = &#039;nether&#039;&lt;br /&gt;
		else&lt;br /&gt;
			woodItemWorld[item] = world&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local woodBadItems = {&lt;br /&gt;
	[&#039;Bamboo Sapling&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Log&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Log&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local woodNameMapping = {&lt;br /&gt;
	[&#039;Mangrove Sapling&#039;] = &#039;Mangrove Propagule&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat&#039;] = &#039;Bamboo Raft&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat with Chest&#039;] = &#039;Bamboo Raft with Chest&#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for item, world in pairs(woodItemWorld) do&lt;br /&gt;
	local itemName = &#039;&#039;&lt;br /&gt;
	local woodAliases = {}&lt;br /&gt;
&lt;br /&gt;
	-- real &amp;quot;linkable&amp;quot; name&lt;br /&gt;
    local realItem = item:gsub(&#039;^Overworld &#039;, &#039;&#039;)&lt;br /&gt;
    realItem = realItem:gsub(&#039;^Nether &#039;, &#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
	for _, wood in ipairs(woodTypes[world]) do&lt;br /&gt;
		-- Parse ${,} (world-select) syntax&lt;br /&gt;
		local selector = (woodTypeWorld[wood] == &#039;overworld&#039;) and &amp;quot;%1&amp;quot; or &amp;quot;%2&amp;quot;&lt;br /&gt;
		itemName = realItem:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, selector)&lt;br /&gt;
&lt;br /&gt;
		if itemName:find(&#039;%$wood&#039;) then&lt;br /&gt;
			itemName = itemName:gsub(&#039;%$wood&#039;, wood)&lt;br /&gt;
		elseif itemName:find(&#039;%$1&#039;) then&lt;br /&gt;
			itemName = itemName:gsub( &#039;%$1&#039;, wood)&lt;br /&gt;
		else&lt;br /&gt;
			itemName = wood .. &#039; &#039; .. itemName&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- special handling&lt;br /&gt;
		if woodNameMapping[itemName] then&lt;br /&gt;
			itemName = woodNameMapping[itemName]&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if not woodBadItems[itemName] then&lt;br /&gt;
			table.insert(woodAliases, itemName)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Parse ${,} (world-select) syntax&lt;br /&gt;
	item = item:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, &amp;quot;%1 or %2&amp;quot;)&lt;br /&gt;
    item = item:gsub(&#039;%$wood&#039;, &#039;Wooden&#039;)&lt;br /&gt;
    item = item:gsub(&#039;%$1 &#039;, &#039;&#039;)&lt;br /&gt;
    aliases[&#039;Any &#039; .. item] = woodAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = woodAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Bedrock Edition Items --&lt;br /&gt;
local editionItems = {&lt;br /&gt;
	BE = {&lt;br /&gt;
		&#039;Acacia Fence Gate&#039;,&lt;br /&gt;
		&#039;Andesite Wall&#039;,&lt;br /&gt;
		&#039;Birch Fence Gate&#039;,&lt;br /&gt;
		&#039;Black Bed&#039;,&lt;br /&gt;
		&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Blue Bed&#039;,&lt;br /&gt;
		&#039;Blue Ice&#039;,&lt;br /&gt;
		&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bow&#039;,&lt;br /&gt;
		&#039;Brick Wall&#039;,&lt;br /&gt;
		&#039;Brown Bed&#039;,&lt;br /&gt;
		&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bucket of Pufferfish&#039;,&lt;br /&gt;
		&#039;Bucket of Tropical Fish&#039;,&lt;br /&gt;
		&#039;Cat Spawn Egg&#039;,&lt;br /&gt;
		&#039;Chest&#039;,&lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Crimson Fence Gate&#039;,&lt;br /&gt;
		&#039;Crying Obsidian&#039;,&lt;br /&gt;
		&#039;Cyan Bed&#039;,&lt;br /&gt;
		&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Dark Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Deepslate Brick Wall&#039;,&lt;br /&gt;
		&#039;Deepslate Tile Wall&#039;,&lt;br /&gt;
		&#039;Desert Village Map&#039;,&lt;br /&gt;
		&#039;Diorite Wall&#039;,&lt;br /&gt;
		&#039;Enchanting Table&#039;,&lt;br /&gt;
		&#039;End Gateway&#039;,&lt;br /&gt;
		&#039;End Portal Frame&#039;,&lt;br /&gt;
		&#039;End Portal&#039;,&lt;br /&gt;
		&#039;End Rod&#039;,&lt;br /&gt;
		&#039;End Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Ender Chest&#039;,&lt;br /&gt;
		&#039;Glass Pane&#039;,&lt;br /&gt;
		&#039;Glowstone&#039;,&lt;br /&gt;
		&#039;Granite Wall&#039;,&lt;br /&gt;
		&#039;Gray Bed&#039;,&lt;br /&gt;
		&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Green Bed&#039;,&lt;br /&gt;
		&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Honey Block&#039;,&lt;br /&gt;
		&#039;Horn Coral Block&#039;,&lt;br /&gt;
		&#039;Iron Bars&#039;,&lt;br /&gt;
		&#039;Jack o\&#039;Lantern&#039;,&lt;br /&gt;
		&#039;Jungle Explorer Map&#039;,&lt;br /&gt;
		&#039;Jungle Fence Gate&#039;,&lt;br /&gt;
		&#039;Jungle Leaves&#039;,&lt;br /&gt;
		&#039;Lava&#039;,&lt;br /&gt;
		&#039;Leather Horse Armor&#039;,&lt;br /&gt;
		&#039;Light&#039;,&lt;br /&gt;
		&#039;Light Blue Bed&#039;,&lt;br /&gt;
		&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Light Gray Bed&#039;,&lt;br /&gt;
		&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Lime Bed&#039;,&lt;br /&gt;
		&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
        &#039;Lodestone Compass&#039;,&lt;br /&gt;
        &#039;Magenta Bed&#039;,&lt;br /&gt;
		&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Magma Block&#039;,&lt;br /&gt;
		&#039;Map&#039;,&lt;br /&gt;
		&#039;Minecart with Command Block&#039;,&lt;br /&gt;
		&#039;Monster Spawner&#039;,&lt;br /&gt;
		&#039;Mossy Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Mossy Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Mud Brick Wall&#039;,&lt;br /&gt;
		&#039;Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Observer&#039;,&lt;br /&gt;
		&#039;Ocean Explorer Map&#039;,&lt;br /&gt;
		&#039;Ochre Froglight&#039;,&lt;br /&gt;
		&#039;Orange Bed&#039;,&lt;br /&gt;
		&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Panda Spawn Egg&#039;,&lt;br /&gt;
		&#039;Pearlescent Froglight&#039;,&lt;br /&gt;
		&#039;Pink Bed&#039;,&lt;br /&gt;
		&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Plains Village Map&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Brick Wall&#039;,&lt;br /&gt;
		&#039;Polished Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Polished Tuff Wall&#039;,&lt;br /&gt;
		&#039;Prismarine Wall&#039;,&lt;br /&gt;
		&#039;Purple Bed&#039;,&lt;br /&gt;
		&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Red Bed&#039;,&lt;br /&gt;
		&#039;Red Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Red Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Resin Brick Wall&#039;,&lt;br /&gt;
		&#039;Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Savanna Village Map&#039;,&lt;br /&gt;
		&#039;Scaffolding&#039;,&lt;br /&gt;
		&#039;Sea Lantern&#039;,&lt;br /&gt;
		&#039;Shroomlight&#039;,&lt;br /&gt;
		&#039;Snowy Village Map&#039;,&lt;br /&gt;
		&#039;Spruce Fence Gate&#039;,&lt;br /&gt;
		&#039;Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Stonecutter&#039;,&lt;br /&gt;
		&#039;Structure Void&#039;,&lt;br /&gt;
		&#039;Swamp Explorer Map&#039;,&lt;br /&gt;
		&#039;Taiga Village Map&#039;,&lt;br /&gt;
		&#039;Trapped Chest&#039;,&lt;br /&gt;
		&#039;Trial Explorer Map&#039;,&lt;br /&gt;
		&#039;Tuff Wall&#039;,&lt;br /&gt;
		&#039;Tuff Brick Wall&#039;,&lt;br /&gt;
		&#039;Verdant Froglight&#039;,&lt;br /&gt;
		&#039;Wandering Trader Spawn Egg&#039;,&lt;br /&gt;
		&#039;Warped Fence Gate&#039;,&lt;br /&gt;
		&#039;White Bed&#039;,&lt;br /&gt;
		&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Woodland Explorer Map&#039;,&lt;br /&gt;
		&#039;Yellow Bed&#039;,&lt;br /&gt;
		&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	LCE = {&lt;br /&gt;
		&#039;Shrub&#039;&lt;br /&gt;
	},&lt;br /&gt;
	    SM = {&lt;br /&gt;
    	&#039;Compass&#039;,&lt;br /&gt;
    	&#039;Diamond Axe&#039;,&lt;br /&gt;
    	&#039;Diamond Hoe&#039;,&lt;br /&gt;
    	&#039;Diamond Pickaxe&#039;,&lt;br /&gt;
    	&#039;Diamond Shovel&#039;,&lt;br /&gt;
    	&#039;Diamond Sword&#039;,&lt;br /&gt;
    	&#039;Flint and Steel&#039;,&lt;br /&gt;
    	&#039;Potion of Invisibility&#039;,&lt;br /&gt;
    	&#039;Potion of Leaping&#039;,&lt;br /&gt;
    	&#039;Potion of Swiftness&#039;,&lt;br /&gt;
    	&#039;TNT&#039;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
for edition, items in pairs(editionItems) do&lt;br /&gt;
	for _, item in ipairs(items) do&lt;br /&gt;
		local name = item .. &#039; &#039; .. edition&lt;br /&gt;
		aliases[name] = { title = item, name = name }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Light blocks --&lt;br /&gt;
for level = 0, 15 do&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level] = { title = &amp;quot;&amp;amp;dLight&amp;quot;, name = &amp;quot;Light &amp;quot; .. level }&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot;] = { title = &amp;quot;Light&amp;quot;, name = &amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Pottery Sherds --&lt;br /&gt;
local pottery_sherds = { &lt;br /&gt;
	{ &#039;Angler&#039; },&lt;br /&gt;
	{ &#039;Arms Up&#039; },&lt;br /&gt;
	{ &#039;Archer&#039; },&lt;br /&gt;
	{ &#039;Blade&#039; },&lt;br /&gt;
	{ &#039;Brewer&#039; },&lt;br /&gt;
	{ &#039;Burn&#039; },&lt;br /&gt;
	{ &#039;Danger&#039; },&lt;br /&gt;
	{ &#039;Explorer&#039; },&lt;br /&gt;
	{ &#039;Flow&#039; },&lt;br /&gt;
	{ &#039;Friend&#039; },&lt;br /&gt;
	{ &#039;Guster&#039; },&lt;br /&gt;
	{ &#039;Heart&#039; },&lt;br /&gt;
	{ &#039;Heartbreak&#039; },&lt;br /&gt;
	{ &#039;Howl&#039; },&lt;br /&gt;
	{ &#039;Miner&#039; },&lt;br /&gt;
	{ &#039;Mourner&#039; },&lt;br /&gt;
	{ &#039;Plenty&#039; },&lt;br /&gt;
	{ &#039;Prize&#039; },&lt;br /&gt;
	{ &#039;Scrape&#039; },&lt;br /&gt;
	{ &#039;Sheaf&#039; },&lt;br /&gt;
	{ &#039;Shelter&#039; },&lt;br /&gt;
	{ &#039;Skull&#039; },&lt;br /&gt;
	{ &#039;Snort&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local potterySherdAliases = {}&lt;br /&gt;
for _, pottery_sherd in ipairs(pottery_sherds) do&lt;br /&gt;
	local name = pottery_sherd[1] .. &#039; Pottery Sherd&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039; .. name , name = name }&lt;br /&gt;
	table.insert(potterySherdAliases, aliases[name])&lt;br /&gt;
end&lt;br /&gt;
table.insert(potterySherdAliases, &#039;Brick&#039;)&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Pottery Sherd&#039;] = potterySherdAliases&lt;br /&gt;
&lt;br /&gt;
-- Smithing Templates --&lt;br /&gt;
local smithing_templates = {&lt;br /&gt;
	{ &#039;Netherite Upgrade&#039;,    &#039;Diamond Equipment&#039;, &#039;Netherite Ingot&#039;,  &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Bolt Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Coast Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Dune Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Eye Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Flow Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Host Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Raiser Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Rib Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Sentry Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Shaper Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Silence Armor Trim&#039;,   &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;d&#039; },&lt;br /&gt;
	{ &#039;Snout Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Spire Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Tide Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Vex Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Ward Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Wayfinder Armor Trim&#039;, &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wild Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
local smithing_template_array = {}&lt;br /&gt;
local armor_trims_array = {}&lt;br /&gt;
for _,smithing_template in pairs(smithing_templates) do&lt;br /&gt;
    local rarityColor = smithing_template[4]&lt;br /&gt;
	local current_alias = {&lt;br /&gt;
		title = rarityColor .. smithing_template[1],&lt;br /&gt;
		name = smithing_template[1] .. &#039; Smithing Template&#039;,&lt;br /&gt;
		text = &#039;&amp;amp;7&#039; .. &#039;Smithing Template&#039; .. &#039;//Applies to:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[2] .. &#039;/&amp;amp;7Ingredients:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[3],&lt;br /&gt;
	}&lt;br /&gt;
	aliases[smithing_template[1]] = current_alias&lt;br /&gt;
	aliases[smithing_template[1] .. &#039; Smithing Template&#039;] = current_alias&lt;br /&gt;
	table.insert(smithing_template_array,current_alias)&lt;br /&gt;
	if string.find(smithing_template[1],&#039; Armor Trim$&#039;) then&lt;br /&gt;
		table.insert(armor_trims_array,current_alias)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Matching Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Any Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return aliases&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Shroomlight.png&amp;diff=12266</id>
		<title>File:Invicon Shroomlight.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Shroomlight.png&amp;diff=12266"/>
		<updated>2026-08-28T02:15:09Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Glowstone.png&amp;diff=12265</id>
		<title>File:Invicon Glowstone.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Glowstone.png&amp;diff=12265"/>
		<updated>2026-08-28T02:15:06Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Redstone_Lamp.png&amp;diff=12264</id>
		<title>File:Invicon Redstone Lamp.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Redstone_Lamp.png&amp;diff=12264"/>
		<updated>2026-08-28T02:15:02Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Pearlescent_Froglight.png&amp;diff=12263</id>
		<title>File:Invicon Pearlescent Froglight.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Pearlescent_Froglight.png&amp;diff=12263"/>
		<updated>2026-08-28T02:14:01Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Verdant_Froglight.png&amp;diff=12262</id>
		<title>File:Invicon Verdant Froglight.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Verdant_Froglight.png&amp;diff=12262"/>
		<updated>2026-08-28T02:13:56Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=File:Invicon_Ochre_Froglight.png&amp;diff=12261</id>
		<title>File:Invicon Ochre Froglight.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=File:Invicon_Ochre_Froglight.png&amp;diff=12261"/>
		<updated>2026-08-28T02:13:52Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12254</id>
		<title>Module:Inventory slot/Aliases</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12254"/>
		<updated>2026-08-27T21:25:46Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local aliases = {&lt;br /&gt;
	-- Common fuel types for furnace --&lt;br /&gt;
	[&#039;Any fuel&#039;] = { &#039;Coal&#039;, &#039;Charcoal&#039;, { title = &#039;Log&#039;, name = &#039;Oak Log&#039; }, { title = &#039;Overworld Planks&#039;, name = &#039;Oak Planks&#039; }, &#039;Lava Bucket&#039;, &#039;Block of Coal&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- All armor --&lt;br /&gt;
	[&#039;Any leather armor&#039;] = { &#039;Leather Cap&#039;, &#039;Leather Tunic&#039;, &#039;Leather Pants&#039;, &#039;Leather Boots&#039; },&lt;br /&gt;
	[&#039;Any golden armor&#039;] = { &#039;Golden Helmet&#039;, &#039;Golden Chestplate&#039;, &#039;Golden Leggings&#039;, &#039;Golden Boots&#039; },&lt;br /&gt;
	[&#039;Any chainmail armor&#039;] = { &#039;Chainmail Helmet&#039;, &#039;Chainmail Chestplate&#039;, &#039;Chainmail Leggings&#039;, &#039;Chainmail Boots&#039; },&lt;br /&gt;
	[&#039;Any iron armor&#039;] = { &#039;Iron Helmet&#039;, &#039;Iron Chestplate&#039;, &#039;Iron Leggings&#039;, &#039;Iron Boots&#039; },&lt;br /&gt;
	[&#039;Any diamond armor&#039;] = { &#039;Diamond Helmet&#039;, &#039;Diamond Chestplate&#039;, &#039;Diamond Leggings&#039;, &#039;Diamond Boots&#039; },&lt;br /&gt;
	[&#039;Any netherite armor&#039;] = { &#039;Netherite Helmet&#039;, &#039;Netherite Chestplate&#039;, &#039;Netherite Leggings&#039;, &#039;Netherite Boots&#039; },&lt;br /&gt;
&lt;br /&gt;
    -- Stones --&lt;br /&gt;
	[&#039;Any Cobblestone or Blackstone&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039; },&lt;br /&gt;
	[&#039;Any stone-tier block&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039;, &#039;Cobbled Deepslate&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Miscellaeous collections --&lt;br /&gt;
	[&#039;Any leaves&#039;] = { &#039;Oak Leaves&#039;, &#039;Spruce Leaves&#039;, &#039;Birch Leaves&#039;, &#039;Acacia Leaves&#039;, &#039;Jungle Leaves&#039;, &#039;Dark Oak Leaves&#039;, &#039;Mangrove Leaves&#039;, &#039;Cherry Leaves&#039;, &#039;Pale Oak Leaves&#039;, &#039;Azalea Leaves&#039;, &#039;Flowering Azalea Leaves&#039; };&lt;br /&gt;
	[&#039;Any egg&#039;] = { &#039;Egg&#039;, &#039;Blue Egg&#039;, &#039;Brown Egg&#039;};&lt;br /&gt;
	[&#039;Any stairs&#039;] = { &#039;Tuff Stairs&#039;, &#039;Polished Tuff Stairs&#039;, &#039;Tuff Brick Stairs&#039;, &#039;Cut Copper Stairs&#039;, &#039;Exposed Cut Copper Stairs&#039;, &#039;Weathered Cut Copper Stairs&#039;, &#039;Oxidized Cut Copper Stairs&#039;, &#039;Waxed Cut Copper Stairs&#039;, &#039;Waxed Exposed Cut Copper Stairs&#039;, &#039;Waxed Weathered Cut Copper Stairs&#039;, &#039;Waxed Oxidized Cut Copper Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Resin Brick Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Nether Brick Stairs&#039;, &#039;Sandstone Stairs&#039;, &#039;Oak Stairs&#039;, &#039;Spruce Stairs&#039;, &#039;Birch Stairs&#039;, &#039;Jungle Stairs&#039;, &#039;Acacia Stairs&#039;, &#039;Cherry Stairs&#039;, &#039;Dark Oak Stairs&#039;, &#039;Pale Oak Stairs&#039;, &#039;Mangrove Stairs&#039;, &#039;Bamboo Stairs&#039;, &#039;Bamboo Mosaic Stairs&#039;, &#039;Crimson Stairs&#039;, &#039;Warped Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Stone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Smooth Quartz Stairs&#039;, &#039;Granite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039; },&lt;br /&gt;
	&lt;br /&gt;
    [&#039;Any inventory&#039;] = { &#039;Chest&#039;, &#039;Trapped Chest&#039;, &#039;Barrel&#039;, &#039;Furnace&#039;, &#039;Smoker&#039;, &#039;Dispenser&#039;, &#039;Dropper&#039;, &#039;Decorated Pot&#039; },&lt;br /&gt;
    --Glass--&lt;br /&gt;
[&#039;Any Glass Pane&#039;] = {&lt;br /&gt;
	&#039;Glass Pane&#039;,&lt;br /&gt;
	&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
},&lt;br /&gt;
[&#039;Any Glass&#039;] = {&lt;br /&gt;
	&#039;Glass&#039;,&lt;br /&gt;
	&#039;White Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Black Stained Glass&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass&#039;,&lt;br /&gt;
	&#039;Red Stained Glass&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass&#039;,&lt;br /&gt;
	&#039;Green Stained Glass&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass&#039;,&lt;br /&gt;
},&lt;br /&gt;
    -- Misc HE--&lt;br /&gt;
    [&#039;Any Thruster Block&#039;]={&#039;Sea Lantern&#039;, &#039;Glowstone&#039;, &#039;Shroomlight&#039;, &#039;Ochre Froglight&#039;, &#039;Verdant Froglight&#039;, &#039;Pearlescent Froglight&#039;, &#039;Redstone Lamp&#039;},&lt;br /&gt;
	-- Display names --&lt;br /&gt;
	[&#039;Broken Elytra&#039;] = { title = &#039;&amp;amp;dElytra&#039;, name = &#039;Broken Elytra&#039; },&lt;br /&gt;
	[&#039;Button&#039;] = { title = &#039;Button&#039;, name = &#039;Stone Button&#039;},&lt;br /&gt;
	[&#039;Wooden Button&#039;] = { title = &#039;Button&#039;, name = &#039;Oak Button&#039;},&lt;br /&gt;
	[&#039;Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Ominous Banner&#039;] = { title = &#039;&amp;amp;6&amp;amp;oOminous Banner&#039;, name = &#039;Ominous Banner&#039;, text = &lt;br /&gt;
		&#039;&amp;amp;7Cyan Lozenge/&amp;amp;7Light Gray Base/&amp;amp;7Gray Pale/&amp;amp;7Light Gray Bordure/&amp;amp;7Black Fess/&amp;amp;7Light Gray Per Fess&#039;},&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Basic&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Basic&#039; },&lt;br /&gt;
    [&#039;Power Hoe Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Basic&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Enhanced&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Advanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Advanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Advanced&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Battery A&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;cA &amp;amp;9Battery&#039;, name = &#039;Battery A&#039; },&lt;br /&gt;
    [&#039;Battery M&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;aM &amp;amp;9Battery&#039;, name = &#039;Battery M&#039; },&lt;br /&gt;
    [&#039;Battery G&#039;] = { title = &#039;&amp;amp;9Size&amp;amp;7-&amp;amp;6G &amp;amp;9Battery&#039;, name = &#039;Battery G&#039; },&lt;br /&gt;
&lt;br /&gt;
	[&#039;Half Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Half Filled Bundle&#039; },&lt;br /&gt;
	[&#039;Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Filled Bundle&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Empty display name --&lt;br /&gt;
	[&#039;debug_fourj_item&#039;] = { title = &#039;\226\128\140&#039;, name = &#039;debug_fourj_item&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Equipment with custom rarity --&lt;br /&gt;
	[&#039;Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Damaged Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Trident BE&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;9 +8 Attack Damage&#039;},&lt;br /&gt;
	[&#039;Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Damaged Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Mace BE&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;9 +5 Attack Damage&#039;},&lt;br /&gt;
	[&amp;quot;Damaged Elytra&amp;quot;] = { title = &amp;quot;&amp;amp;dElytra&amp;quot;, name = &amp;quot;Damaged Elytra&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Boots&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Boots&amp;quot;, name = &amp;quot;Damaged Chainmail Boots&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Chestplate&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Chestplate&amp;quot;, name = &amp;quot;Damaged Chainmail Chestplate&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Helmet&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Helmet&amp;quot;, name = &amp;quot;Damaged Chainmail Helmet&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Leggings&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Leggings&amp;quot;, name = &amp;quot;Damaged Chainmail Leggings&amp;quot; },&lt;br /&gt;
	&lt;br /&gt;
	-- Ominous Bottles --&lt;br /&gt;
    [&#039;Ominous Bottle&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle II&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen II (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle III&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen III (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle IV&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen IV (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle V&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen V (01:40:00)&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Bedrock and Education Edition display names --&lt;br /&gt;
	[&#039;Buried Treasure Map BE&#039;] = { title = &#039;Treasure Map&#039;, name = &#039;Buried Treasure Map BE&#039; },&lt;br /&gt;
	[&#039;Elytra Wings&#039;] = { title = &#039;Elytra Wings&#039;, name = &#039;Elytra&#039; },&lt;br /&gt;
	[&#039;Glowing Obsidian&#039;] = { title = &#039;tile.glowingobsidian.name&#039;, name = &#039;Glowing Obsidian&#039; },&lt;br /&gt;
	[&#039;Map (no markers)&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;cNo&#039; },&lt;br /&gt;
	[&#039;Locator Map&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;aYes&#039; },&lt;br /&gt;
	[&#039;Shrub BE&#039;] = { title = &#039;Fern&#039;, name = &#039;Short Grass&#039; },&lt;br /&gt;
	[&#039;Unknown&#039;] = { title = &#039;Unknown&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update&#039;] = { title = &#039;tile.info_update.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update2&#039;] = { title = &#039;tile.info_update2.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;reserved6&#039;] = { title = &#039;tile.reserved6.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;Smooth Purpur&#039;] = { title = &#039;tile.deprecated_purpur_block_2.name&#039;, name = &#039;Smooth Purpur&#039; },&lt;br /&gt;
	[&#039;Beacon BE&#039;] = { title = &#039;&amp;amp;bBeacon&#039;, name = &#039;Beacon BE&#039; },&lt;br /&gt;
	[&#039;Conduit BE&#039;] = { title = &#039;&amp;amp;eConduit&#039;, name = &#039;Conduit BE&#039; },&lt;br /&gt;
	[&#039;Dragon Egg BE&#039;] = { title = &#039;&amp;amp;dDragon Egg&#039;, name = &#039;Dragon Egg BE&#039; },&lt;br /&gt;
	[&#039;Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;eSkeleton Skull&#039;, name = &#039;Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Wither Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;bWither Skeleton Skull&#039;, name = &#039;Wither Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Zombie Head BE&#039;] = { title = &#039;&amp;amp;eZombie Head&#039;, name = &#039;Zombie Head BE&#039; },&lt;br /&gt;
	[&#039;Player Head BE&#039;] = { title = &#039;&amp;amp;ePlayer Head&#039;, name = &#039;Player Head BE&#039; },&lt;br /&gt;
	[&#039;Creeper Head BE&#039;] = { title = &#039;&amp;amp;eCreeper Head&#039;, name = &#039;Creeper Head BE&#039; },&lt;br /&gt;
	[&#039;Dragon Head BE&#039;] = { title = &#039;&amp;amp;dDragon Head&#039;, name = &#039;Dragon Head BE&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Chemistry --&lt;br /&gt;
	[&#039;Lead (element)&#039;] = { title = &#039;Lead&#039;, name = &#039;Lead (element)&#039; },&lt;br /&gt;
	[&#039;Water (compound)&#039;] = { title = &#039;Water&#039;, name = &#039;Water (compound)&#039; },&lt;br /&gt;
	[&#039;Chloride&#039;] = { &#039;Calcium Chloride&#039;, &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Sparkler&#039;] = { &#039;Orange Sparkler&#039;, &#039;Blue Sparkler&#039;, &#039;Red Sparkler&#039;, &#039;Purple Sparkler&#039;, &#039;Green Sparkler&#039; },&lt;br /&gt;
	[&#039;Matching Chloride&#039;] = { &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Matching Colored Torch&#039;] = { &#039;Blue Torch&#039;, &#039;Red Torch&#039;, &#039;Purple Torch&#039;, &#039;Green Torch&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- April Fools&#039; Day jokes --&lt;br /&gt;
	[&#039;New Thing Banner Pattern&#039;] = { title = &#039;&amp;amp;dBanner Pattern&#039;, name = &#039;New Thing Banner Pattern&#039;, text = &#039;&amp;amp;7New Thing&#039;},&lt;br /&gt;
	-- Note: These can&#039;t use this module&#039;s default color handling because potato peels have no white variant but do include the uncolored variant in recipes&lt;br /&gt;
	[&#039;Any Potato Peels&#039;] = { &#039;Potato Peels&#039;, &#039;Light Gray Potato Peels&#039;, &#039;Gray Potato Peels&#039;, &#039;Black Potato Peels&#039;, &#039;Brown Potato Peels&#039;, &#039;Red Potato Peels&#039;, &#039;Orange Potato Peels&#039;, &#039;Yellow Potato Peels&#039;, &#039;Lime Potato Peels&#039;, &#039;Green Potato Peels&#039;, &#039;Cyan Potato Peels&#039;, &#039;Light Blue Potato Peels&#039;, &#039;Blue Potato Peels&#039;, &#039;Purple Potato Peels&#039;, &#039;Magenta Potato Peels&#039;, &#039;Pink Potato Peels&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- Old textures --&lt;br /&gt;
	[&#039;Apple Revision 1&#039;] = { title = &#039;Apple&#039;, name = &#039;Apple Revision 1&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Stairs&#039;] = aliases[&#039;Any stairs&#039;]&lt;br /&gt;
&lt;br /&gt;
-- Tooltip colors --&lt;br /&gt;
local yellowTooltips = {&lt;br /&gt;
    &#039;Bottle o\&#039; Enchanting&#039;,&lt;br /&gt;
    &#039;Chainmail Boots&#039;,&lt;br /&gt;
    &#039;Chainmail Chestplate&#039;,&lt;br /&gt;
    &#039;Chainmail Helmet&#039;,&lt;br /&gt;
    &#039;Chainmail Leggings&#039;,&lt;br /&gt;
    &#039;Conduit&#039;,&lt;br /&gt;
    &#039;Creeper Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Creeper Head&#039;,&lt;br /&gt;
    &#039;Disc Fragment 5&#039;,&lt;br /&gt;
    &#039;Dragon\&#039;s Breath&#039;,&lt;br /&gt;
    &#039;Echo Shard&#039;,&lt;br /&gt;
    &#039;Enchanted Book&#039;,&lt;br /&gt;
    &#039;Goat Horn&#039;,&lt;br /&gt;
    &#039;Heart of the Sea&#039;,&lt;br /&gt;
    &#039;Nautilus Shell&#039;,&lt;br /&gt;
    &#039;Ominous Banner&#039;,&lt;br /&gt;
    &#039;Piglin Head&#039;,&lt;br /&gt;
    &#039;Player Head&#039;,&lt;br /&gt;
    &#039;Recovery Compass&#039;,&lt;br /&gt;
    &#039;Skeleton Skull&#039;,&lt;br /&gt;
    &#039;Sniffer Egg&#039;,&lt;br /&gt;
    &#039;Snout Banner Pattern&#039;,&lt;br /&gt;
    &#039;Totem of Undying&#039;,&lt;br /&gt;
    &#039;Zombie Head&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( yellowTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local aquaTooltips = {&lt;br /&gt;
	&#039;Beacon&#039;,&lt;br /&gt;
	&#039;Enchanted Golden Apple&#039;,&lt;br /&gt;
    &#039;Flow Banner Pattern&#039;,&lt;br /&gt;
	&#039;Guster Banner Pattern&#039;,&lt;br /&gt;
	&#039;Nether Star&#039;,&lt;br /&gt;
    &#039;Skull Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Thing Banner Pattern&#039;,&lt;br /&gt;
    &#039;Wither Skeleton Skull&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( aquaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;b&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local magentaTooltips = {&lt;br /&gt;
	&#039;Barrier&#039;,&lt;br /&gt;
	&#039;Command Block&#039;,&lt;br /&gt;
	&#039;Chain Command Block&#039;,&lt;br /&gt;
	&#039;Debug Stick&#039;,&lt;br /&gt;
	&#039;Dragon Egg&#039;,&lt;br /&gt;
	&#039;Dragon Head&#039;,&lt;br /&gt;
	&#039;Elytra&#039;,&lt;br /&gt;
	&#039;Heavy Core&#039;,&lt;br /&gt;
	&#039;Jigsaw Block&#039;,&lt;br /&gt;
	&#039;Knowledge Book&#039;,&lt;br /&gt;
	&#039;Light&#039;,&lt;br /&gt;
	&#039;Repeating Command Block&#039;,&lt;br /&gt;
	&#039;Structure Block&#039;,&lt;br /&gt;
	&#039;Structure Void&#039;,&lt;br /&gt;
	&#039;Test Block&#039;,&lt;br /&gt;
	&#039;Test Instance Block&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( magentaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;d&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons --&lt;br /&gt;
local tools = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5, 1.6 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6, 1.6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7, 1.6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8, 1.6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3, 1.2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4, 1.2 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5, 1.2 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6, 1.2 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 7, 0.8 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 9, 0.8 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 9, 0.9 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 7, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 9, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 10, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 3.5, 1 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 4.5, 1 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 5.5, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 6.5, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 1, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 1, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 1, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 1, 4 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local materialGroups = {}&lt;br /&gt;
local toolGroups = {}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( tools ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	local damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
	local text = &#039;/&amp;amp;7When in Main Hand:/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[3] .. &#039; Attack Damage/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[4] .. &#039; Attack Speed&#039;&lt;br /&gt;
	aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
	aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
	&lt;br /&gt;
	local materialGroup = toolProps[1]:lower()&lt;br /&gt;
	local toolGroup = toolProps[2]:lower()&lt;br /&gt;
	&lt;br /&gt;
	if toolProps[2] ~= &#039;Sword&#039; then&lt;br /&gt;
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end&lt;br /&gt;
		table.insert( materialGroups[materialGroup], aliases[aliasName] )&lt;br /&gt;
	end&lt;br /&gt;
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end&lt;br /&gt;
	table.insert( toolGroups[toolGroup], aliases[aliasName] )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for materialGroup, items in pairs( materialGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. materialGroup .. &#039; tools&#039;] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for toolGroup, items in pairs( toolGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. toolGroup] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons in Bedrock Edition --&lt;br /&gt;
local toolsBE = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 4 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 5 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 7 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 5 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 6 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( toolsBE ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	aliases[aliasName .. &#039; BE&#039;] = { title = aliasName, name = aliasName, text = &#039;/&amp;amp;9+&#039; .. toolProps[3] .. &#039; Attack Damage&#039;}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Armor tooltips --&lt;br /&gt;
local head = {&lt;br /&gt;
	{&#039;Leather Cap&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Iron Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond Helmet&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Helmet&#039;, 3, 3, 1 },&lt;br /&gt;
	{&#039;Turtle Shell&#039;, 2 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local body = {&lt;br /&gt;
	{&#039;Leather Tunic&#039;, 3 },&lt;br /&gt;
	{&#039;Chainmail Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Iron Chestplate&#039;, 6 },&lt;br /&gt;
	{&#039;Golden Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Diamond Chestplate&#039;, 8, 2 },&lt;br /&gt;
	{&#039;Netherite Chestplate&#039;, 8, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local legs = {&lt;br /&gt;
	{&#039;Leather Pants&#039;, 2 },&lt;br /&gt;
	{&#039;Chainmail Leggings&#039;, 4 },&lt;br /&gt;
	{&#039;Iron Leggings&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Leggings&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond Leggings&#039;, 6, 2 },&lt;br /&gt;
	{&#039;Netherite Leggings&#039;, 6, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local feet = {&lt;br /&gt;
	{&#039;Leather Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Iron Boots&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond Boots&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Boots&#039;, 3, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local equipped = {&lt;br /&gt;
	{&#039;Leather Horse Armor&#039;, 3 },&lt;br /&gt;
	{&#039;Iron Horse Armor&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Horse Armor&#039;, 7 },&lt;br /&gt;
	{&#039;Diamond Horse Armor&#039;, 11, 2 },&lt;br /&gt;
	{&#039;Wolf Armor&#039;, 11 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local bodyParts = {&lt;br /&gt;
    {head, &amp;quot;on Head&amp;quot;},&lt;br /&gt;
    {body, &amp;quot;on Body&amp;quot;},&lt;br /&gt;
    {legs, &amp;quot;on Legs&amp;quot;},&lt;br /&gt;
    {feet, &amp;quot;on Feet&amp;quot;},&lt;br /&gt;
    {equipped, &amp;quot;equipped&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local trimMaterial = {&lt;br /&gt;
	{&#039;Quartz&#039;, &#039;&amp;amp;h&#039;},&lt;br /&gt;
	{&#039;Iron&#039;, &#039;&amp;amp;i&#039;},&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;&amp;amp;j&#039;},&lt;br /&gt;
	{&#039;Redstone&#039;, &#039;&amp;amp;y&#039;},&lt;br /&gt;
	{&#039;Copper&#039;, &#039;&amp;amp;z&#039;},&lt;br /&gt;
	{&#039;Gold&#039;, &#039;&amp;amp;p&#039;},&lt;br /&gt;
	{&#039;Emerald&#039;, &#039;&amp;amp;q&#039;},&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;&amp;amp;s&#039;},&lt;br /&gt;
	{&#039;Lapis&#039;, &#039;&amp;amp;t&#039;},&lt;br /&gt;
	{&#039;Amethyst&#039;, &#039;&amp;amp;u&#039;},&lt;br /&gt;
	{&#039;Resin&#039;, &#039;&amp;amp;v&#039;},&lt;br /&gt;
	{&#039;Amber&#039;, &#039;&amp;amp;6&#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, bodyPart in ipairs(bodyParts) do&lt;br /&gt;
    local items = bodyPart[1]&lt;br /&gt;
    local bodyPartName = bodyPart[2]&lt;br /&gt;
    &lt;br /&gt;
    for _, toolProps in ipairs(items) do&lt;br /&gt;
        local aliasName = toolProps[1]&lt;br /&gt;
        local damagedName&lt;br /&gt;
        if string.find(aliasName, &amp;quot;Horse Armor&amp;quot;) then&lt;br /&gt;
            damagedName = aliasName &lt;br /&gt;
        else&lt;br /&gt;
            damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
        end     &lt;br /&gt;
        local text = &#039;/&amp;amp;7When &#039; .. bodyPartName .. &#039;:/&amp;amp;9+&#039; .. toolProps[2] .. &#039; Armor/&#039;&lt;br /&gt;
        if toolProps[3] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[3] .. &#039; Armor Toughness/&#039;&lt;br /&gt;
        end&lt;br /&gt;
        if toolProps[4] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[4] .. &#039; Knockback Resistance&#039;&lt;br /&gt;
        end&lt;br /&gt;
        aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
        aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
        if bodyPartName ~= &amp;quot;equipped&amp;quot; then&lt;br /&gt;
			for _, materialType in ipairs( trimMaterial ) do&lt;br /&gt;
	        	local trimName = materialType[1] .. &#039; Trim &#039; .. aliasName&lt;br /&gt;
				local trimText = &#039;&amp;amp;7Upgrade:/&amp;amp;#160;&#039; .. materialType[2] .. &#039;Armor Trim/&amp;amp;#160;&#039; .. materialType[1] .. &#039; Material/&#039;&lt;br /&gt;
				aliases[trimName] = { title = aliasName, name = trimName, text = trimText .. text }&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Lists of item variants --&lt;br /&gt;
local itemVariants = {&lt;br /&gt;
	[&#039;Small Flower&#039;] = { &#039;Oxeye Daisy&#039;, &#039;Cornflower&#039;, &#039;Lily of the Valley&#039;, &#039;Wither Rose&#039;, &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039;, &#039;Azure Bluet&#039;, &#039;Allium&#039;, &#039;Blue Orchid&#039;, &#039;Poppy&#039;, &#039;Dandelion&#039;, &#039;Torchflower&#039;, &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Eyeblossom&#039;] = { &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Mushroom&#039;] = { &#039;Red Mushroom&#039;, &#039;Brown Mushroom&#039; },&lt;br /&gt;
	[&#039;Quartz Block&#039;] = { &#039;Block of Quartz&#039;, &#039;Chiseled Quartz Block&#039;, &#039;Quartz Pillar&#039; },&lt;br /&gt;
	[&#039;Red Sandstone&#039;] = { &#039;Red Sandstone&#039;, &#039;Cut Red Sandstone&#039;, &#039;Chiseled Red Sandstone&#039;, &#039;Smooth Red Sandstone&#039; },&lt;br /&gt;
	[&#039;Sandstone&#039;] = { &#039;Sandstone&#039;, &#039;Cut Sandstone&#039;, &#039;Chiseled Sandstone&#039;, &#039;Smooth Sandstone&#039; },&lt;br /&gt;
	[&#039;Stone Bricks&#039;] = { &#039;Stone Bricks&#039;, &#039;Mossy Stone Bricks&#039;, &#039;Cracked Stone Bricks&#039;, &#039;Chiseled Stone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Slab&#039;] = { &#039;Stone Slab&#039;, &#039;Cobblestone Slab&#039;, &#039;Mossy Cobblestone Slab&#039;, &#039;Smooth Stone Slab&#039;, &#039;Stone Brick Slab&#039;, &#039;Mossy Stone Brick Slab&#039;, &lt;br /&gt;
		&#039;Granite Slab&#039;, &#039;Polished Granite Slab&#039;, &#039;Diorite Slab&#039;, &#039;Polished Diorite Slab&#039;, &#039;Andesite Slab&#039;, &#039;Polished Andesite Slab&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Slab&#039;, &#039;Polished Deepslate Slab&#039;, &#039;Deepslate Brick Slab&#039;, &#039;Deepslate Tile Slab&#039;, &#039;Brick Slab&#039;, &#039;Mud Brick Slab&#039;, &#039;Resin Brick Slab&#039;,&lt;br /&gt;
		&#039;Sandstone Slab&#039;, &#039;Smooth Sandstone Slab&#039;, &#039;Cut Sandstone Slab&#039;, &#039;Red Sandstone Slab&#039;, &#039;Smooth Red Sandstone Slab&#039;, &#039;Cut Red Sandstone Slab&#039;, &#039;Prismarine Slab&#039;, &#039;Prismarine Brick Slab&#039;, &#039;Dark Prismarine Slab&#039;, &lt;br /&gt;
		&#039;Nether Brick Slab&#039;, &#039;Red Nether Brick Slab&#039;, &#039;Blackstone Slab&#039;, &#039;Polished Blackstone Slab&#039;, &#039;Polished Blackstone Brick Slab&#039;, &#039;End Stone Brick Slab&#039;, &#039;Purpur Slab&#039;, &#039;Quartz Slab&#039;, &#039;Smooth Quartz Slab&#039;, &#039;Petrified Oak Slab&#039; },&lt;br /&gt;
	[&#039;Stone Stairs&#039;] = { &#039;Stone Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &lt;br /&gt;
		&#039;Granite Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Resin Brick Stairs&#039;, &lt;br /&gt;
		&#039;Sandstone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &lt;br /&gt;
		&#039;Nether Brick Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Smooth Quartz Stairs&#039; },&lt;br /&gt;
	[&#039;Wall&#039;] = { &#039;Cobblestone Wall&#039;, &#039;Mossy Cobblestone Wall&#039;, &#039;Stone Brick Wall&#039;, &#039;Mossy Stone Brick Wall&#039;, &#039;Granite Wall&#039;, &#039;Diorite Wall&#039;, &#039;Andesite Wall&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;, &#039;Polished Deepslate Wall&#039;, &#039;Deepslate Brick Wall&#039;, &#039;Deepslate Tile Wall&#039;, &#039;Brick Wall&#039;, &#039;Mud Brick Wall&#039;, &#039;Resin Brick Wall&#039;, &#039;Sandstone Wall&#039;, &#039;Red Sandstone Wall&#039;, &#039;Prismarine Wall&#039;, &lt;br /&gt;
		&#039;Nether Brick Wall&#039;, &#039;Red Nether Brick Wall&#039;, &#039;Blackstone Wall&#039;, &#039;Polished Blackstone Wall&#039;, &#039;Polished Blackstone Brick Wall&#039;, &#039;End Stone Brick Wall&#039; },&lt;br /&gt;
	[&#039;Purpur Block&#039;] = { &#039;Purpur Block&#039;, &#039;Purpur Pillar&#039; },&lt;br /&gt;
	[&#039;Stone&#039;] = { &#039;Stone&#039;, &#039;Andesite&#039;, &#039;Granite&#039;, &#039;Diorite&#039;, &#039;Polished Andesite&#039;, &#039;Polished Granite&#039;, &#039;Polished Diorite&#039; },&lt;br /&gt;
	[&#039;Resin Block&#039;] = { &#039;Block of Resin&#039;, &#039;Resin Bricks&#039;, &#039;Chiseled Resin Bricks&#039; },&lt;br /&gt;
	[&#039;Tulip&#039;] = { &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039; },&lt;br /&gt;
	[&#039;Prismarine&#039;] = { &#039;Prismarine&#039;, &#039;Prismarine Bricks&#039;, &#039;Dark Prismarine&#039; },&lt;br /&gt;
	[&#039;Ore&#039;] = { &#039;Coal Ore&#039;, &#039;Iron Ore&#039;, &#039;Gold Ore&#039;, &#039;Lapis Lazuli Ore&#039;, &#039;Redstone Ore&#039;, &#039;Emerald Ore&#039;, &#039;Diamond Ore&#039;, &#039;Nether Quartz Ore&#039;, &#039;Nether Gold Ore&#039;, &#039;Deepslate Coal Ore&#039;, &lt;br /&gt;
		&#039;Deepslate Copper Ore&#039;, &#039;Deepslate Emerald Ore&#039;, &#039;Deepslate Iron Ore&#039;, &#039;Deepslate Gold Ore&#039;, &#039;Deepslate Lapis Lazuli Ore&#039;, &#039;Deepslate Redstone Ore&#039;, &#039;Deepslate Diamond Ore&#039;},&lt;br /&gt;
	[&#039;Dead Coral Block&#039;] = { &#039;Dead Tube Coral Block&#039;, &#039;Dead Brain Coral Block&#039;, &#039;Dead Bubble Coral Block&#039;, &#039;Dead Fire Coral Block&#039;, &#039;Dead Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Coral Block&#039;] = { &#039;Tube Coral Block&#039;, &#039;Brain Coral Block&#039;, &#039;Bubble Coral Block&#039;, &#039;Fire Coral Block&#039;, &#039;Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Dead Coral&#039;] = { &#039;Dead Tube Coral&#039;, &#039;Dead Brain Coral&#039;, &#039;Dead Bubble Coral&#039;, &#039;Dead Fire Coral&#039;, &#039;Dead Horn Coral&#039; },&lt;br /&gt;
	[&#039;Dead Coral Fan&#039;] = { &#039;Dead Tube Coral Fan&#039;, &#039;Dead Brain Coral Fan&#039;, &#039;Dead Bubble Coral Fan&#039;, &#039;Dead Fire Coral Fan&#039;, &#039;Dead Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Coral&#039;] = { &#039;Tube Coral&#039;, &#039;Brain Coral&#039;, &#039;Bubble Coral&#039;, &#039;Fire Coral&#039;, &#039;Horn Coral&#039; },&lt;br /&gt;
	[&#039;Coral Fan&#039;] = { &#039;Tube Coral Fan&#039;, &#039;Brain Coral Fan&#039;, &#039;Bubble Coral Fan&#039;, &#039;Fire Coral Fan&#039;, &#039;Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Torch&#039;] = { &#039;Torch&#039;, &#039;Soul Torch&#039; },&lt;br /&gt;
	[&#039;Lantern&#039;] = { &#039;Lantern&#039;, &#039;Soul Lantern&#039; },&lt;br /&gt;
	[&#039;Fungus&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Fungi&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Roots&#039;] = { &#039;Crimson Roots&#039;, &#039;Warped Roots&#039; },&lt;br /&gt;
	[&#039;Nylium&#039;] = { &#039;Crimson Nylium&#039;, &#039;Warped Nylium&#039; },&lt;br /&gt;
	[&#039;Soul Sand&#039;] = { &#039;Soul Sand&#039;, &#039;Soul Soil&#039; },&lt;br /&gt;
	[&#039;Campfire&#039;] = { &#039;Campfire&#039;, &#039;Soul Campfire&#039; },&lt;br /&gt;
	[&#039;Blackstone&#039;] = { &#039;Blackstone&#039;, &#039;Polished Blackstone&#039;, &#039;Chiseled Polished Blackstone&#039;, &#039;Polished Blackstone Bricks&#039;, &#039;Cracked Polished Blackstone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Button&#039;] = { &#039;Stone Button&#039;, &#039;Polished Blackstone Button&#039; },&lt;br /&gt;
	[&#039;Stone Pressure Plate&#039;] = { &#039;Stone Pressure Plate&#039;, &#039;Polished Blackstone Pressure Plate&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Copper --&lt;br /&gt;
local copperstuff = {&lt;br /&gt;
	&#039;Block of Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper Stairs&#039;,&lt;br /&gt;
	&#039;Cut Copper Slab&#039;,&lt;br /&gt;
	&#039;Chiseled Copper&#039;,&lt;br /&gt;
	&#039;Copper Grate&#039;,&lt;br /&gt;
	&#039;Copper Bulb&#039;,&lt;br /&gt;
	&#039;Copper Door&#039;,&lt;br /&gt;
	&#039;Copper Trapdoor&#039;,&lt;br /&gt;
}&lt;br /&gt;
local coppervariants = { &#039;&#039;, &#039;Exposed &#039;, &#039;Weathered &#039;, &#039;Oxidized &#039; }&lt;br /&gt;
for _, copper in ipairs( copperstuff ) do&lt;br /&gt;
	itemVariants[&#039;Unwaxed &#039; .. copper] = {}&lt;br /&gt;
	itemVariants[&#039;Waxed &#039; .. copper] = {}&lt;br /&gt;
	for _, coppervariant in ipairs( coppervariants ) do&lt;br /&gt;
		local name = coppervariant .. copper&lt;br /&gt;
		if copper == &#039;Block of Copper&#039; and coppervariant ~= &#039;&#039; then&lt;br /&gt;
			name = coppervariant .. &#039;Copper&#039;&lt;br /&gt;
		end&lt;br /&gt;
		table.insert( itemVariants[&#039;Unwaxed &#039; .. copper], name )&lt;br /&gt;
		table.insert( itemVariants[&#039;Waxed &#039; .. copper], &#039;Waxed &#039; .. name )&lt;br /&gt;
	end&lt;br /&gt;
	itemVariants[copper] = {}&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Unwaxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Waxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for aliasName, aliasItems in pairs( itemVariants ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. aliasName] = aliasItems&lt;br /&gt;
	aliases[&#039;Matching &#039; .. aliasName] = aliasItems&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Discs --&lt;br /&gt;
local discs = { &lt;br /&gt;
	{ &#039;13&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Cat&#039;,                 &#039;C418&#039;,         &#039;cat&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Blocks&#039;,              &#039;C418&#039;,         &#039;blocks&#039;,    &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Chirp&#039;,               &#039;C418&#039;,         &#039;chirp&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Far&#039;,                 &#039;C418&#039;,         &#039;far&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mall&#039;,                &#039;C418&#039;,         &#039;mall&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mellohi&#039;,             &#039;C418&#039;,         &#039;mellohi&#039;,   &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Stal&#039;,                &#039;C418&#039;,         &#039;stal&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Strad&#039;,               &#039;C418&#039;,         &#039;strad&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Ward&#039;,                &#039;C418&#039;,         &#039;ward&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;11&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wait&#039;,                &#039;C418&#039;,         &#039;wait&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Otherside&#039;,           &#039;Lena Raine&#039;,   &#039;otherside&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Pigstep&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;5&#039;,                   &#039;Samuel Åberg&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Relic&#039;,               &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Precipice&#039;,           &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Creator&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Creator (Music Box)&#039;, &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
}&lt;br /&gt;
for _, disc in ipairs( discs ) do&lt;br /&gt;
    local rarityColor = disc[4]&lt;br /&gt;
	local name = &#039;Music Disc &#039; .. disc[1]&lt;br /&gt;
	local artist = disc[2]&lt;br /&gt;
	local trackname = disc[1]&lt;br /&gt;
	if disc[3] ~= &#039;&#039; then&lt;br /&gt;
		trackname = disc[3]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = rarityColor .. &#039;Music Disc&#039;, name = name, text = &#039;&amp;amp;7&#039; .. artist .. &#039; - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Disc Fragments --&lt;br /&gt;
local disc_fragments = { &lt;br /&gt;
	{ &#039;5&#039;,    },&lt;br /&gt;
}&lt;br /&gt;
for _, disc_fragment in ipairs( disc_fragments ) do&lt;br /&gt;
	local name = &#039;Disc Fragment &#039; .. disc_fragment[1]&lt;br /&gt;
	local trackname = disc_fragment[1]&lt;br /&gt;
	if disc_fragment[2] ~= nil then&lt;br /&gt;
		trackname = disc_fragment[2]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;eDisc Fragment&#039;, name = name, text = &#039;&amp;amp;7Music Disc - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Paintings --&lt;br /&gt;
local paintings = { &lt;br /&gt;
	{ &#039;Kebab med tre pepperoni&#039;,    &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;de_aztec&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Albanian&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Target Successfully Bombed&#039;, &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Paradisträd&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wasteland&#039;,                  &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Meditative&#039;,                 &#039;Sarah Boeving&#039;,           &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wanderer&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Graham&#039;,                     &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Prairie Ride&#039;,               &#039;Sarah Boeving&#039;,           &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;The Pool&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Bonjour Monsieur Courbet&#039;,   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;sunset_dense&#039;,               &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Seaside&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Creebet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Match&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bust&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The Stage Is Set&#039;,           &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The void&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Skull and Roses&#039;,            &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wither&#039;,                     &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Baroque&#039;,                    &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Humble&#039;,                     &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bouquet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cavebird&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cotán&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Endboss&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Fern&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Owlemons&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Sunflowers&#039;,                 &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Tides&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Backyard&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Pond&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Fighters&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Changing&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Finding&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Lowmist&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Passage&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Mortal Coil&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Kong&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Pointer&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Pigscene&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Skull On Fire&#039;,              &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Unpacked&#039;,                   &#039;Sarah Boeving&#039;,           &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Orb&#039;,                        &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Earth&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wind&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Fire&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Water&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; }&lt;br /&gt;
}&lt;br /&gt;
for _, painting in ipairs( paintings ) do&lt;br /&gt;
	local name = &#039;Painting &#039; .. painting[1]&lt;br /&gt;
	local artist = painting[2]&lt;br /&gt;
	local artwork = painting[1]&lt;br /&gt;
	local size = painting[3]&lt;br /&gt;
	aliases[name] = { title = &#039;Painting&#039;, name = &#039;Painting&#039;, text = &#039;&amp;amp;e&#039; .. artwork .. &#039;/&amp;amp;7&#039; .. artist .. &#039;/&#039; .. &#039;&amp;amp;f&#039; .. size }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Damaged items, note it skips tools, weapons, and armor as they are handled above to add the damage tooltip. --&lt;br /&gt;
-- Items with rarity (such as Mace and Elytra) are hard-coded in the module&#039;s beginning.&lt;br /&gt;
local damagedItems = {&lt;br /&gt;
	&#039;Bow&#039;,&lt;br /&gt;
	&#039;Brush&#039;,&lt;br /&gt;
	&#039;Carrot on a Stick&#039;,&lt;br /&gt;
	&#039;Crossbow&#039;,&lt;br /&gt;
	&#039;Fishing Rod&#039;,&lt;br /&gt;
	&#039;Flint and Steel&#039;,&lt;br /&gt;
	&#039;Shears&#039;,&lt;br /&gt;
	&#039;Shield&#039;&lt;br /&gt;
}&lt;br /&gt;
for _, item in ipairs( damagedItems ) do&lt;br /&gt;
	local name = &#039;Damaged &#039; .. item&lt;br /&gt;
	aliases[name] = { title = item, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Banners and colored items --&lt;br /&gt;
local patterns = {&lt;br /&gt;
	&#039;Base Dexter Canton&#039;,&lt;br /&gt;
	&#039;Base&#039;,&lt;br /&gt;
	&#039;Base Gradient&#039;,&lt;br /&gt;
	&#039;Base Indented&#039;,&lt;br /&gt;
	&#039;Base Sinister Canton&#039;,&lt;br /&gt;
	&#039;Bend&#039;,&lt;br /&gt;
	&#039;Bend Sinister&#039;,&lt;br /&gt;
	&#039;Bordure&#039;,&lt;br /&gt;
	&#039;Bordure Indented&#039;,&lt;br /&gt;
	&#039;Chevron&#039;,&lt;br /&gt;
	&#039;Chief Dexter Canton&#039;,&lt;br /&gt;
	&#039;Chief&#039;,&lt;br /&gt;
	&#039;Chief Indented&#039;,&lt;br /&gt;
	&#039;Chief Sinister Canton&#039;,&lt;br /&gt;
	&#039;Creeper Charge&#039;,&lt;br /&gt;
	&#039;Cross&#039;,&lt;br /&gt;
	&#039;Fess&#039;,&lt;br /&gt;
	&#039;Field Masoned&#039;,&lt;br /&gt;
	&#039;Flow&#039;,&lt;br /&gt;
	&#039;Flower Charge&#039;,&lt;br /&gt;
	&#039;Globe&#039;,&lt;br /&gt;
	&#039;Gradient&#039;,&lt;br /&gt;
	&#039;Guster&#039;,&lt;br /&gt;
	&#039;Inverted Chevron&#039;,&lt;br /&gt;
	&#039;Lozenge&#039;,&lt;br /&gt;
	&#039;Thing&#039;,&lt;br /&gt;
	&#039;Pale&#039;,&lt;br /&gt;
	&#039;Pale Dexter&#039;,&lt;br /&gt;
	&#039;Pale Sinister&#039;,&lt;br /&gt;
	&#039;Paly&#039;,&lt;br /&gt;
	&#039;Per Bend&#039;,&lt;br /&gt;
	&#039;Per Bend Inverted&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister Inverted&#039;,&lt;br /&gt;
	&#039;Per Fess&#039;,&lt;br /&gt;
	&#039;Per Fess Inverted&#039;,&lt;br /&gt;
	&#039;Per Pale&#039;,&lt;br /&gt;
	&#039;Per Pale Inverted&#039;,&lt;br /&gt;
	&#039;Piglin&#039;,&lt;br /&gt;
	&#039;Snout&#039;,&lt;br /&gt;
	&#039;Roundel&#039;,&lt;br /&gt;
	&#039;Saltire&#039;,&lt;br /&gt;
	&#039;Skull Charge&#039;&lt;br /&gt;
}&lt;br /&gt;
local colors = {&lt;br /&gt;
	&#039;White&#039;,&lt;br /&gt;
	&#039;Light Gray&#039;,&lt;br /&gt;
	&#039;Gray&#039;,&lt;br /&gt;
	&#039;Black&#039;,&lt;br /&gt;
	&#039;Brown&#039;,&lt;br /&gt;
	&#039;Red&#039;,&lt;br /&gt;
	&#039;Orange&#039;,&lt;br /&gt;
	&#039;Yellow&#039;,&lt;br /&gt;
	&#039;Lime&#039;,&lt;br /&gt;
	&#039;Green&#039;,&lt;br /&gt;
	&#039;Cyan&#039;,&lt;br /&gt;
	&#039;Light Blue&#039;,&lt;br /&gt;
	&#039;Blue&#039;,&lt;br /&gt;
	&#039;Purple&#039;,&lt;br /&gt;
	&#039;Magenta&#039;,&lt;br /&gt;
	&#039;Pink&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Firework Stars --&lt;br /&gt;
local fireworkStar = {}&lt;br /&gt;
for _, color in ipairs( colors ) do&lt;br /&gt;
	local name = color .. &#039; Firework Star&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;Firework Star&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color }&lt;br /&gt;
	table.insert( fireworkStar, aliases[name] )&lt;br /&gt;
	for _, pattern in ipairs( patterns ) do&lt;br /&gt;
		name = color .. &#039; &#039; .. pattern .. &#039; Banner&#039;&lt;br /&gt;
		aliases[name] = { title = &#039;Banner&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color .. &#039; &#039; .. pattern }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Any Firework Star&#039;] = fireworkStar&lt;br /&gt;
aliases[&#039;Matching Firework Star&#039;] = fireworkStar&lt;br /&gt;
&lt;br /&gt;
-- Items that use the sixteen colors --&lt;br /&gt;
local coloredItems = {&lt;br /&gt;
	withWhite = {&lt;br /&gt;
		&#039;Balloon&#039;,&lt;br /&gt;
		&#039;Banner&#039;,&lt;br /&gt;
		&#039;Bed&#039;,&lt;br /&gt;
		&#039;Carpet&#039;,&lt;br /&gt;
		&#039;Concrete&#039;,&lt;br /&gt;
		&#039;Concrete Powder&#039;,&lt;br /&gt;
		&#039;Glazed Terracotta&#039;,&lt;br /&gt;
		&#039;Glow Stick&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Shield&#039;,&lt;br /&gt;
		&#039;Shulker Box&#039;,&lt;br /&gt;
		&#039;Stained Glass&#039;,&lt;br /&gt;
		&#039;Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Wool&#039;,&lt;br /&gt;
&lt;br /&gt;
		&#039;$Dyed Bundle&#039;,&lt;br /&gt;
		&#039;$Dyed Candle&#039;,&lt;br /&gt;
		&#039;$Dyed Terracotta&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	noWhite = {&lt;br /&gt;
		&#039;$Dyed Wool&#039;,&lt;br /&gt;
		&#039;$Dyed Bed&#039;,&lt;br /&gt;
		&#039;$Dyed Carpet&#039;,&lt;br /&gt;
		&#039;$Colored Dye&#039;,&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local coloredBadItems = {&lt;br /&gt;
	[&#039;Light Gray Glow Stick&#039;] = 1,&lt;br /&gt;
	[&#039;Black Glow Stick&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for type, items in pairs( coloredItems ) do&lt;br /&gt;
	for _, item in ipairs( items ) do&lt;br /&gt;
		local coloredItemAliases = {}&lt;br /&gt;
		local defaultItemAliases&lt;br /&gt;
&lt;br /&gt;
		if item:find( &#039;%$[^1]&#039; ) then&lt;br /&gt;
			defaultItemAliases = {}&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type == &#039;noWhite&#039; then&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+&#039;, &#039;White&#039; )&lt;br /&gt;
			else&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			end&lt;br /&gt;
			table.insert( defaultItemAliases, itemName )&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		for _, color in ipairs( colors ) do&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type ~= &#039;noWhite&#039; or color ~= &#039;White&#039; then&lt;br /&gt;
				if item:find( &#039;%$1&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$1&#039;, color )&lt;br /&gt;
				elseif item:find( &#039;%$&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$%w+&#039;, color )&lt;br /&gt;
				else&lt;br /&gt;
					itemName = color .. &#039; &#039; .. item&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			if not coloredBadItems[itemName] then&lt;br /&gt;
				if defaultItemAliases then&lt;br /&gt;
					table.insert( defaultItemAliases, itemName )&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				table.insert( coloredItemAliases, itemName )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if defaultItemAliases then&lt;br /&gt;
			local defaultItem = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			aliases[&#039;Any &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
			aliases[&#039;Matching &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
		end&lt;br /&gt;
		item = item:gsub( &#039;%$1 &#039;, &#039;&#039; )&lt;br /&gt;
		item = item:gsub( &#039;%$&#039;, &#039;&#039; )&lt;br /&gt;
		aliases[&#039;Any &#039; .. item] = coloredItemAliases&lt;br /&gt;
		aliases[&#039;Matching &#039; .. item] = coloredItemAliases&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
-- list of all potions with no effects&lt;br /&gt;
local noEffects = {&lt;br /&gt;
	&#039;Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Potion&#039;,&lt;br /&gt;
	&#039;Thick Potion&#039;,&lt;br /&gt;
	&#039;Mundane Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Potion&#039;,&lt;br /&gt;
	&#039;Splash Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Splash Potion&#039;,&lt;br /&gt;
	&#039;Thick Splash Potion&#039;,&lt;br /&gt;
	&#039;Mundane Splash Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Splash Potion&#039;,&lt;br /&gt;
	&#039;Lingering Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Lingering Potion&#039;,&lt;br /&gt;
	&#039;Thick Lingering Potion&#039;,&lt;br /&gt;
	&#039;Mundane Lingering Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Lingering Potion&#039;,&lt;br /&gt;
	&#039;Tipped Arrow&#039;,&lt;br /&gt;
	&#039;Arrow of Splashing&#039;,&lt;br /&gt;
	&#039;Uncraftable Tipped Arrow&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs(noEffects) do&lt;br /&gt;
	aliases[name] = { name = name, text = &#039;&amp;amp;7No Effects&#039; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- start these lists with the no effect items as names are not normal&lt;br /&gt;
local potionItems = {&lt;br /&gt;
	[&#039;Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Splash Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Splash Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Splash Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Lingering Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Lingering Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Lingering Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Tipped Arrow&#039;] = {&lt;br /&gt;
		aliases[&#039;Arrow of Splashing&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Potions --&lt;br /&gt;
local effects = {&lt;br /&gt;
	-- durations are in the order normal, extended, enhanced&lt;br /&gt;
	{name = &#039;Regeneration&#039;, effect = &#039;&amp;amp;9Regeneration&#039;, enhanced = &#039;II&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:22&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Swiftness&#039;, effect = &#039;&amp;amp;9Speed&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Fire Resistance&#039;, effect = &#039;&amp;amp;9Fire Resistance&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Poison&#039;, effect = &#039;&amp;amp;cPoison&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:21&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Healing&#039;, effect = &#039;&amp;amp;9Instant Health&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Night Vision&#039;,    effect = &#039;&amp;amp;9Night Vision&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Weakness&#039;,        effect = &#039;&amp;amp;cWeakness&#039;,        durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Strength&#039;, effect = &#039;&amp;amp;9Strength&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039;}, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Slowness&#039;, effect = &#039;&amp;amp;cSlowness&#039;, enhanced = &#039;IV&#039;, &lt;br /&gt;
		durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039;, &#039;0:20&#039;}, lingering = {&#039;0:22&#039;, &#039;1:00&#039;, &#039;0:05&#039;}, arrow = { &#039;0:11&#039;, &#039;0:30&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Leaping&#039;, effect = &#039;&amp;amp;9Jump Boost&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Harming&#039;, effect = &#039;&amp;amp;cInstant Damage&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Water Breathing&#039;, effect = &#039;&amp;amp;9Water Breathing&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Invisibility&#039;,    effect = &#039;&amp;amp;9Invisibility&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Slow Falling&#039;,    effect = &#039;&amp;amp;9Slow Falling&#039;,    durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Luck&#039;,  effect = &#039;&amp;amp;9Luck&#039;,   durations = { normal = { &#039;5:00&#039; }, lingering = { &#039;1:15&#039; }, arrow = { &#039;0:37&#039; }}},&lt;br /&gt;
	{ name = &#039;Decay&#039;, effect = &#039;&amp;amp;cWither II&#039;, durations = { normal = { &#039;0:40&#039; }, lingering = { &#039;0:10&#039; }, arrow = { &#039;0:05&#039; }}},&lt;br /&gt;
	{ name = &#039;the Turtle Master&#039;, text = &#039;&amp;amp;cSlowness IV ($1)/&amp;amp;9Resistance III ($1)&#039;, enhanced = &#039;&amp;amp;cSlowness VI ($1)/&amp;amp;9Resistance IV ($1)&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:20&#039;, &#039;0:40&#039;, &#039;0:20&#039; }, lingering = { &#039;0:15&#039;, &#039;0:45&#039;, &#039;0:15&#039; }, arrow = {  &#039;0:07&#039;, &#039;0:22&#039;, &#039;0:07&#039; }}},&lt;br /&gt;
	{ name = &#039;Oozing&#039;,  effect = &#039;&amp;amp;cOozing&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Infestation&#039;,  effect = &#039;&amp;amp;cInfested&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Weaving&#039;,  effect = &#039;&amp;amp;cWeaving&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Wind Charging&#039;,  effect = &#039;&amp;amp;cWind Charged&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}}&lt;br /&gt;
}&lt;br /&gt;
local types = {&lt;br /&gt;
	{name = &#039;Potion&#039;,           durations = &#039;normal&#039;,    text = &#039;Potion of &#039;},&lt;br /&gt;
	{name = &#039;Splash Potion&#039;,    durations = &#039;normal&#039;,    text = &#039;Splash Potion of &#039;},&lt;br /&gt;
	{name = &#039;Lingering Potion&#039;, durations = &#039;lingering&#039;, text = &#039;Lingering Potion of &#039;},&lt;br /&gt;
	{name = &#039;Tipped Arrow&#039;,     durations = &#039;arrow&#039;,     text = &#039;Arrow of &#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, effect in ipairs(effects) do&lt;br /&gt;
	for _, type in ipairs(types) do&lt;br /&gt;
		-- form name, it will be reused&lt;br /&gt;
		local name =  type.text .. effect.name&lt;br /&gt;
		local potionName = {}&lt;br /&gt;
		if type.name == &#039;Tipped Arrow&#039; then&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		else&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- if we have durations, add times&lt;br /&gt;
		if effect.durations then&lt;br /&gt;
			local durations = effect.durations[type.durations]&lt;br /&gt;
			&lt;br /&gt;
			-- turtle master is weird, so just do a fancy string replacement&lt;br /&gt;
			if effect.text then&lt;br /&gt;
				aliases[name] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[1] ) }&lt;br /&gt;
				aliases[name .. &#039; Extended&#039;] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
				aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.enhanced:gsub( &#039;%$1&#039;, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
			else&lt;br /&gt;
				-- we always have normal&lt;br /&gt;
				aliases[name] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[1] ) }&lt;br /&gt;
			&lt;br /&gt;
				-- ensure we have extended&lt;br /&gt;
				if durations[2] then&lt;br /&gt;
					aliases[name .. &#039; Extended&#039;] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
					&lt;br /&gt;
					-- and enhanced&lt;br /&gt;
					if effect.enhanced then&lt;br /&gt;
						aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = string.format( &#039;%s %s (%s)&#039;, effect.effect, effect.enhanced, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- otherwise its just effect, currently every potion with no duration can be enhanced&lt;br /&gt;
			aliases[name] = { name = potionName, text = effect.effect}&lt;br /&gt;
			aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.effect .. &#039; &#039; .. effect.enhanced .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- add the base potion to the any list&lt;br /&gt;
		table.insert(potionItems[type.name], aliases[name])&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- build the any lists&lt;br /&gt;
for item, potionAliases in pairs( potionItems ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. item] = potionAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = potionAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Wood --&lt;br /&gt;
local woodTypes = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Oak&#039;,&lt;br /&gt;
	    &#039;Spruce&#039;,&lt;br /&gt;
	    &#039;Birch&#039;,&lt;br /&gt;
	    &#039;Jungle&#039;,&lt;br /&gt;
	    &#039;Acacia&#039;,&lt;br /&gt;
        &#039;Dark Oak&#039;,&lt;br /&gt;
        &#039;Mangrove&#039;,&lt;br /&gt;
        &#039;Cherry&#039;,&lt;br /&gt;
        &#039;Pale Oak&#039;,&lt;br /&gt;
        &#039;Bamboo&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Crimson&#039;,&lt;br /&gt;
        &#039;Warped&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {},&lt;br /&gt;
}&lt;br /&gt;
local woodTypeWorld = {}&lt;br /&gt;
for _, world in ipairs({&#039;overworld&#039;, &#039;nether&#039;}) do&lt;br /&gt;
	local woods = woodTypes[world]&lt;br /&gt;
	for _, type in ipairs(woods) do&lt;br /&gt;
		woodTypeWorld[type] = world&lt;br /&gt;
        table.insert(woodTypes.both, type)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
local woodItems = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Log&#039;,&lt;br /&gt;
        &#039;Wood&#039;,&lt;br /&gt;
        &#039;Stripped $1 Log&#039;,&lt;br /&gt;
        &#039;Stripped $1 Wood&#039;,&lt;br /&gt;
        &#039;Boat&#039;,&lt;br /&gt;
        &#039;Boat with Chest&#039;,&lt;br /&gt;
        &#039;Sapling&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Stem&#039;,&lt;br /&gt;
        &#039;Hyphae&#039;,&lt;br /&gt;
        &#039;Stripped $1 Stem&#039;,&lt;br /&gt;
        &#039;Stripped $1 Hyphae&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {&lt;br /&gt;
		-- Any/Matching X or Y&lt;br /&gt;
        &#039;${Log,Stem}&#039;,&lt;br /&gt;
        &#039;${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Log,Stem}&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Dimensional prefixes&lt;br /&gt;
        &#039;$world Planks&#039;,&lt;br /&gt;
        &#039;$world $wood Stairs&#039;,&lt;br /&gt;
        &#039;$world $wood Slab&#039;,&lt;br /&gt;
        &#039;$world $wood Fence&#039;,&lt;br /&gt;
        &#039;$world $wood Fence Gate&#039;,&lt;br /&gt;
        &#039;$world $wood Door&#039;,&lt;br /&gt;
        &#039;$world $wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$world $wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$world $wood Button&#039;,&lt;br /&gt;
        &#039;$world $wood Sign&#039;,&lt;br /&gt;
        &#039;$world $wood Hanging Sign&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Both dimensions&lt;br /&gt;
		-- Items with non-wood variants include $wood&lt;br /&gt;
        &#039;Planks&#039;,&lt;br /&gt;
        &#039;$wood Stairs&#039;,&lt;br /&gt;
        &#039;$wood Slab&#039;,&lt;br /&gt;
        &#039;$wood Fence&#039;,&lt;br /&gt;
        &#039;Fence Gate&#039;,&lt;br /&gt;
        &#039;$wood Door&#039;,&lt;br /&gt;
        &#039;$wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$wood Button&#039;,&lt;br /&gt;
        &#039;Sign&#039;,&lt;br /&gt;
        &#039;Hanging Sign&#039;,&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
local woodItemWorld = {}&lt;br /&gt;
for world, items in pairs(woodItems) do&lt;br /&gt;
    for _, item in ipairs(items) do&lt;br /&gt;
		-- expand $world (should only happen in &amp;quot;both&amp;quot;)&lt;br /&gt;
        if (item:find(&#039;%$world&#039;)) and world == &#039;both&#039; then&lt;br /&gt;
            item = item:gsub(&#039;%$world &#039;, &#039;&#039;)&lt;br /&gt;
            woodItemWorld[&#039;Overworld &#039; .. item] = &#039;overworld&#039;&lt;br /&gt;
			woodItemWorld[&#039;Nether &#039; .. item] = &#039;nether&#039;&lt;br /&gt;
		else&lt;br /&gt;
			woodItemWorld[item] = world&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local woodBadItems = {&lt;br /&gt;
	[&#039;Bamboo Sapling&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Log&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Log&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local woodNameMapping = {&lt;br /&gt;
	[&#039;Mangrove Sapling&#039;] = &#039;Mangrove Propagule&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat&#039;] = &#039;Bamboo Raft&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat with Chest&#039;] = &#039;Bamboo Raft with Chest&#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for item, world in pairs(woodItemWorld) do&lt;br /&gt;
	local itemName = &#039;&#039;&lt;br /&gt;
	local woodAliases = {}&lt;br /&gt;
&lt;br /&gt;
	-- real &amp;quot;linkable&amp;quot; name&lt;br /&gt;
    local realItem = item:gsub(&#039;^Overworld &#039;, &#039;&#039;)&lt;br /&gt;
    realItem = realItem:gsub(&#039;^Nether &#039;, &#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
	for _, wood in ipairs(woodTypes[world]) do&lt;br /&gt;
		-- Parse ${,} (world-select) syntax&lt;br /&gt;
		local selector = (woodTypeWorld[wood] == &#039;overworld&#039;) and &amp;quot;%1&amp;quot; or &amp;quot;%2&amp;quot;&lt;br /&gt;
		itemName = realItem:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, selector)&lt;br /&gt;
&lt;br /&gt;
		if itemName:find(&#039;%$wood&#039;) then&lt;br /&gt;
			itemName = itemName:gsub(&#039;%$wood&#039;, wood)&lt;br /&gt;
		elseif itemName:find(&#039;%$1&#039;) then&lt;br /&gt;
			itemName = itemName:gsub( &#039;%$1&#039;, wood)&lt;br /&gt;
		else&lt;br /&gt;
			itemName = wood .. &#039; &#039; .. itemName&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- special handling&lt;br /&gt;
		if woodNameMapping[itemName] then&lt;br /&gt;
			itemName = woodNameMapping[itemName]&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if not woodBadItems[itemName] then&lt;br /&gt;
			table.insert(woodAliases, itemName)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Parse ${,} (world-select) syntax&lt;br /&gt;
	item = item:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, &amp;quot;%1 or %2&amp;quot;)&lt;br /&gt;
    item = item:gsub(&#039;%$wood&#039;, &#039;Wooden&#039;)&lt;br /&gt;
    item = item:gsub(&#039;%$1 &#039;, &#039;&#039;)&lt;br /&gt;
    aliases[&#039;Any &#039; .. item] = woodAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = woodAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Bedrock Edition Items --&lt;br /&gt;
local editionItems = {&lt;br /&gt;
	BE = {&lt;br /&gt;
		&#039;Acacia Fence Gate&#039;,&lt;br /&gt;
		&#039;Andesite Wall&#039;,&lt;br /&gt;
		&#039;Birch Fence Gate&#039;,&lt;br /&gt;
		&#039;Black Bed&#039;,&lt;br /&gt;
		&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Blue Bed&#039;,&lt;br /&gt;
		&#039;Blue Ice&#039;,&lt;br /&gt;
		&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bow&#039;,&lt;br /&gt;
		&#039;Brick Wall&#039;,&lt;br /&gt;
		&#039;Brown Bed&#039;,&lt;br /&gt;
		&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bucket of Pufferfish&#039;,&lt;br /&gt;
		&#039;Bucket of Tropical Fish&#039;,&lt;br /&gt;
		&#039;Cat Spawn Egg&#039;,&lt;br /&gt;
		&#039;Chest&#039;,&lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Crimson Fence Gate&#039;,&lt;br /&gt;
		&#039;Crying Obsidian&#039;,&lt;br /&gt;
		&#039;Cyan Bed&#039;,&lt;br /&gt;
		&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Dark Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Deepslate Brick Wall&#039;,&lt;br /&gt;
		&#039;Deepslate Tile Wall&#039;,&lt;br /&gt;
		&#039;Desert Village Map&#039;,&lt;br /&gt;
		&#039;Diorite Wall&#039;,&lt;br /&gt;
		&#039;Enchanting Table&#039;,&lt;br /&gt;
		&#039;End Gateway&#039;,&lt;br /&gt;
		&#039;End Portal Frame&#039;,&lt;br /&gt;
		&#039;End Portal&#039;,&lt;br /&gt;
		&#039;End Rod&#039;,&lt;br /&gt;
		&#039;End Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Ender Chest&#039;,&lt;br /&gt;
		&#039;Glass Pane&#039;,&lt;br /&gt;
		&#039;Glowstone&#039;,&lt;br /&gt;
		&#039;Granite Wall&#039;,&lt;br /&gt;
		&#039;Gray Bed&#039;,&lt;br /&gt;
		&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Green Bed&#039;,&lt;br /&gt;
		&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Honey Block&#039;,&lt;br /&gt;
		&#039;Horn Coral Block&#039;,&lt;br /&gt;
		&#039;Iron Bars&#039;,&lt;br /&gt;
		&#039;Jack o\&#039;Lantern&#039;,&lt;br /&gt;
		&#039;Jungle Explorer Map&#039;,&lt;br /&gt;
		&#039;Jungle Fence Gate&#039;,&lt;br /&gt;
		&#039;Jungle Leaves&#039;,&lt;br /&gt;
		&#039;Lava&#039;,&lt;br /&gt;
		&#039;Leather Horse Armor&#039;,&lt;br /&gt;
		&#039;Light&#039;,&lt;br /&gt;
		&#039;Light Blue Bed&#039;,&lt;br /&gt;
		&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Light Gray Bed&#039;,&lt;br /&gt;
		&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Lime Bed&#039;,&lt;br /&gt;
		&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
        &#039;Lodestone Compass&#039;,&lt;br /&gt;
        &#039;Magenta Bed&#039;,&lt;br /&gt;
		&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Magma Block&#039;,&lt;br /&gt;
		&#039;Map&#039;,&lt;br /&gt;
		&#039;Minecart with Command Block&#039;,&lt;br /&gt;
		&#039;Monster Spawner&#039;,&lt;br /&gt;
		&#039;Mossy Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Mossy Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Mud Brick Wall&#039;,&lt;br /&gt;
		&#039;Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Observer&#039;,&lt;br /&gt;
		&#039;Ocean Explorer Map&#039;,&lt;br /&gt;
		&#039;Ochre Froglight&#039;,&lt;br /&gt;
		&#039;Orange Bed&#039;,&lt;br /&gt;
		&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Panda Spawn Egg&#039;,&lt;br /&gt;
		&#039;Pearlescent Froglight&#039;,&lt;br /&gt;
		&#039;Pink Bed&#039;,&lt;br /&gt;
		&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Plains Village Map&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Brick Wall&#039;,&lt;br /&gt;
		&#039;Polished Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Polished Tuff Wall&#039;,&lt;br /&gt;
		&#039;Prismarine Wall&#039;,&lt;br /&gt;
		&#039;Purple Bed&#039;,&lt;br /&gt;
		&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Red Bed&#039;,&lt;br /&gt;
		&#039;Red Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Red Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Resin Brick Wall&#039;,&lt;br /&gt;
		&#039;Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Savanna Village Map&#039;,&lt;br /&gt;
		&#039;Scaffolding&#039;,&lt;br /&gt;
		&#039;Sea Lantern&#039;,&lt;br /&gt;
		&#039;Shroomlight&#039;,&lt;br /&gt;
		&#039;Snowy Village Map&#039;,&lt;br /&gt;
		&#039;Spruce Fence Gate&#039;,&lt;br /&gt;
		&#039;Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Stonecutter&#039;,&lt;br /&gt;
		&#039;Structure Void&#039;,&lt;br /&gt;
		&#039;Swamp Explorer Map&#039;,&lt;br /&gt;
		&#039;Taiga Village Map&#039;,&lt;br /&gt;
		&#039;Trapped Chest&#039;,&lt;br /&gt;
		&#039;Trial Explorer Map&#039;,&lt;br /&gt;
		&#039;Tuff Wall&#039;,&lt;br /&gt;
		&#039;Tuff Brick Wall&#039;,&lt;br /&gt;
		&#039;Verdant Froglight&#039;,&lt;br /&gt;
		&#039;Wandering Trader Spawn Egg&#039;,&lt;br /&gt;
		&#039;Warped Fence Gate&#039;,&lt;br /&gt;
		&#039;White Bed&#039;,&lt;br /&gt;
		&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Woodland Explorer Map&#039;,&lt;br /&gt;
		&#039;Yellow Bed&#039;,&lt;br /&gt;
		&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	LCE = {&lt;br /&gt;
		&#039;Shrub&#039;&lt;br /&gt;
	},&lt;br /&gt;
	    SM = {&lt;br /&gt;
    	&#039;Compass&#039;,&lt;br /&gt;
    	&#039;Diamond Axe&#039;,&lt;br /&gt;
    	&#039;Diamond Hoe&#039;,&lt;br /&gt;
    	&#039;Diamond Pickaxe&#039;,&lt;br /&gt;
    	&#039;Diamond Shovel&#039;,&lt;br /&gt;
    	&#039;Diamond Sword&#039;,&lt;br /&gt;
    	&#039;Flint and Steel&#039;,&lt;br /&gt;
    	&#039;Potion of Invisibility&#039;,&lt;br /&gt;
    	&#039;Potion of Leaping&#039;,&lt;br /&gt;
    	&#039;Potion of Swiftness&#039;,&lt;br /&gt;
    	&#039;TNT&#039;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
for edition, items in pairs(editionItems) do&lt;br /&gt;
	for _, item in ipairs(items) do&lt;br /&gt;
		local name = item .. &#039; &#039; .. edition&lt;br /&gt;
		aliases[name] = { title = item, name = name }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Light blocks --&lt;br /&gt;
for level = 0, 15 do&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level] = { title = &amp;quot;&amp;amp;dLight&amp;quot;, name = &amp;quot;Light &amp;quot; .. level }&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot;] = { title = &amp;quot;Light&amp;quot;, name = &amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Pottery Sherds --&lt;br /&gt;
local pottery_sherds = { &lt;br /&gt;
	{ &#039;Angler&#039; },&lt;br /&gt;
	{ &#039;Arms Up&#039; },&lt;br /&gt;
	{ &#039;Archer&#039; },&lt;br /&gt;
	{ &#039;Blade&#039; },&lt;br /&gt;
	{ &#039;Brewer&#039; },&lt;br /&gt;
	{ &#039;Burn&#039; },&lt;br /&gt;
	{ &#039;Danger&#039; },&lt;br /&gt;
	{ &#039;Explorer&#039; },&lt;br /&gt;
	{ &#039;Flow&#039; },&lt;br /&gt;
	{ &#039;Friend&#039; },&lt;br /&gt;
	{ &#039;Guster&#039; },&lt;br /&gt;
	{ &#039;Heart&#039; },&lt;br /&gt;
	{ &#039;Heartbreak&#039; },&lt;br /&gt;
	{ &#039;Howl&#039; },&lt;br /&gt;
	{ &#039;Miner&#039; },&lt;br /&gt;
	{ &#039;Mourner&#039; },&lt;br /&gt;
	{ &#039;Plenty&#039; },&lt;br /&gt;
	{ &#039;Prize&#039; },&lt;br /&gt;
	{ &#039;Scrape&#039; },&lt;br /&gt;
	{ &#039;Sheaf&#039; },&lt;br /&gt;
	{ &#039;Shelter&#039; },&lt;br /&gt;
	{ &#039;Skull&#039; },&lt;br /&gt;
	{ &#039;Snort&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local potterySherdAliases = {}&lt;br /&gt;
for _, pottery_sherd in ipairs(pottery_sherds) do&lt;br /&gt;
	local name = pottery_sherd[1] .. &#039; Pottery Sherd&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039; .. name , name = name }&lt;br /&gt;
	table.insert(potterySherdAliases, aliases[name])&lt;br /&gt;
end&lt;br /&gt;
table.insert(potterySherdAliases, &#039;Brick&#039;)&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Pottery Sherd&#039;] = potterySherdAliases&lt;br /&gt;
&lt;br /&gt;
-- Smithing Templates --&lt;br /&gt;
local smithing_templates = {&lt;br /&gt;
	{ &#039;Netherite Upgrade&#039;,    &#039;Diamond Equipment&#039;, &#039;Netherite Ingot&#039;,  &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Bolt Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Coast Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Dune Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Eye Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Flow Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Host Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Raiser Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Rib Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Sentry Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Shaper Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Silence Armor Trim&#039;,   &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;d&#039; },&lt;br /&gt;
	{ &#039;Snout Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Spire Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Tide Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Vex Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Ward Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Wayfinder Armor Trim&#039;, &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wild Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
local smithing_template_array = {}&lt;br /&gt;
local armor_trims_array = {}&lt;br /&gt;
for _,smithing_template in pairs(smithing_templates) do&lt;br /&gt;
    local rarityColor = smithing_template[4]&lt;br /&gt;
	local current_alias = {&lt;br /&gt;
		title = rarityColor .. smithing_template[1],&lt;br /&gt;
		name = smithing_template[1] .. &#039; Smithing Template&#039;,&lt;br /&gt;
		text = &#039;&amp;amp;7&#039; .. &#039;Smithing Template&#039; .. &#039;//Applies to:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[2] .. &#039;/&amp;amp;7Ingredients:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[3],&lt;br /&gt;
	}&lt;br /&gt;
	aliases[smithing_template[1]] = current_alias&lt;br /&gt;
	aliases[smithing_template[1] .. &#039; Smithing Template&#039;] = current_alias&lt;br /&gt;
	table.insert(smithing_template_array,current_alias)&lt;br /&gt;
	if string.find(smithing_template[1],&#039; Armor Trim$&#039;) then&lt;br /&gt;
		table.insert(armor_trims_array,current_alias)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Matching Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Any Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return aliases&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12253</id>
		<title>Module:Inventory slot/Aliases</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12253"/>
		<updated>2026-08-27T21:22:56Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local aliases = {&lt;br /&gt;
	-- Common fuel types for furnace --&lt;br /&gt;
	[&#039;Any fuel&#039;] = { &#039;Coal&#039;, &#039;Charcoal&#039;, { title = &#039;Log&#039;, name = &#039;Oak Log&#039; }, { title = &#039;Overworld Planks&#039;, name = &#039;Oak Planks&#039; }, &#039;Lava Bucket&#039;, &#039;Block of Coal&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- All armor --&lt;br /&gt;
	[&#039;Any leather armor&#039;] = { &#039;Leather Cap&#039;, &#039;Leather Tunic&#039;, &#039;Leather Pants&#039;, &#039;Leather Boots&#039; },&lt;br /&gt;
	[&#039;Any golden armor&#039;] = { &#039;Golden Helmet&#039;, &#039;Golden Chestplate&#039;, &#039;Golden Leggings&#039;, &#039;Golden Boots&#039; },&lt;br /&gt;
	[&#039;Any chainmail armor&#039;] = { &#039;Chainmail Helmet&#039;, &#039;Chainmail Chestplate&#039;, &#039;Chainmail Leggings&#039;, &#039;Chainmail Boots&#039; },&lt;br /&gt;
	[&#039;Any iron armor&#039;] = { &#039;Iron Helmet&#039;, &#039;Iron Chestplate&#039;, &#039;Iron Leggings&#039;, &#039;Iron Boots&#039; },&lt;br /&gt;
	[&#039;Any diamond armor&#039;] = { &#039;Diamond Helmet&#039;, &#039;Diamond Chestplate&#039;, &#039;Diamond Leggings&#039;, &#039;Diamond Boots&#039; },&lt;br /&gt;
	[&#039;Any netherite armor&#039;] = { &#039;Netherite Helmet&#039;, &#039;Netherite Chestplate&#039;, &#039;Netherite Leggings&#039;, &#039;Netherite Boots&#039; },&lt;br /&gt;
&lt;br /&gt;
    -- Stones --&lt;br /&gt;
	[&#039;Any Cobblestone or Blackstone&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039; },&lt;br /&gt;
	[&#039;Any stone-tier block&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039;, &#039;Cobbled Deepslate&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Miscellaeous collections --&lt;br /&gt;
	[&#039;Any leaves&#039;] = { &#039;Oak Leaves&#039;, &#039;Spruce Leaves&#039;, &#039;Birch Leaves&#039;, &#039;Acacia Leaves&#039;, &#039;Jungle Leaves&#039;, &#039;Dark Oak Leaves&#039;, &#039;Mangrove Leaves&#039;, &#039;Cherry Leaves&#039;, &#039;Pale Oak Leaves&#039;, &#039;Azalea Leaves&#039;, &#039;Flowering Azalea Leaves&#039; };&lt;br /&gt;
	[&#039;Any egg&#039;] = { &#039;Egg&#039;, &#039;Blue Egg&#039;, &#039;Brown Egg&#039;};&lt;br /&gt;
	[&#039;Any stairs&#039;] = { &#039;Tuff Stairs&#039;, &#039;Polished Tuff Stairs&#039;, &#039;Tuff Brick Stairs&#039;, &#039;Cut Copper Stairs&#039;, &#039;Exposed Cut Copper Stairs&#039;, &#039;Weathered Cut Copper Stairs&#039;, &#039;Oxidized Cut Copper Stairs&#039;, &#039;Waxed Cut Copper Stairs&#039;, &#039;Waxed Exposed Cut Copper Stairs&#039;, &#039;Waxed Weathered Cut Copper Stairs&#039;, &#039;Waxed Oxidized Cut Copper Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Resin Brick Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Nether Brick Stairs&#039;, &#039;Sandstone Stairs&#039;, &#039;Oak Stairs&#039;, &#039;Spruce Stairs&#039;, &#039;Birch Stairs&#039;, &#039;Jungle Stairs&#039;, &#039;Acacia Stairs&#039;, &#039;Cherry Stairs&#039;, &#039;Dark Oak Stairs&#039;, &#039;Pale Oak Stairs&#039;, &#039;Mangrove Stairs&#039;, &#039;Bamboo Stairs&#039;, &#039;Bamboo Mosaic Stairs&#039;, &#039;Crimson Stairs&#039;, &#039;Warped Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Stone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Smooth Quartz Stairs&#039;, &#039;Granite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039; },&lt;br /&gt;
	&lt;br /&gt;
    [&#039;Any inventory&#039;] = { &#039;Chest&#039;, &#039;Trapped Chest&#039;, &#039;Barrel&#039;, &#039;Furnace&#039;, &#039;Smoker&#039;, &#039;Dispenser&#039;, &#039;Dropper&#039;, &#039;Decorated Pot&#039; },&lt;br /&gt;
    --Glass--&lt;br /&gt;
[&#039;Any Glass Pane&#039;] = {&lt;br /&gt;
	&#039;Glass Pane&#039;,&lt;br /&gt;
	&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
},&lt;br /&gt;
[&#039;Any Glass&#039;] = {&lt;br /&gt;
	&#039;Glass&#039;,&lt;br /&gt;
	&#039;White Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Black Stained Glass&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass&#039;,&lt;br /&gt;
	&#039;Red Stained Glass&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass&#039;,&lt;br /&gt;
	&#039;Green Stained Glass&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass&#039;,&lt;br /&gt;
},&lt;br /&gt;
    -- Misc HE--&lt;br /&gt;
    [&#039;Any Thruster Block&#039;]={&#039;Sea Lantern&#039;, &#039;Glowstone&#039;, &#039;Shroomlight&#039;, &#039;Ochre Froglight&#039;, &#039;Verdant Froglight&#039;, &#039;Pearlescent Froglight&#039;, &#039;Redstone Lamp&#039;},&lt;br /&gt;
	-- Display names --&lt;br /&gt;
	[&#039;Broken Elytra&#039;] = { title = &#039;&amp;amp;dElytra&#039;, name = &#039;Broken Elytra&#039; },&lt;br /&gt;
	[&#039;Button&#039;] = { title = &#039;Button&#039;, name = &#039;Stone Button&#039;},&lt;br /&gt;
	[&#039;Wooden Button&#039;] = { title = &#039;Button&#039;, name = &#039;Oak Button&#039;},&lt;br /&gt;
	[&#039;Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Ominous Banner&#039;] = { title = &#039;&amp;amp;6&amp;amp;oOminous Banner&#039;, name = &#039;Ominous Banner&#039;, text = &lt;br /&gt;
		&#039;&amp;amp;7Cyan Lozenge/&amp;amp;7Light Gray Base/&amp;amp;7Gray Pale/&amp;amp;7Light Gray Bordure/&amp;amp;7Black Fess/&amp;amp;7Light Gray Per Fess&#039;},&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Basic&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Basic&#039; },&lt;br /&gt;
    [&#039;Power Hoe Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Basic&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Enhanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Enhanced&#039;] = { title = &#039;&amp;amp;#00FFA1Enhanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Enhanced&#039; },&lt;br /&gt;
&lt;br /&gt;
    [&#039;Power Drill Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Advanced&#039; },&lt;br /&gt;
    [&#039;Power Chainsaw Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Chainsaw&#039;, name = &#039;Power Chainsaw Advanced&#039; },&lt;br /&gt;
    [&#039;Power Hoe Advanced&#039;] = { title = &#039;&amp;amp;#B12BC9Advanced &amp;amp;6Power &amp;amp;7Hoe&#039;, name = &#039;Power Hoe Advanced&#039; },&lt;br /&gt;
&lt;br /&gt;
	[&#039;Half Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Half Filled Bundle&#039; },&lt;br /&gt;
	[&#039;Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Filled Bundle&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Empty display name --&lt;br /&gt;
	[&#039;debug_fourj_item&#039;] = { title = &#039;\226\128\140&#039;, name = &#039;debug_fourj_item&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Equipment with custom rarity --&lt;br /&gt;
	[&#039;Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Damaged Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Trident BE&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;9 +8 Attack Damage&#039;},&lt;br /&gt;
	[&#039;Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Damaged Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Mace BE&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;9 +5 Attack Damage&#039;},&lt;br /&gt;
	[&amp;quot;Damaged Elytra&amp;quot;] = { title = &amp;quot;&amp;amp;dElytra&amp;quot;, name = &amp;quot;Damaged Elytra&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Boots&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Boots&amp;quot;, name = &amp;quot;Damaged Chainmail Boots&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Chestplate&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Chestplate&amp;quot;, name = &amp;quot;Damaged Chainmail Chestplate&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Helmet&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Helmet&amp;quot;, name = &amp;quot;Damaged Chainmail Helmet&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Leggings&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Leggings&amp;quot;, name = &amp;quot;Damaged Chainmail Leggings&amp;quot; },&lt;br /&gt;
	&lt;br /&gt;
	-- Ominous Bottles --&lt;br /&gt;
    [&#039;Ominous Bottle&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle II&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen II (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle III&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen III (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle IV&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen IV (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle V&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen V (01:40:00)&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Bedrock and Education Edition display names --&lt;br /&gt;
	[&#039;Buried Treasure Map BE&#039;] = { title = &#039;Treasure Map&#039;, name = &#039;Buried Treasure Map BE&#039; },&lt;br /&gt;
	[&#039;Elytra Wings&#039;] = { title = &#039;Elytra Wings&#039;, name = &#039;Elytra&#039; },&lt;br /&gt;
	[&#039;Glowing Obsidian&#039;] = { title = &#039;tile.glowingobsidian.name&#039;, name = &#039;Glowing Obsidian&#039; },&lt;br /&gt;
	[&#039;Map (no markers)&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;cNo&#039; },&lt;br /&gt;
	[&#039;Locator Map&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;aYes&#039; },&lt;br /&gt;
	[&#039;Shrub BE&#039;] = { title = &#039;Fern&#039;, name = &#039;Short Grass&#039; },&lt;br /&gt;
	[&#039;Unknown&#039;] = { title = &#039;Unknown&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update&#039;] = { title = &#039;tile.info_update.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update2&#039;] = { title = &#039;tile.info_update2.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;reserved6&#039;] = { title = &#039;tile.reserved6.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;Smooth Purpur&#039;] = { title = &#039;tile.deprecated_purpur_block_2.name&#039;, name = &#039;Smooth Purpur&#039; },&lt;br /&gt;
	[&#039;Beacon BE&#039;] = { title = &#039;&amp;amp;bBeacon&#039;, name = &#039;Beacon BE&#039; },&lt;br /&gt;
	[&#039;Conduit BE&#039;] = { title = &#039;&amp;amp;eConduit&#039;, name = &#039;Conduit BE&#039; },&lt;br /&gt;
	[&#039;Dragon Egg BE&#039;] = { title = &#039;&amp;amp;dDragon Egg&#039;, name = &#039;Dragon Egg BE&#039; },&lt;br /&gt;
	[&#039;Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;eSkeleton Skull&#039;, name = &#039;Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Wither Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;bWither Skeleton Skull&#039;, name = &#039;Wither Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Zombie Head BE&#039;] = { title = &#039;&amp;amp;eZombie Head&#039;, name = &#039;Zombie Head BE&#039; },&lt;br /&gt;
	[&#039;Player Head BE&#039;] = { title = &#039;&amp;amp;ePlayer Head&#039;, name = &#039;Player Head BE&#039; },&lt;br /&gt;
	[&#039;Creeper Head BE&#039;] = { title = &#039;&amp;amp;eCreeper Head&#039;, name = &#039;Creeper Head BE&#039; },&lt;br /&gt;
	[&#039;Dragon Head BE&#039;] = { title = &#039;&amp;amp;dDragon Head&#039;, name = &#039;Dragon Head BE&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Chemistry --&lt;br /&gt;
	[&#039;Lead (element)&#039;] = { title = &#039;Lead&#039;, name = &#039;Lead (element)&#039; },&lt;br /&gt;
	[&#039;Water (compound)&#039;] = { title = &#039;Water&#039;, name = &#039;Water (compound)&#039; },&lt;br /&gt;
	[&#039;Chloride&#039;] = { &#039;Calcium Chloride&#039;, &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Sparkler&#039;] = { &#039;Orange Sparkler&#039;, &#039;Blue Sparkler&#039;, &#039;Red Sparkler&#039;, &#039;Purple Sparkler&#039;, &#039;Green Sparkler&#039; },&lt;br /&gt;
	[&#039;Matching Chloride&#039;] = { &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Matching Colored Torch&#039;] = { &#039;Blue Torch&#039;, &#039;Red Torch&#039;, &#039;Purple Torch&#039;, &#039;Green Torch&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- April Fools&#039; Day jokes --&lt;br /&gt;
	[&#039;New Thing Banner Pattern&#039;] = { title = &#039;&amp;amp;dBanner Pattern&#039;, name = &#039;New Thing Banner Pattern&#039;, text = &#039;&amp;amp;7New Thing&#039;},&lt;br /&gt;
	-- Note: These can&#039;t use this module&#039;s default color handling because potato peels have no white variant but do include the uncolored variant in recipes&lt;br /&gt;
	[&#039;Any Potato Peels&#039;] = { &#039;Potato Peels&#039;, &#039;Light Gray Potato Peels&#039;, &#039;Gray Potato Peels&#039;, &#039;Black Potato Peels&#039;, &#039;Brown Potato Peels&#039;, &#039;Red Potato Peels&#039;, &#039;Orange Potato Peels&#039;, &#039;Yellow Potato Peels&#039;, &#039;Lime Potato Peels&#039;, &#039;Green Potato Peels&#039;, &#039;Cyan Potato Peels&#039;, &#039;Light Blue Potato Peels&#039;, &#039;Blue Potato Peels&#039;, &#039;Purple Potato Peels&#039;, &#039;Magenta Potato Peels&#039;, &#039;Pink Potato Peels&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- Old textures --&lt;br /&gt;
	[&#039;Apple Revision 1&#039;] = { title = &#039;Apple&#039;, name = &#039;Apple Revision 1&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Stairs&#039;] = aliases[&#039;Any stairs&#039;]&lt;br /&gt;
&lt;br /&gt;
-- Tooltip colors --&lt;br /&gt;
local yellowTooltips = {&lt;br /&gt;
    &#039;Bottle o\&#039; Enchanting&#039;,&lt;br /&gt;
    &#039;Chainmail Boots&#039;,&lt;br /&gt;
    &#039;Chainmail Chestplate&#039;,&lt;br /&gt;
    &#039;Chainmail Helmet&#039;,&lt;br /&gt;
    &#039;Chainmail Leggings&#039;,&lt;br /&gt;
    &#039;Conduit&#039;,&lt;br /&gt;
    &#039;Creeper Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Creeper Head&#039;,&lt;br /&gt;
    &#039;Disc Fragment 5&#039;,&lt;br /&gt;
    &#039;Dragon\&#039;s Breath&#039;,&lt;br /&gt;
    &#039;Echo Shard&#039;,&lt;br /&gt;
    &#039;Enchanted Book&#039;,&lt;br /&gt;
    &#039;Goat Horn&#039;,&lt;br /&gt;
    &#039;Heart of the Sea&#039;,&lt;br /&gt;
    &#039;Nautilus Shell&#039;,&lt;br /&gt;
    &#039;Ominous Banner&#039;,&lt;br /&gt;
    &#039;Piglin Head&#039;,&lt;br /&gt;
    &#039;Player Head&#039;,&lt;br /&gt;
    &#039;Recovery Compass&#039;,&lt;br /&gt;
    &#039;Skeleton Skull&#039;,&lt;br /&gt;
    &#039;Sniffer Egg&#039;,&lt;br /&gt;
    &#039;Snout Banner Pattern&#039;,&lt;br /&gt;
    &#039;Totem of Undying&#039;,&lt;br /&gt;
    &#039;Zombie Head&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( yellowTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local aquaTooltips = {&lt;br /&gt;
	&#039;Beacon&#039;,&lt;br /&gt;
	&#039;Enchanted Golden Apple&#039;,&lt;br /&gt;
    &#039;Flow Banner Pattern&#039;,&lt;br /&gt;
	&#039;Guster Banner Pattern&#039;,&lt;br /&gt;
	&#039;Nether Star&#039;,&lt;br /&gt;
    &#039;Skull Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Thing Banner Pattern&#039;,&lt;br /&gt;
    &#039;Wither Skeleton Skull&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( aquaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;b&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local magentaTooltips = {&lt;br /&gt;
	&#039;Barrier&#039;,&lt;br /&gt;
	&#039;Command Block&#039;,&lt;br /&gt;
	&#039;Chain Command Block&#039;,&lt;br /&gt;
	&#039;Debug Stick&#039;,&lt;br /&gt;
	&#039;Dragon Egg&#039;,&lt;br /&gt;
	&#039;Dragon Head&#039;,&lt;br /&gt;
	&#039;Elytra&#039;,&lt;br /&gt;
	&#039;Heavy Core&#039;,&lt;br /&gt;
	&#039;Jigsaw Block&#039;,&lt;br /&gt;
	&#039;Knowledge Book&#039;,&lt;br /&gt;
	&#039;Light&#039;,&lt;br /&gt;
	&#039;Repeating Command Block&#039;,&lt;br /&gt;
	&#039;Structure Block&#039;,&lt;br /&gt;
	&#039;Structure Void&#039;,&lt;br /&gt;
	&#039;Test Block&#039;,&lt;br /&gt;
	&#039;Test Instance Block&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( magentaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;d&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons --&lt;br /&gt;
local tools = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5, 1.6 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6, 1.6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7, 1.6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8, 1.6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3, 1.2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4, 1.2 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5, 1.2 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6, 1.2 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 7, 0.8 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 9, 0.8 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 9, 0.9 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 7, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 9, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 10, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 3.5, 1 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 4.5, 1 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 5.5, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 6.5, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 1, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 1, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 1, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 1, 4 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local materialGroups = {}&lt;br /&gt;
local toolGroups = {}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( tools ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	local damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
	local text = &#039;/&amp;amp;7When in Main Hand:/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[3] .. &#039; Attack Damage/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[4] .. &#039; Attack Speed&#039;&lt;br /&gt;
	aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
	aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
	&lt;br /&gt;
	local materialGroup = toolProps[1]:lower()&lt;br /&gt;
	local toolGroup = toolProps[2]:lower()&lt;br /&gt;
	&lt;br /&gt;
	if toolProps[2] ~= &#039;Sword&#039; then&lt;br /&gt;
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end&lt;br /&gt;
		table.insert( materialGroups[materialGroup], aliases[aliasName] )&lt;br /&gt;
	end&lt;br /&gt;
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end&lt;br /&gt;
	table.insert( toolGroups[toolGroup], aliases[aliasName] )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for materialGroup, items in pairs( materialGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. materialGroup .. &#039; tools&#039;] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for toolGroup, items in pairs( toolGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. toolGroup] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons in Bedrock Edition --&lt;br /&gt;
local toolsBE = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 4 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 5 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 7 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 5 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 6 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( toolsBE ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	aliases[aliasName .. &#039; BE&#039;] = { title = aliasName, name = aliasName, text = &#039;/&amp;amp;9+&#039; .. toolProps[3] .. &#039; Attack Damage&#039;}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Armor tooltips --&lt;br /&gt;
local head = {&lt;br /&gt;
	{&#039;Leather Cap&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Iron Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond Helmet&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Helmet&#039;, 3, 3, 1 },&lt;br /&gt;
	{&#039;Turtle Shell&#039;, 2 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local body = {&lt;br /&gt;
	{&#039;Leather Tunic&#039;, 3 },&lt;br /&gt;
	{&#039;Chainmail Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Iron Chestplate&#039;, 6 },&lt;br /&gt;
	{&#039;Golden Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Diamond Chestplate&#039;, 8, 2 },&lt;br /&gt;
	{&#039;Netherite Chestplate&#039;, 8, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local legs = {&lt;br /&gt;
	{&#039;Leather Pants&#039;, 2 },&lt;br /&gt;
	{&#039;Chainmail Leggings&#039;, 4 },&lt;br /&gt;
	{&#039;Iron Leggings&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Leggings&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond Leggings&#039;, 6, 2 },&lt;br /&gt;
	{&#039;Netherite Leggings&#039;, 6, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local feet = {&lt;br /&gt;
	{&#039;Leather Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Iron Boots&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond Boots&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Boots&#039;, 3, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local equipped = {&lt;br /&gt;
	{&#039;Leather Horse Armor&#039;, 3 },&lt;br /&gt;
	{&#039;Iron Horse Armor&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Horse Armor&#039;, 7 },&lt;br /&gt;
	{&#039;Diamond Horse Armor&#039;, 11, 2 },&lt;br /&gt;
	{&#039;Wolf Armor&#039;, 11 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local bodyParts = {&lt;br /&gt;
    {head, &amp;quot;on Head&amp;quot;},&lt;br /&gt;
    {body, &amp;quot;on Body&amp;quot;},&lt;br /&gt;
    {legs, &amp;quot;on Legs&amp;quot;},&lt;br /&gt;
    {feet, &amp;quot;on Feet&amp;quot;},&lt;br /&gt;
    {equipped, &amp;quot;equipped&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local trimMaterial = {&lt;br /&gt;
	{&#039;Quartz&#039;, &#039;&amp;amp;h&#039;},&lt;br /&gt;
	{&#039;Iron&#039;, &#039;&amp;amp;i&#039;},&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;&amp;amp;j&#039;},&lt;br /&gt;
	{&#039;Redstone&#039;, &#039;&amp;amp;y&#039;},&lt;br /&gt;
	{&#039;Copper&#039;, &#039;&amp;amp;z&#039;},&lt;br /&gt;
	{&#039;Gold&#039;, &#039;&amp;amp;p&#039;},&lt;br /&gt;
	{&#039;Emerald&#039;, &#039;&amp;amp;q&#039;},&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;&amp;amp;s&#039;},&lt;br /&gt;
	{&#039;Lapis&#039;, &#039;&amp;amp;t&#039;},&lt;br /&gt;
	{&#039;Amethyst&#039;, &#039;&amp;amp;u&#039;},&lt;br /&gt;
	{&#039;Resin&#039;, &#039;&amp;amp;v&#039;},&lt;br /&gt;
	{&#039;Amber&#039;, &#039;&amp;amp;6&#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, bodyPart in ipairs(bodyParts) do&lt;br /&gt;
    local items = bodyPart[1]&lt;br /&gt;
    local bodyPartName = bodyPart[2]&lt;br /&gt;
    &lt;br /&gt;
    for _, toolProps in ipairs(items) do&lt;br /&gt;
        local aliasName = toolProps[1]&lt;br /&gt;
        local damagedName&lt;br /&gt;
        if string.find(aliasName, &amp;quot;Horse Armor&amp;quot;) then&lt;br /&gt;
            damagedName = aliasName &lt;br /&gt;
        else&lt;br /&gt;
            damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
        end     &lt;br /&gt;
        local text = &#039;/&amp;amp;7When &#039; .. bodyPartName .. &#039;:/&amp;amp;9+&#039; .. toolProps[2] .. &#039; Armor/&#039;&lt;br /&gt;
        if toolProps[3] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[3] .. &#039; Armor Toughness/&#039;&lt;br /&gt;
        end&lt;br /&gt;
        if toolProps[4] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[4] .. &#039; Knockback Resistance&#039;&lt;br /&gt;
        end&lt;br /&gt;
        aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
        aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
        if bodyPartName ~= &amp;quot;equipped&amp;quot; then&lt;br /&gt;
			for _, materialType in ipairs( trimMaterial ) do&lt;br /&gt;
	        	local trimName = materialType[1] .. &#039; Trim &#039; .. aliasName&lt;br /&gt;
				local trimText = &#039;&amp;amp;7Upgrade:/&amp;amp;#160;&#039; .. materialType[2] .. &#039;Armor Trim/&amp;amp;#160;&#039; .. materialType[1] .. &#039; Material/&#039;&lt;br /&gt;
				aliases[trimName] = { title = aliasName, name = trimName, text = trimText .. text }&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Lists of item variants --&lt;br /&gt;
local itemVariants = {&lt;br /&gt;
	[&#039;Small Flower&#039;] = { &#039;Oxeye Daisy&#039;, &#039;Cornflower&#039;, &#039;Lily of the Valley&#039;, &#039;Wither Rose&#039;, &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039;, &#039;Azure Bluet&#039;, &#039;Allium&#039;, &#039;Blue Orchid&#039;, &#039;Poppy&#039;, &#039;Dandelion&#039;, &#039;Torchflower&#039;, &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Eyeblossom&#039;] = { &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Mushroom&#039;] = { &#039;Red Mushroom&#039;, &#039;Brown Mushroom&#039; },&lt;br /&gt;
	[&#039;Quartz Block&#039;] = { &#039;Block of Quartz&#039;, &#039;Chiseled Quartz Block&#039;, &#039;Quartz Pillar&#039; },&lt;br /&gt;
	[&#039;Red Sandstone&#039;] = { &#039;Red Sandstone&#039;, &#039;Cut Red Sandstone&#039;, &#039;Chiseled Red Sandstone&#039;, &#039;Smooth Red Sandstone&#039; },&lt;br /&gt;
	[&#039;Sandstone&#039;] = { &#039;Sandstone&#039;, &#039;Cut Sandstone&#039;, &#039;Chiseled Sandstone&#039;, &#039;Smooth Sandstone&#039; },&lt;br /&gt;
	[&#039;Stone Bricks&#039;] = { &#039;Stone Bricks&#039;, &#039;Mossy Stone Bricks&#039;, &#039;Cracked Stone Bricks&#039;, &#039;Chiseled Stone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Slab&#039;] = { &#039;Stone Slab&#039;, &#039;Cobblestone Slab&#039;, &#039;Mossy Cobblestone Slab&#039;, &#039;Smooth Stone Slab&#039;, &#039;Stone Brick Slab&#039;, &#039;Mossy Stone Brick Slab&#039;, &lt;br /&gt;
		&#039;Granite Slab&#039;, &#039;Polished Granite Slab&#039;, &#039;Diorite Slab&#039;, &#039;Polished Diorite Slab&#039;, &#039;Andesite Slab&#039;, &#039;Polished Andesite Slab&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Slab&#039;, &#039;Polished Deepslate Slab&#039;, &#039;Deepslate Brick Slab&#039;, &#039;Deepslate Tile Slab&#039;, &#039;Brick Slab&#039;, &#039;Mud Brick Slab&#039;, &#039;Resin Brick Slab&#039;,&lt;br /&gt;
		&#039;Sandstone Slab&#039;, &#039;Smooth Sandstone Slab&#039;, &#039;Cut Sandstone Slab&#039;, &#039;Red Sandstone Slab&#039;, &#039;Smooth Red Sandstone Slab&#039;, &#039;Cut Red Sandstone Slab&#039;, &#039;Prismarine Slab&#039;, &#039;Prismarine Brick Slab&#039;, &#039;Dark Prismarine Slab&#039;, &lt;br /&gt;
		&#039;Nether Brick Slab&#039;, &#039;Red Nether Brick Slab&#039;, &#039;Blackstone Slab&#039;, &#039;Polished Blackstone Slab&#039;, &#039;Polished Blackstone Brick Slab&#039;, &#039;End Stone Brick Slab&#039;, &#039;Purpur Slab&#039;, &#039;Quartz Slab&#039;, &#039;Smooth Quartz Slab&#039;, &#039;Petrified Oak Slab&#039; },&lt;br /&gt;
	[&#039;Stone Stairs&#039;] = { &#039;Stone Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &lt;br /&gt;
		&#039;Granite Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Resin Brick Stairs&#039;, &lt;br /&gt;
		&#039;Sandstone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &lt;br /&gt;
		&#039;Nether Brick Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Smooth Quartz Stairs&#039; },&lt;br /&gt;
	[&#039;Wall&#039;] = { &#039;Cobblestone Wall&#039;, &#039;Mossy Cobblestone Wall&#039;, &#039;Stone Brick Wall&#039;, &#039;Mossy Stone Brick Wall&#039;, &#039;Granite Wall&#039;, &#039;Diorite Wall&#039;, &#039;Andesite Wall&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;, &#039;Polished Deepslate Wall&#039;, &#039;Deepslate Brick Wall&#039;, &#039;Deepslate Tile Wall&#039;, &#039;Brick Wall&#039;, &#039;Mud Brick Wall&#039;, &#039;Resin Brick Wall&#039;, &#039;Sandstone Wall&#039;, &#039;Red Sandstone Wall&#039;, &#039;Prismarine Wall&#039;, &lt;br /&gt;
		&#039;Nether Brick Wall&#039;, &#039;Red Nether Brick Wall&#039;, &#039;Blackstone Wall&#039;, &#039;Polished Blackstone Wall&#039;, &#039;Polished Blackstone Brick Wall&#039;, &#039;End Stone Brick Wall&#039; },&lt;br /&gt;
	[&#039;Purpur Block&#039;] = { &#039;Purpur Block&#039;, &#039;Purpur Pillar&#039; },&lt;br /&gt;
	[&#039;Stone&#039;] = { &#039;Stone&#039;, &#039;Andesite&#039;, &#039;Granite&#039;, &#039;Diorite&#039;, &#039;Polished Andesite&#039;, &#039;Polished Granite&#039;, &#039;Polished Diorite&#039; },&lt;br /&gt;
	[&#039;Resin Block&#039;] = { &#039;Block of Resin&#039;, &#039;Resin Bricks&#039;, &#039;Chiseled Resin Bricks&#039; },&lt;br /&gt;
	[&#039;Tulip&#039;] = { &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039; },&lt;br /&gt;
	[&#039;Prismarine&#039;] = { &#039;Prismarine&#039;, &#039;Prismarine Bricks&#039;, &#039;Dark Prismarine&#039; },&lt;br /&gt;
	[&#039;Ore&#039;] = { &#039;Coal Ore&#039;, &#039;Iron Ore&#039;, &#039;Gold Ore&#039;, &#039;Lapis Lazuli Ore&#039;, &#039;Redstone Ore&#039;, &#039;Emerald Ore&#039;, &#039;Diamond Ore&#039;, &#039;Nether Quartz Ore&#039;, &#039;Nether Gold Ore&#039;, &#039;Deepslate Coal Ore&#039;, &lt;br /&gt;
		&#039;Deepslate Copper Ore&#039;, &#039;Deepslate Emerald Ore&#039;, &#039;Deepslate Iron Ore&#039;, &#039;Deepslate Gold Ore&#039;, &#039;Deepslate Lapis Lazuli Ore&#039;, &#039;Deepslate Redstone Ore&#039;, &#039;Deepslate Diamond Ore&#039;},&lt;br /&gt;
	[&#039;Dead Coral Block&#039;] = { &#039;Dead Tube Coral Block&#039;, &#039;Dead Brain Coral Block&#039;, &#039;Dead Bubble Coral Block&#039;, &#039;Dead Fire Coral Block&#039;, &#039;Dead Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Coral Block&#039;] = { &#039;Tube Coral Block&#039;, &#039;Brain Coral Block&#039;, &#039;Bubble Coral Block&#039;, &#039;Fire Coral Block&#039;, &#039;Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Dead Coral&#039;] = { &#039;Dead Tube Coral&#039;, &#039;Dead Brain Coral&#039;, &#039;Dead Bubble Coral&#039;, &#039;Dead Fire Coral&#039;, &#039;Dead Horn Coral&#039; },&lt;br /&gt;
	[&#039;Dead Coral Fan&#039;] = { &#039;Dead Tube Coral Fan&#039;, &#039;Dead Brain Coral Fan&#039;, &#039;Dead Bubble Coral Fan&#039;, &#039;Dead Fire Coral Fan&#039;, &#039;Dead Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Coral&#039;] = { &#039;Tube Coral&#039;, &#039;Brain Coral&#039;, &#039;Bubble Coral&#039;, &#039;Fire Coral&#039;, &#039;Horn Coral&#039; },&lt;br /&gt;
	[&#039;Coral Fan&#039;] = { &#039;Tube Coral Fan&#039;, &#039;Brain Coral Fan&#039;, &#039;Bubble Coral Fan&#039;, &#039;Fire Coral Fan&#039;, &#039;Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Torch&#039;] = { &#039;Torch&#039;, &#039;Soul Torch&#039; },&lt;br /&gt;
	[&#039;Lantern&#039;] = { &#039;Lantern&#039;, &#039;Soul Lantern&#039; },&lt;br /&gt;
	[&#039;Fungus&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Fungi&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Roots&#039;] = { &#039;Crimson Roots&#039;, &#039;Warped Roots&#039; },&lt;br /&gt;
	[&#039;Nylium&#039;] = { &#039;Crimson Nylium&#039;, &#039;Warped Nylium&#039; },&lt;br /&gt;
	[&#039;Soul Sand&#039;] = { &#039;Soul Sand&#039;, &#039;Soul Soil&#039; },&lt;br /&gt;
	[&#039;Campfire&#039;] = { &#039;Campfire&#039;, &#039;Soul Campfire&#039; },&lt;br /&gt;
	[&#039;Blackstone&#039;] = { &#039;Blackstone&#039;, &#039;Polished Blackstone&#039;, &#039;Chiseled Polished Blackstone&#039;, &#039;Polished Blackstone Bricks&#039;, &#039;Cracked Polished Blackstone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Button&#039;] = { &#039;Stone Button&#039;, &#039;Polished Blackstone Button&#039; },&lt;br /&gt;
	[&#039;Stone Pressure Plate&#039;] = { &#039;Stone Pressure Plate&#039;, &#039;Polished Blackstone Pressure Plate&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Copper --&lt;br /&gt;
local copperstuff = {&lt;br /&gt;
	&#039;Block of Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper Stairs&#039;,&lt;br /&gt;
	&#039;Cut Copper Slab&#039;,&lt;br /&gt;
	&#039;Chiseled Copper&#039;,&lt;br /&gt;
	&#039;Copper Grate&#039;,&lt;br /&gt;
	&#039;Copper Bulb&#039;,&lt;br /&gt;
	&#039;Copper Door&#039;,&lt;br /&gt;
	&#039;Copper Trapdoor&#039;,&lt;br /&gt;
}&lt;br /&gt;
local coppervariants = { &#039;&#039;, &#039;Exposed &#039;, &#039;Weathered &#039;, &#039;Oxidized &#039; }&lt;br /&gt;
for _, copper in ipairs( copperstuff ) do&lt;br /&gt;
	itemVariants[&#039;Unwaxed &#039; .. copper] = {}&lt;br /&gt;
	itemVariants[&#039;Waxed &#039; .. copper] = {}&lt;br /&gt;
	for _, coppervariant in ipairs( coppervariants ) do&lt;br /&gt;
		local name = coppervariant .. copper&lt;br /&gt;
		if copper == &#039;Block of Copper&#039; and coppervariant ~= &#039;&#039; then&lt;br /&gt;
			name = coppervariant .. &#039;Copper&#039;&lt;br /&gt;
		end&lt;br /&gt;
		table.insert( itemVariants[&#039;Unwaxed &#039; .. copper], name )&lt;br /&gt;
		table.insert( itemVariants[&#039;Waxed &#039; .. copper], &#039;Waxed &#039; .. name )&lt;br /&gt;
	end&lt;br /&gt;
	itemVariants[copper] = {}&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Unwaxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Waxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for aliasName, aliasItems in pairs( itemVariants ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. aliasName] = aliasItems&lt;br /&gt;
	aliases[&#039;Matching &#039; .. aliasName] = aliasItems&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Discs --&lt;br /&gt;
local discs = { &lt;br /&gt;
	{ &#039;13&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Cat&#039;,                 &#039;C418&#039;,         &#039;cat&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Blocks&#039;,              &#039;C418&#039;,         &#039;blocks&#039;,    &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Chirp&#039;,               &#039;C418&#039;,         &#039;chirp&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Far&#039;,                 &#039;C418&#039;,         &#039;far&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mall&#039;,                &#039;C418&#039;,         &#039;mall&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mellohi&#039;,             &#039;C418&#039;,         &#039;mellohi&#039;,   &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Stal&#039;,                &#039;C418&#039;,         &#039;stal&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Strad&#039;,               &#039;C418&#039;,         &#039;strad&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Ward&#039;,                &#039;C418&#039;,         &#039;ward&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;11&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wait&#039;,                &#039;C418&#039;,         &#039;wait&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Otherside&#039;,           &#039;Lena Raine&#039;,   &#039;otherside&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Pigstep&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;5&#039;,                   &#039;Samuel Åberg&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Relic&#039;,               &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Precipice&#039;,           &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Creator&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Creator (Music Box)&#039;, &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
}&lt;br /&gt;
for _, disc in ipairs( discs ) do&lt;br /&gt;
    local rarityColor = disc[4]&lt;br /&gt;
	local name = &#039;Music Disc &#039; .. disc[1]&lt;br /&gt;
	local artist = disc[2]&lt;br /&gt;
	local trackname = disc[1]&lt;br /&gt;
	if disc[3] ~= &#039;&#039; then&lt;br /&gt;
		trackname = disc[3]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = rarityColor .. &#039;Music Disc&#039;, name = name, text = &#039;&amp;amp;7&#039; .. artist .. &#039; - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Disc Fragments --&lt;br /&gt;
local disc_fragments = { &lt;br /&gt;
	{ &#039;5&#039;,    },&lt;br /&gt;
}&lt;br /&gt;
for _, disc_fragment in ipairs( disc_fragments ) do&lt;br /&gt;
	local name = &#039;Disc Fragment &#039; .. disc_fragment[1]&lt;br /&gt;
	local trackname = disc_fragment[1]&lt;br /&gt;
	if disc_fragment[2] ~= nil then&lt;br /&gt;
		trackname = disc_fragment[2]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;eDisc Fragment&#039;, name = name, text = &#039;&amp;amp;7Music Disc - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Paintings --&lt;br /&gt;
local paintings = { &lt;br /&gt;
	{ &#039;Kebab med tre pepperoni&#039;,    &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;de_aztec&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Albanian&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Target Successfully Bombed&#039;, &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Paradisträd&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wasteland&#039;,                  &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Meditative&#039;,                 &#039;Sarah Boeving&#039;,           &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wanderer&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Graham&#039;,                     &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Prairie Ride&#039;,               &#039;Sarah Boeving&#039;,           &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;The Pool&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Bonjour Monsieur Courbet&#039;,   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;sunset_dense&#039;,               &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Seaside&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Creebet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Match&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bust&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The Stage Is Set&#039;,           &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The void&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Skull and Roses&#039;,            &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wither&#039;,                     &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Baroque&#039;,                    &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Humble&#039;,                     &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bouquet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cavebird&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cotán&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Endboss&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Fern&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Owlemons&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Sunflowers&#039;,                 &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Tides&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Backyard&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Pond&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Fighters&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Changing&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Finding&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Lowmist&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Passage&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Mortal Coil&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Kong&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Pointer&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Pigscene&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Skull On Fire&#039;,              &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Unpacked&#039;,                   &#039;Sarah Boeving&#039;,           &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Orb&#039;,                        &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Earth&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wind&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Fire&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Water&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; }&lt;br /&gt;
}&lt;br /&gt;
for _, painting in ipairs( paintings ) do&lt;br /&gt;
	local name = &#039;Painting &#039; .. painting[1]&lt;br /&gt;
	local artist = painting[2]&lt;br /&gt;
	local artwork = painting[1]&lt;br /&gt;
	local size = painting[3]&lt;br /&gt;
	aliases[name] = { title = &#039;Painting&#039;, name = &#039;Painting&#039;, text = &#039;&amp;amp;e&#039; .. artwork .. &#039;/&amp;amp;7&#039; .. artist .. &#039;/&#039; .. &#039;&amp;amp;f&#039; .. size }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Damaged items, note it skips tools, weapons, and armor as they are handled above to add the damage tooltip. --&lt;br /&gt;
-- Items with rarity (such as Mace and Elytra) are hard-coded in the module&#039;s beginning.&lt;br /&gt;
local damagedItems = {&lt;br /&gt;
	&#039;Bow&#039;,&lt;br /&gt;
	&#039;Brush&#039;,&lt;br /&gt;
	&#039;Carrot on a Stick&#039;,&lt;br /&gt;
	&#039;Crossbow&#039;,&lt;br /&gt;
	&#039;Fishing Rod&#039;,&lt;br /&gt;
	&#039;Flint and Steel&#039;,&lt;br /&gt;
	&#039;Shears&#039;,&lt;br /&gt;
	&#039;Shield&#039;&lt;br /&gt;
}&lt;br /&gt;
for _, item in ipairs( damagedItems ) do&lt;br /&gt;
	local name = &#039;Damaged &#039; .. item&lt;br /&gt;
	aliases[name] = { title = item, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Banners and colored items --&lt;br /&gt;
local patterns = {&lt;br /&gt;
	&#039;Base Dexter Canton&#039;,&lt;br /&gt;
	&#039;Base&#039;,&lt;br /&gt;
	&#039;Base Gradient&#039;,&lt;br /&gt;
	&#039;Base Indented&#039;,&lt;br /&gt;
	&#039;Base Sinister Canton&#039;,&lt;br /&gt;
	&#039;Bend&#039;,&lt;br /&gt;
	&#039;Bend Sinister&#039;,&lt;br /&gt;
	&#039;Bordure&#039;,&lt;br /&gt;
	&#039;Bordure Indented&#039;,&lt;br /&gt;
	&#039;Chevron&#039;,&lt;br /&gt;
	&#039;Chief Dexter Canton&#039;,&lt;br /&gt;
	&#039;Chief&#039;,&lt;br /&gt;
	&#039;Chief Indented&#039;,&lt;br /&gt;
	&#039;Chief Sinister Canton&#039;,&lt;br /&gt;
	&#039;Creeper Charge&#039;,&lt;br /&gt;
	&#039;Cross&#039;,&lt;br /&gt;
	&#039;Fess&#039;,&lt;br /&gt;
	&#039;Field Masoned&#039;,&lt;br /&gt;
	&#039;Flow&#039;,&lt;br /&gt;
	&#039;Flower Charge&#039;,&lt;br /&gt;
	&#039;Globe&#039;,&lt;br /&gt;
	&#039;Gradient&#039;,&lt;br /&gt;
	&#039;Guster&#039;,&lt;br /&gt;
	&#039;Inverted Chevron&#039;,&lt;br /&gt;
	&#039;Lozenge&#039;,&lt;br /&gt;
	&#039;Thing&#039;,&lt;br /&gt;
	&#039;Pale&#039;,&lt;br /&gt;
	&#039;Pale Dexter&#039;,&lt;br /&gt;
	&#039;Pale Sinister&#039;,&lt;br /&gt;
	&#039;Paly&#039;,&lt;br /&gt;
	&#039;Per Bend&#039;,&lt;br /&gt;
	&#039;Per Bend Inverted&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister Inverted&#039;,&lt;br /&gt;
	&#039;Per Fess&#039;,&lt;br /&gt;
	&#039;Per Fess Inverted&#039;,&lt;br /&gt;
	&#039;Per Pale&#039;,&lt;br /&gt;
	&#039;Per Pale Inverted&#039;,&lt;br /&gt;
	&#039;Piglin&#039;,&lt;br /&gt;
	&#039;Snout&#039;,&lt;br /&gt;
	&#039;Roundel&#039;,&lt;br /&gt;
	&#039;Saltire&#039;,&lt;br /&gt;
	&#039;Skull Charge&#039;&lt;br /&gt;
}&lt;br /&gt;
local colors = {&lt;br /&gt;
	&#039;White&#039;,&lt;br /&gt;
	&#039;Light Gray&#039;,&lt;br /&gt;
	&#039;Gray&#039;,&lt;br /&gt;
	&#039;Black&#039;,&lt;br /&gt;
	&#039;Brown&#039;,&lt;br /&gt;
	&#039;Red&#039;,&lt;br /&gt;
	&#039;Orange&#039;,&lt;br /&gt;
	&#039;Yellow&#039;,&lt;br /&gt;
	&#039;Lime&#039;,&lt;br /&gt;
	&#039;Green&#039;,&lt;br /&gt;
	&#039;Cyan&#039;,&lt;br /&gt;
	&#039;Light Blue&#039;,&lt;br /&gt;
	&#039;Blue&#039;,&lt;br /&gt;
	&#039;Purple&#039;,&lt;br /&gt;
	&#039;Magenta&#039;,&lt;br /&gt;
	&#039;Pink&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Firework Stars --&lt;br /&gt;
local fireworkStar = {}&lt;br /&gt;
for _, color in ipairs( colors ) do&lt;br /&gt;
	local name = color .. &#039; Firework Star&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;Firework Star&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color }&lt;br /&gt;
	table.insert( fireworkStar, aliases[name] )&lt;br /&gt;
	for _, pattern in ipairs( patterns ) do&lt;br /&gt;
		name = color .. &#039; &#039; .. pattern .. &#039; Banner&#039;&lt;br /&gt;
		aliases[name] = { title = &#039;Banner&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color .. &#039; &#039; .. pattern }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Any Firework Star&#039;] = fireworkStar&lt;br /&gt;
aliases[&#039;Matching Firework Star&#039;] = fireworkStar&lt;br /&gt;
&lt;br /&gt;
-- Items that use the sixteen colors --&lt;br /&gt;
local coloredItems = {&lt;br /&gt;
	withWhite = {&lt;br /&gt;
		&#039;Balloon&#039;,&lt;br /&gt;
		&#039;Banner&#039;,&lt;br /&gt;
		&#039;Bed&#039;,&lt;br /&gt;
		&#039;Carpet&#039;,&lt;br /&gt;
		&#039;Concrete&#039;,&lt;br /&gt;
		&#039;Concrete Powder&#039;,&lt;br /&gt;
		&#039;Glazed Terracotta&#039;,&lt;br /&gt;
		&#039;Glow Stick&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Shield&#039;,&lt;br /&gt;
		&#039;Shulker Box&#039;,&lt;br /&gt;
		&#039;Stained Glass&#039;,&lt;br /&gt;
		&#039;Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Wool&#039;,&lt;br /&gt;
&lt;br /&gt;
		&#039;$Dyed Bundle&#039;,&lt;br /&gt;
		&#039;$Dyed Candle&#039;,&lt;br /&gt;
		&#039;$Dyed Terracotta&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	noWhite = {&lt;br /&gt;
		&#039;$Dyed Wool&#039;,&lt;br /&gt;
		&#039;$Dyed Bed&#039;,&lt;br /&gt;
		&#039;$Dyed Carpet&#039;,&lt;br /&gt;
		&#039;$Colored Dye&#039;,&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local coloredBadItems = {&lt;br /&gt;
	[&#039;Light Gray Glow Stick&#039;] = 1,&lt;br /&gt;
	[&#039;Black Glow Stick&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for type, items in pairs( coloredItems ) do&lt;br /&gt;
	for _, item in ipairs( items ) do&lt;br /&gt;
		local coloredItemAliases = {}&lt;br /&gt;
		local defaultItemAliases&lt;br /&gt;
&lt;br /&gt;
		if item:find( &#039;%$[^1]&#039; ) then&lt;br /&gt;
			defaultItemAliases = {}&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type == &#039;noWhite&#039; then&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+&#039;, &#039;White&#039; )&lt;br /&gt;
			else&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			end&lt;br /&gt;
			table.insert( defaultItemAliases, itemName )&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		for _, color in ipairs( colors ) do&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type ~= &#039;noWhite&#039; or color ~= &#039;White&#039; then&lt;br /&gt;
				if item:find( &#039;%$1&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$1&#039;, color )&lt;br /&gt;
				elseif item:find( &#039;%$&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$%w+&#039;, color )&lt;br /&gt;
				else&lt;br /&gt;
					itemName = color .. &#039; &#039; .. item&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			if not coloredBadItems[itemName] then&lt;br /&gt;
				if defaultItemAliases then&lt;br /&gt;
					table.insert( defaultItemAliases, itemName )&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				table.insert( coloredItemAliases, itemName )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if defaultItemAliases then&lt;br /&gt;
			local defaultItem = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			aliases[&#039;Any &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
			aliases[&#039;Matching &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
		end&lt;br /&gt;
		item = item:gsub( &#039;%$1 &#039;, &#039;&#039; )&lt;br /&gt;
		item = item:gsub( &#039;%$&#039;, &#039;&#039; )&lt;br /&gt;
		aliases[&#039;Any &#039; .. item] = coloredItemAliases&lt;br /&gt;
		aliases[&#039;Matching &#039; .. item] = coloredItemAliases&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
-- list of all potions with no effects&lt;br /&gt;
local noEffects = {&lt;br /&gt;
	&#039;Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Potion&#039;,&lt;br /&gt;
	&#039;Thick Potion&#039;,&lt;br /&gt;
	&#039;Mundane Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Potion&#039;,&lt;br /&gt;
	&#039;Splash Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Splash Potion&#039;,&lt;br /&gt;
	&#039;Thick Splash Potion&#039;,&lt;br /&gt;
	&#039;Mundane Splash Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Splash Potion&#039;,&lt;br /&gt;
	&#039;Lingering Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Lingering Potion&#039;,&lt;br /&gt;
	&#039;Thick Lingering Potion&#039;,&lt;br /&gt;
	&#039;Mundane Lingering Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Lingering Potion&#039;,&lt;br /&gt;
	&#039;Tipped Arrow&#039;,&lt;br /&gt;
	&#039;Arrow of Splashing&#039;,&lt;br /&gt;
	&#039;Uncraftable Tipped Arrow&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs(noEffects) do&lt;br /&gt;
	aliases[name] = { name = name, text = &#039;&amp;amp;7No Effects&#039; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- start these lists with the no effect items as names are not normal&lt;br /&gt;
local potionItems = {&lt;br /&gt;
	[&#039;Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Splash Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Splash Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Splash Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Lingering Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Lingering Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Lingering Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Tipped Arrow&#039;] = {&lt;br /&gt;
		aliases[&#039;Arrow of Splashing&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Potions --&lt;br /&gt;
local effects = {&lt;br /&gt;
	-- durations are in the order normal, extended, enhanced&lt;br /&gt;
	{name = &#039;Regeneration&#039;, effect = &#039;&amp;amp;9Regeneration&#039;, enhanced = &#039;II&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:22&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Swiftness&#039;, effect = &#039;&amp;amp;9Speed&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Fire Resistance&#039;, effect = &#039;&amp;amp;9Fire Resistance&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Poison&#039;, effect = &#039;&amp;amp;cPoison&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:21&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Healing&#039;, effect = &#039;&amp;amp;9Instant Health&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Night Vision&#039;,    effect = &#039;&amp;amp;9Night Vision&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Weakness&#039;,        effect = &#039;&amp;amp;cWeakness&#039;,        durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Strength&#039;, effect = &#039;&amp;amp;9Strength&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039;}, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Slowness&#039;, effect = &#039;&amp;amp;cSlowness&#039;, enhanced = &#039;IV&#039;, &lt;br /&gt;
		durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039;, &#039;0:20&#039;}, lingering = {&#039;0:22&#039;, &#039;1:00&#039;, &#039;0:05&#039;}, arrow = { &#039;0:11&#039;, &#039;0:30&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Leaping&#039;, effect = &#039;&amp;amp;9Jump Boost&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Harming&#039;, effect = &#039;&amp;amp;cInstant Damage&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Water Breathing&#039;, effect = &#039;&amp;amp;9Water Breathing&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Invisibility&#039;,    effect = &#039;&amp;amp;9Invisibility&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Slow Falling&#039;,    effect = &#039;&amp;amp;9Slow Falling&#039;,    durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Luck&#039;,  effect = &#039;&amp;amp;9Luck&#039;,   durations = { normal = { &#039;5:00&#039; }, lingering = { &#039;1:15&#039; }, arrow = { &#039;0:37&#039; }}},&lt;br /&gt;
	{ name = &#039;Decay&#039;, effect = &#039;&amp;amp;cWither II&#039;, durations = { normal = { &#039;0:40&#039; }, lingering = { &#039;0:10&#039; }, arrow = { &#039;0:05&#039; }}},&lt;br /&gt;
	{ name = &#039;the Turtle Master&#039;, text = &#039;&amp;amp;cSlowness IV ($1)/&amp;amp;9Resistance III ($1)&#039;, enhanced = &#039;&amp;amp;cSlowness VI ($1)/&amp;amp;9Resistance IV ($1)&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:20&#039;, &#039;0:40&#039;, &#039;0:20&#039; }, lingering = { &#039;0:15&#039;, &#039;0:45&#039;, &#039;0:15&#039; }, arrow = {  &#039;0:07&#039;, &#039;0:22&#039;, &#039;0:07&#039; }}},&lt;br /&gt;
	{ name = &#039;Oozing&#039;,  effect = &#039;&amp;amp;cOozing&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Infestation&#039;,  effect = &#039;&amp;amp;cInfested&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Weaving&#039;,  effect = &#039;&amp;amp;cWeaving&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Wind Charging&#039;,  effect = &#039;&amp;amp;cWind Charged&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}}&lt;br /&gt;
}&lt;br /&gt;
local types = {&lt;br /&gt;
	{name = &#039;Potion&#039;,           durations = &#039;normal&#039;,    text = &#039;Potion of &#039;},&lt;br /&gt;
	{name = &#039;Splash Potion&#039;,    durations = &#039;normal&#039;,    text = &#039;Splash Potion of &#039;},&lt;br /&gt;
	{name = &#039;Lingering Potion&#039;, durations = &#039;lingering&#039;, text = &#039;Lingering Potion of &#039;},&lt;br /&gt;
	{name = &#039;Tipped Arrow&#039;,     durations = &#039;arrow&#039;,     text = &#039;Arrow of &#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, effect in ipairs(effects) do&lt;br /&gt;
	for _, type in ipairs(types) do&lt;br /&gt;
		-- form name, it will be reused&lt;br /&gt;
		local name =  type.text .. effect.name&lt;br /&gt;
		local potionName = {}&lt;br /&gt;
		if type.name == &#039;Tipped Arrow&#039; then&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		else&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- if we have durations, add times&lt;br /&gt;
		if effect.durations then&lt;br /&gt;
			local durations = effect.durations[type.durations]&lt;br /&gt;
			&lt;br /&gt;
			-- turtle master is weird, so just do a fancy string replacement&lt;br /&gt;
			if effect.text then&lt;br /&gt;
				aliases[name] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[1] ) }&lt;br /&gt;
				aliases[name .. &#039; Extended&#039;] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
				aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.enhanced:gsub( &#039;%$1&#039;, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
			else&lt;br /&gt;
				-- we always have normal&lt;br /&gt;
				aliases[name] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[1] ) }&lt;br /&gt;
			&lt;br /&gt;
				-- ensure we have extended&lt;br /&gt;
				if durations[2] then&lt;br /&gt;
					aliases[name .. &#039; Extended&#039;] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
					&lt;br /&gt;
					-- and enhanced&lt;br /&gt;
					if effect.enhanced then&lt;br /&gt;
						aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = string.format( &#039;%s %s (%s)&#039;, effect.effect, effect.enhanced, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- otherwise its just effect, currently every potion with no duration can be enhanced&lt;br /&gt;
			aliases[name] = { name = potionName, text = effect.effect}&lt;br /&gt;
			aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.effect .. &#039; &#039; .. effect.enhanced .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- add the base potion to the any list&lt;br /&gt;
		table.insert(potionItems[type.name], aliases[name])&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- build the any lists&lt;br /&gt;
for item, potionAliases in pairs( potionItems ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. item] = potionAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = potionAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Wood --&lt;br /&gt;
local woodTypes = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Oak&#039;,&lt;br /&gt;
	    &#039;Spruce&#039;,&lt;br /&gt;
	    &#039;Birch&#039;,&lt;br /&gt;
	    &#039;Jungle&#039;,&lt;br /&gt;
	    &#039;Acacia&#039;,&lt;br /&gt;
        &#039;Dark Oak&#039;,&lt;br /&gt;
        &#039;Mangrove&#039;,&lt;br /&gt;
        &#039;Cherry&#039;,&lt;br /&gt;
        &#039;Pale Oak&#039;,&lt;br /&gt;
        &#039;Bamboo&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Crimson&#039;,&lt;br /&gt;
        &#039;Warped&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {},&lt;br /&gt;
}&lt;br /&gt;
local woodTypeWorld = {}&lt;br /&gt;
for _, world in ipairs({&#039;overworld&#039;, &#039;nether&#039;}) do&lt;br /&gt;
	local woods = woodTypes[world]&lt;br /&gt;
	for _, type in ipairs(woods) do&lt;br /&gt;
		woodTypeWorld[type] = world&lt;br /&gt;
        table.insert(woodTypes.both, type)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
local woodItems = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Log&#039;,&lt;br /&gt;
        &#039;Wood&#039;,&lt;br /&gt;
        &#039;Stripped $1 Log&#039;,&lt;br /&gt;
        &#039;Stripped $1 Wood&#039;,&lt;br /&gt;
        &#039;Boat&#039;,&lt;br /&gt;
        &#039;Boat with Chest&#039;,&lt;br /&gt;
        &#039;Sapling&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Stem&#039;,&lt;br /&gt;
        &#039;Hyphae&#039;,&lt;br /&gt;
        &#039;Stripped $1 Stem&#039;,&lt;br /&gt;
        &#039;Stripped $1 Hyphae&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {&lt;br /&gt;
		-- Any/Matching X or Y&lt;br /&gt;
        &#039;${Log,Stem}&#039;,&lt;br /&gt;
        &#039;${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Log,Stem}&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Dimensional prefixes&lt;br /&gt;
        &#039;$world Planks&#039;,&lt;br /&gt;
        &#039;$world $wood Stairs&#039;,&lt;br /&gt;
        &#039;$world $wood Slab&#039;,&lt;br /&gt;
        &#039;$world $wood Fence&#039;,&lt;br /&gt;
        &#039;$world $wood Fence Gate&#039;,&lt;br /&gt;
        &#039;$world $wood Door&#039;,&lt;br /&gt;
        &#039;$world $wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$world $wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$world $wood Button&#039;,&lt;br /&gt;
        &#039;$world $wood Sign&#039;,&lt;br /&gt;
        &#039;$world $wood Hanging Sign&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Both dimensions&lt;br /&gt;
		-- Items with non-wood variants include $wood&lt;br /&gt;
        &#039;Planks&#039;,&lt;br /&gt;
        &#039;$wood Stairs&#039;,&lt;br /&gt;
        &#039;$wood Slab&#039;,&lt;br /&gt;
        &#039;$wood Fence&#039;,&lt;br /&gt;
        &#039;Fence Gate&#039;,&lt;br /&gt;
        &#039;$wood Door&#039;,&lt;br /&gt;
        &#039;$wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$wood Button&#039;,&lt;br /&gt;
        &#039;Sign&#039;,&lt;br /&gt;
        &#039;Hanging Sign&#039;,&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
local woodItemWorld = {}&lt;br /&gt;
for world, items in pairs(woodItems) do&lt;br /&gt;
    for _, item in ipairs(items) do&lt;br /&gt;
		-- expand $world (should only happen in &amp;quot;both&amp;quot;)&lt;br /&gt;
        if (item:find(&#039;%$world&#039;)) and world == &#039;both&#039; then&lt;br /&gt;
            item = item:gsub(&#039;%$world &#039;, &#039;&#039;)&lt;br /&gt;
            woodItemWorld[&#039;Overworld &#039; .. item] = &#039;overworld&#039;&lt;br /&gt;
			woodItemWorld[&#039;Nether &#039; .. item] = &#039;nether&#039;&lt;br /&gt;
		else&lt;br /&gt;
			woodItemWorld[item] = world&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local woodBadItems = {&lt;br /&gt;
	[&#039;Bamboo Sapling&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Log&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Log&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local woodNameMapping = {&lt;br /&gt;
	[&#039;Mangrove Sapling&#039;] = &#039;Mangrove Propagule&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat&#039;] = &#039;Bamboo Raft&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat with Chest&#039;] = &#039;Bamboo Raft with Chest&#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for item, world in pairs(woodItemWorld) do&lt;br /&gt;
	local itemName = &#039;&#039;&lt;br /&gt;
	local woodAliases = {}&lt;br /&gt;
&lt;br /&gt;
	-- real &amp;quot;linkable&amp;quot; name&lt;br /&gt;
    local realItem = item:gsub(&#039;^Overworld &#039;, &#039;&#039;)&lt;br /&gt;
    realItem = realItem:gsub(&#039;^Nether &#039;, &#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
	for _, wood in ipairs(woodTypes[world]) do&lt;br /&gt;
		-- Parse ${,} (world-select) syntax&lt;br /&gt;
		local selector = (woodTypeWorld[wood] == &#039;overworld&#039;) and &amp;quot;%1&amp;quot; or &amp;quot;%2&amp;quot;&lt;br /&gt;
		itemName = realItem:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, selector)&lt;br /&gt;
&lt;br /&gt;
		if itemName:find(&#039;%$wood&#039;) then&lt;br /&gt;
			itemName = itemName:gsub(&#039;%$wood&#039;, wood)&lt;br /&gt;
		elseif itemName:find(&#039;%$1&#039;) then&lt;br /&gt;
			itemName = itemName:gsub( &#039;%$1&#039;, wood)&lt;br /&gt;
		else&lt;br /&gt;
			itemName = wood .. &#039; &#039; .. itemName&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- special handling&lt;br /&gt;
		if woodNameMapping[itemName] then&lt;br /&gt;
			itemName = woodNameMapping[itemName]&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if not woodBadItems[itemName] then&lt;br /&gt;
			table.insert(woodAliases, itemName)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Parse ${,} (world-select) syntax&lt;br /&gt;
	item = item:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, &amp;quot;%1 or %2&amp;quot;)&lt;br /&gt;
    item = item:gsub(&#039;%$wood&#039;, &#039;Wooden&#039;)&lt;br /&gt;
    item = item:gsub(&#039;%$1 &#039;, &#039;&#039;)&lt;br /&gt;
    aliases[&#039;Any &#039; .. item] = woodAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = woodAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Bedrock Edition Items --&lt;br /&gt;
local editionItems = {&lt;br /&gt;
	BE = {&lt;br /&gt;
		&#039;Acacia Fence Gate&#039;,&lt;br /&gt;
		&#039;Andesite Wall&#039;,&lt;br /&gt;
		&#039;Birch Fence Gate&#039;,&lt;br /&gt;
		&#039;Black Bed&#039;,&lt;br /&gt;
		&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Blue Bed&#039;,&lt;br /&gt;
		&#039;Blue Ice&#039;,&lt;br /&gt;
		&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bow&#039;,&lt;br /&gt;
		&#039;Brick Wall&#039;,&lt;br /&gt;
		&#039;Brown Bed&#039;,&lt;br /&gt;
		&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bucket of Pufferfish&#039;,&lt;br /&gt;
		&#039;Bucket of Tropical Fish&#039;,&lt;br /&gt;
		&#039;Cat Spawn Egg&#039;,&lt;br /&gt;
		&#039;Chest&#039;,&lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Crimson Fence Gate&#039;,&lt;br /&gt;
		&#039;Crying Obsidian&#039;,&lt;br /&gt;
		&#039;Cyan Bed&#039;,&lt;br /&gt;
		&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Dark Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Deepslate Brick Wall&#039;,&lt;br /&gt;
		&#039;Deepslate Tile Wall&#039;,&lt;br /&gt;
		&#039;Desert Village Map&#039;,&lt;br /&gt;
		&#039;Diorite Wall&#039;,&lt;br /&gt;
		&#039;Enchanting Table&#039;,&lt;br /&gt;
		&#039;End Gateway&#039;,&lt;br /&gt;
		&#039;End Portal Frame&#039;,&lt;br /&gt;
		&#039;End Portal&#039;,&lt;br /&gt;
		&#039;End Rod&#039;,&lt;br /&gt;
		&#039;End Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Ender Chest&#039;,&lt;br /&gt;
		&#039;Glass Pane&#039;,&lt;br /&gt;
		&#039;Glowstone&#039;,&lt;br /&gt;
		&#039;Granite Wall&#039;,&lt;br /&gt;
		&#039;Gray Bed&#039;,&lt;br /&gt;
		&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Green Bed&#039;,&lt;br /&gt;
		&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Honey Block&#039;,&lt;br /&gt;
		&#039;Horn Coral Block&#039;,&lt;br /&gt;
		&#039;Iron Bars&#039;,&lt;br /&gt;
		&#039;Jack o\&#039;Lantern&#039;,&lt;br /&gt;
		&#039;Jungle Explorer Map&#039;,&lt;br /&gt;
		&#039;Jungle Fence Gate&#039;,&lt;br /&gt;
		&#039;Jungle Leaves&#039;,&lt;br /&gt;
		&#039;Lava&#039;,&lt;br /&gt;
		&#039;Leather Horse Armor&#039;,&lt;br /&gt;
		&#039;Light&#039;,&lt;br /&gt;
		&#039;Light Blue Bed&#039;,&lt;br /&gt;
		&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Light Gray Bed&#039;,&lt;br /&gt;
		&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Lime Bed&#039;,&lt;br /&gt;
		&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
        &#039;Lodestone Compass&#039;,&lt;br /&gt;
        &#039;Magenta Bed&#039;,&lt;br /&gt;
		&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Magma Block&#039;,&lt;br /&gt;
		&#039;Map&#039;,&lt;br /&gt;
		&#039;Minecart with Command Block&#039;,&lt;br /&gt;
		&#039;Monster Spawner&#039;,&lt;br /&gt;
		&#039;Mossy Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Mossy Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Mud Brick Wall&#039;,&lt;br /&gt;
		&#039;Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Observer&#039;,&lt;br /&gt;
		&#039;Ocean Explorer Map&#039;,&lt;br /&gt;
		&#039;Ochre Froglight&#039;,&lt;br /&gt;
		&#039;Orange Bed&#039;,&lt;br /&gt;
		&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Panda Spawn Egg&#039;,&lt;br /&gt;
		&#039;Pearlescent Froglight&#039;,&lt;br /&gt;
		&#039;Pink Bed&#039;,&lt;br /&gt;
		&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Plains Village Map&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Brick Wall&#039;,&lt;br /&gt;
		&#039;Polished Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Polished Tuff Wall&#039;,&lt;br /&gt;
		&#039;Prismarine Wall&#039;,&lt;br /&gt;
		&#039;Purple Bed&#039;,&lt;br /&gt;
		&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Red Bed&#039;,&lt;br /&gt;
		&#039;Red Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Red Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Resin Brick Wall&#039;,&lt;br /&gt;
		&#039;Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Savanna Village Map&#039;,&lt;br /&gt;
		&#039;Scaffolding&#039;,&lt;br /&gt;
		&#039;Sea Lantern&#039;,&lt;br /&gt;
		&#039;Shroomlight&#039;,&lt;br /&gt;
		&#039;Snowy Village Map&#039;,&lt;br /&gt;
		&#039;Spruce Fence Gate&#039;,&lt;br /&gt;
		&#039;Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Stonecutter&#039;,&lt;br /&gt;
		&#039;Structure Void&#039;,&lt;br /&gt;
		&#039;Swamp Explorer Map&#039;,&lt;br /&gt;
		&#039;Taiga Village Map&#039;,&lt;br /&gt;
		&#039;Trapped Chest&#039;,&lt;br /&gt;
		&#039;Trial Explorer Map&#039;,&lt;br /&gt;
		&#039;Tuff Wall&#039;,&lt;br /&gt;
		&#039;Tuff Brick Wall&#039;,&lt;br /&gt;
		&#039;Verdant Froglight&#039;,&lt;br /&gt;
		&#039;Wandering Trader Spawn Egg&#039;,&lt;br /&gt;
		&#039;Warped Fence Gate&#039;,&lt;br /&gt;
		&#039;White Bed&#039;,&lt;br /&gt;
		&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Woodland Explorer Map&#039;,&lt;br /&gt;
		&#039;Yellow Bed&#039;,&lt;br /&gt;
		&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	LCE = {&lt;br /&gt;
		&#039;Shrub&#039;&lt;br /&gt;
	},&lt;br /&gt;
	    SM = {&lt;br /&gt;
    	&#039;Compass&#039;,&lt;br /&gt;
    	&#039;Diamond Axe&#039;,&lt;br /&gt;
    	&#039;Diamond Hoe&#039;,&lt;br /&gt;
    	&#039;Diamond Pickaxe&#039;,&lt;br /&gt;
    	&#039;Diamond Shovel&#039;,&lt;br /&gt;
    	&#039;Diamond Sword&#039;,&lt;br /&gt;
    	&#039;Flint and Steel&#039;,&lt;br /&gt;
    	&#039;Potion of Invisibility&#039;,&lt;br /&gt;
    	&#039;Potion of Leaping&#039;,&lt;br /&gt;
    	&#039;Potion of Swiftness&#039;,&lt;br /&gt;
    	&#039;TNT&#039;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
for edition, items in pairs(editionItems) do&lt;br /&gt;
	for _, item in ipairs(items) do&lt;br /&gt;
		local name = item .. &#039; &#039; .. edition&lt;br /&gt;
		aliases[name] = { title = item, name = name }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Light blocks --&lt;br /&gt;
for level = 0, 15 do&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level] = { title = &amp;quot;&amp;amp;dLight&amp;quot;, name = &amp;quot;Light &amp;quot; .. level }&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot;] = { title = &amp;quot;Light&amp;quot;, name = &amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Pottery Sherds --&lt;br /&gt;
local pottery_sherds = { &lt;br /&gt;
	{ &#039;Angler&#039; },&lt;br /&gt;
	{ &#039;Arms Up&#039; },&lt;br /&gt;
	{ &#039;Archer&#039; },&lt;br /&gt;
	{ &#039;Blade&#039; },&lt;br /&gt;
	{ &#039;Brewer&#039; },&lt;br /&gt;
	{ &#039;Burn&#039; },&lt;br /&gt;
	{ &#039;Danger&#039; },&lt;br /&gt;
	{ &#039;Explorer&#039; },&lt;br /&gt;
	{ &#039;Flow&#039; },&lt;br /&gt;
	{ &#039;Friend&#039; },&lt;br /&gt;
	{ &#039;Guster&#039; },&lt;br /&gt;
	{ &#039;Heart&#039; },&lt;br /&gt;
	{ &#039;Heartbreak&#039; },&lt;br /&gt;
	{ &#039;Howl&#039; },&lt;br /&gt;
	{ &#039;Miner&#039; },&lt;br /&gt;
	{ &#039;Mourner&#039; },&lt;br /&gt;
	{ &#039;Plenty&#039; },&lt;br /&gt;
	{ &#039;Prize&#039; },&lt;br /&gt;
	{ &#039;Scrape&#039; },&lt;br /&gt;
	{ &#039;Sheaf&#039; },&lt;br /&gt;
	{ &#039;Shelter&#039; },&lt;br /&gt;
	{ &#039;Skull&#039; },&lt;br /&gt;
	{ &#039;Snort&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local potterySherdAliases = {}&lt;br /&gt;
for _, pottery_sherd in ipairs(pottery_sherds) do&lt;br /&gt;
	local name = pottery_sherd[1] .. &#039; Pottery Sherd&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039; .. name , name = name }&lt;br /&gt;
	table.insert(potterySherdAliases, aliases[name])&lt;br /&gt;
end&lt;br /&gt;
table.insert(potterySherdAliases, &#039;Brick&#039;)&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Pottery Sherd&#039;] = potterySherdAliases&lt;br /&gt;
&lt;br /&gt;
-- Smithing Templates --&lt;br /&gt;
local smithing_templates = {&lt;br /&gt;
	{ &#039;Netherite Upgrade&#039;,    &#039;Diamond Equipment&#039;, &#039;Netherite Ingot&#039;,  &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Bolt Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Coast Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Dune Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Eye Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Flow Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Host Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Raiser Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Rib Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Sentry Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Shaper Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Silence Armor Trim&#039;,   &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;d&#039; },&lt;br /&gt;
	{ &#039;Snout Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Spire Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Tide Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Vex Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Ward Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Wayfinder Armor Trim&#039;, &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wild Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
local smithing_template_array = {}&lt;br /&gt;
local armor_trims_array = {}&lt;br /&gt;
for _,smithing_template in pairs(smithing_templates) do&lt;br /&gt;
    local rarityColor = smithing_template[4]&lt;br /&gt;
	local current_alias = {&lt;br /&gt;
		title = rarityColor .. smithing_template[1],&lt;br /&gt;
		name = smithing_template[1] .. &#039; Smithing Template&#039;,&lt;br /&gt;
		text = &#039;&amp;amp;7&#039; .. &#039;Smithing Template&#039; .. &#039;//Applies to:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[2] .. &#039;/&amp;amp;7Ingredients:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[3],&lt;br /&gt;
	}&lt;br /&gt;
	aliases[smithing_template[1]] = current_alias&lt;br /&gt;
	aliases[smithing_template[1] .. &#039; Smithing Template&#039;] = current_alias&lt;br /&gt;
	table.insert(smithing_template_array,current_alias)&lt;br /&gt;
	if string.find(smithing_template[1],&#039; Armor Trim$&#039;) then&lt;br /&gt;
		table.insert(armor_trims_array,current_alias)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Matching Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Any Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return aliases&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
	<entry>
		<id>https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12252</id>
		<title>Module:Inventory slot/Aliases</title>
		<link rel="alternate" type="text/html" href="https://wiki.horizonsend.net/index.php?title=Module:Inventory_slot/Aliases&amp;diff=12252"/>
		<updated>2026-08-27T21:21:01Z</updated>

		<summary type="html">&lt;p&gt;Gutin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local aliases = {&lt;br /&gt;
	-- Common fuel types for furnace --&lt;br /&gt;
	[&#039;Any fuel&#039;] = { &#039;Coal&#039;, &#039;Charcoal&#039;, { title = &#039;Log&#039;, name = &#039;Oak Log&#039; }, { title = &#039;Overworld Planks&#039;, name = &#039;Oak Planks&#039; }, &#039;Lava Bucket&#039;, &#039;Block of Coal&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- All armor --&lt;br /&gt;
	[&#039;Any leather armor&#039;] = { &#039;Leather Cap&#039;, &#039;Leather Tunic&#039;, &#039;Leather Pants&#039;, &#039;Leather Boots&#039; },&lt;br /&gt;
	[&#039;Any golden armor&#039;] = { &#039;Golden Helmet&#039;, &#039;Golden Chestplate&#039;, &#039;Golden Leggings&#039;, &#039;Golden Boots&#039; },&lt;br /&gt;
	[&#039;Any chainmail armor&#039;] = { &#039;Chainmail Helmet&#039;, &#039;Chainmail Chestplate&#039;, &#039;Chainmail Leggings&#039;, &#039;Chainmail Boots&#039; },&lt;br /&gt;
	[&#039;Any iron armor&#039;] = { &#039;Iron Helmet&#039;, &#039;Iron Chestplate&#039;, &#039;Iron Leggings&#039;, &#039;Iron Boots&#039; },&lt;br /&gt;
	[&#039;Any diamond armor&#039;] = { &#039;Diamond Helmet&#039;, &#039;Diamond Chestplate&#039;, &#039;Diamond Leggings&#039;, &#039;Diamond Boots&#039; },&lt;br /&gt;
	[&#039;Any netherite armor&#039;] = { &#039;Netherite Helmet&#039;, &#039;Netherite Chestplate&#039;, &#039;Netherite Leggings&#039;, &#039;Netherite Boots&#039; },&lt;br /&gt;
&lt;br /&gt;
    -- Stones --&lt;br /&gt;
	[&#039;Any Cobblestone or Blackstone&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039; },&lt;br /&gt;
	[&#039;Any stone-tier block&#039;] = { &#039;Cobblestone&#039;, &#039;Blackstone&#039;, &#039;Cobbled Deepslate&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Miscellaeous collections --&lt;br /&gt;
	[&#039;Any leaves&#039;] = { &#039;Oak Leaves&#039;, &#039;Spruce Leaves&#039;, &#039;Birch Leaves&#039;, &#039;Acacia Leaves&#039;, &#039;Jungle Leaves&#039;, &#039;Dark Oak Leaves&#039;, &#039;Mangrove Leaves&#039;, &#039;Cherry Leaves&#039;, &#039;Pale Oak Leaves&#039;, &#039;Azalea Leaves&#039;, &#039;Flowering Azalea Leaves&#039; };&lt;br /&gt;
	[&#039;Any egg&#039;] = { &#039;Egg&#039;, &#039;Blue Egg&#039;, &#039;Brown Egg&#039;};&lt;br /&gt;
	[&#039;Any stairs&#039;] = { &#039;Tuff Stairs&#039;, &#039;Polished Tuff Stairs&#039;, &#039;Tuff Brick Stairs&#039;, &#039;Cut Copper Stairs&#039;, &#039;Exposed Cut Copper Stairs&#039;, &#039;Weathered Cut Copper Stairs&#039;, &#039;Oxidized Cut Copper Stairs&#039;, &#039;Waxed Cut Copper Stairs&#039;, &#039;Waxed Exposed Cut Copper Stairs&#039;, &#039;Waxed Weathered Cut Copper Stairs&#039;, &#039;Waxed Oxidized Cut Copper Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Resin Brick Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Nether Brick Stairs&#039;, &#039;Sandstone Stairs&#039;, &#039;Oak Stairs&#039;, &#039;Spruce Stairs&#039;, &#039;Birch Stairs&#039;, &#039;Jungle Stairs&#039;, &#039;Acacia Stairs&#039;, &#039;Cherry Stairs&#039;, &#039;Dark Oak Stairs&#039;, &#039;Pale Oak Stairs&#039;, &#039;Mangrove Stairs&#039;, &#039;Bamboo Stairs&#039;, &#039;Bamboo Mosaic Stairs&#039;, &#039;Crimson Stairs&#039;, &#039;Warped Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Stone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Smooth Quartz Stairs&#039;, &#039;Granite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039; },&lt;br /&gt;
	&lt;br /&gt;
    [&#039;Any inventory&#039;] = { &#039;Chest&#039;, &#039;Trapped Chest&#039;, &#039;Barrel&#039;, &#039;Furnace&#039;, &#039;Smoker&#039;, &#039;Dispenser&#039;, &#039;Dropper&#039;, &#039;Decorated Pot&#039; },&lt;br /&gt;
    --Glass--&lt;br /&gt;
[&#039;Any Glass Pane&#039;] = {&lt;br /&gt;
	&#039;Glass Pane&#039;,&lt;br /&gt;
	&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
},&lt;br /&gt;
[&#039;Any Glass&#039;] = {&lt;br /&gt;
	&#039;Glass&#039;,&lt;br /&gt;
	&#039;White Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Gray Stained Glass&#039;,&lt;br /&gt;
	&#039;Black Stained Glass&#039;,&lt;br /&gt;
	&#039;Brown Stained Glass&#039;,&lt;br /&gt;
	&#039;Red Stained Glass&#039;,&lt;br /&gt;
	&#039;Orange Stained Glass&#039;,&lt;br /&gt;
	&#039;Yellow Stained Glass&#039;,&lt;br /&gt;
	&#039;Lime Stained Glass&#039;,&lt;br /&gt;
	&#039;Green Stained Glass&#039;,&lt;br /&gt;
	&#039;Cyan Stained Glass&#039;,&lt;br /&gt;
	&#039;Light Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Blue Stained Glass&#039;,&lt;br /&gt;
	&#039;Purple Stained Glass&#039;,&lt;br /&gt;
	&#039;Magenta Stained Glass&#039;,&lt;br /&gt;
	&#039;Pink Stained Glass&#039;,&lt;br /&gt;
},&lt;br /&gt;
    -- Misc HE--&lt;br /&gt;
    [&#039;Any Thruster Block&#039;]={&#039;Sea Lantern&#039;, &#039;Glowstone&#039;, &#039;Shroomlight&#039;, &#039;Ochre Froglight&#039;, &#039;Verdant Froglight&#039;, &#039;Pearlescent Froglight&#039;, &#039;Redstone Lamp&#039;},&lt;br /&gt;
	-- Display names --&lt;br /&gt;
	[&#039;Broken Elytra&#039;] = { title = &#039;&amp;amp;dElytra&#039;, name = &#039;Broken Elytra&#039; },&lt;br /&gt;
	[&#039;Button&#039;] = { title = &#039;Button&#039;, name = &#039;Stone Button&#039;},&lt;br /&gt;
	[&#039;Wooden Button&#039;] = { title = &#039;Button&#039;, name = &#039;Oak Button&#039;},&lt;br /&gt;
	[&#039;Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Arrow Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Arrow Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Damaged Firework Loaded Crossbow&#039;] = { title = &#039;Crossbow&#039;, name = &#039;Damaged Firework Loaded Crossbow&#039; },&lt;br /&gt;
	[&#039;Ominous Banner&#039;] = { title = &#039;&amp;amp;6&amp;amp;oOminous Banner&#039;, name = &#039;Ominous Banner&#039;, text = &lt;br /&gt;
		&#039;&amp;amp;7Cyan Lozenge/&amp;amp;7Light Gray Base/&amp;amp;7Gray Pale/&amp;amp;7Light Gray Bordure/&amp;amp;7Black Fess/&amp;amp;7Light Gray Per Fess&#039;},&lt;br /&gt;
    [&#039;Power Drill Basic&#039;] = { title = &#039;&amp;amp;#F2AE67Basic &amp;amp;6Power &amp;amp;7Drill&#039;, name = &#039;Power Drill Basic&#039; },&lt;br /&gt;
	[&#039;Half Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Half Filled Bundle&#039; },&lt;br /&gt;
	[&#039;Filled Bundle&#039;] = { title = &#039;Bundle&#039;, name = &#039;Filled Bundle&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Empty display name --&lt;br /&gt;
	[&#039;debug_fourj_item&#039;] = { title = &#039;\226\128\140&#039;, name = &#039;debug_fourj_item&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Equipment with custom rarity --&lt;br /&gt;
	[&#039;Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Trident&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Damaged Trident&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;29 Attack Damage/&amp;amp;#160;&amp;amp;21.1 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Trident BE&#039;] = { title = &#039;&amp;amp;bTrident&#039;, name = &#039;Trident&#039;, text = &#039;/&amp;amp;9 +8 Attack Damage&#039;},&lt;br /&gt;
	[&#039;Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Damaged Mace&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Damaged Mace&#039;, text = &#039;/&amp;amp;7 When in Main Hand:/&amp;amp;#160;&amp;amp;26 Attack Damage/&amp;amp;#160;&amp;amp;20.6 Attack Speed&#039;},&lt;br /&gt;
	[&#039;Mace BE&#039;] = { title = &#039;&amp;amp;dMace&#039;, name = &#039;Mace&#039;, text = &#039;/&amp;amp;9 +5 Attack Damage&#039;},&lt;br /&gt;
	[&amp;quot;Damaged Elytra&amp;quot;] = { title = &amp;quot;&amp;amp;dElytra&amp;quot;, name = &amp;quot;Damaged Elytra&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Boots&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Boots&amp;quot;, name = &amp;quot;Damaged Chainmail Boots&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Chestplate&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Chestplate&amp;quot;, name = &amp;quot;Damaged Chainmail Chestplate&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Helmet&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Helmet&amp;quot;, name = &amp;quot;Damaged Chainmail Helmet&amp;quot; },&lt;br /&gt;
	[&amp;quot;Damaged Chainmail Leggings&amp;quot;] = { title = &amp;quot;&amp;amp;eChainmail Leggings&amp;quot;, name = &amp;quot;Damaged Chainmail Leggings&amp;quot; },&lt;br /&gt;
	&lt;br /&gt;
	-- Ominous Bottles --&lt;br /&gt;
    [&#039;Ominous Bottle&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle II&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen II (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle III&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen III (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle IV&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen IV (01:40:00)&#039; },&lt;br /&gt;
    [&#039;Ominous Bottle V&#039;] = { title = &#039;&amp;amp;eOminous Bottle&#039;, name = &#039;Ominous Bottle&#039;, text = &#039;&amp;amp;9Bad Omen V (01:40:00)&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Bedrock and Education Edition display names --&lt;br /&gt;
	[&#039;Buried Treasure Map BE&#039;] = { title = &#039;Treasure Map&#039;, name = &#039;Buried Treasure Map BE&#039; },&lt;br /&gt;
	[&#039;Elytra Wings&#039;] = { title = &#039;Elytra Wings&#039;, name = &#039;Elytra&#039; },&lt;br /&gt;
	[&#039;Glowing Obsidian&#039;] = { title = &#039;tile.glowingobsidian.name&#039;, name = &#039;Glowing Obsidian&#039; },&lt;br /&gt;
	[&#039;Map (no markers)&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;cNo&#039; },&lt;br /&gt;
	[&#039;Locator Map&#039;] = { title = &#039;Map&#039;, name = &#039;Map&#039;, text = &#039;Display Markers: &amp;amp;aYes&#039; },&lt;br /&gt;
	[&#039;Shrub BE&#039;] = { title = &#039;Fern&#039;, name = &#039;Short Grass&#039; },&lt;br /&gt;
	[&#039;Unknown&#039;] = { title = &#039;Unknown&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update&#039;] = { title = &#039;tile.info_update.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;info_update2&#039;] = { title = &#039;tile.info_update2.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;reserved6&#039;] = { title = &#039;tile.reserved6.name&#039;, name = &#039;Missing Tile&#039; },&lt;br /&gt;
	[&#039;Smooth Purpur&#039;] = { title = &#039;tile.deprecated_purpur_block_2.name&#039;, name = &#039;Smooth Purpur&#039; },&lt;br /&gt;
	[&#039;Beacon BE&#039;] = { title = &#039;&amp;amp;bBeacon&#039;, name = &#039;Beacon BE&#039; },&lt;br /&gt;
	[&#039;Conduit BE&#039;] = { title = &#039;&amp;amp;eConduit&#039;, name = &#039;Conduit BE&#039; },&lt;br /&gt;
	[&#039;Dragon Egg BE&#039;] = { title = &#039;&amp;amp;dDragon Egg&#039;, name = &#039;Dragon Egg BE&#039; },&lt;br /&gt;
	[&#039;Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;eSkeleton Skull&#039;, name = &#039;Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Wither Skeleton Skull BE&#039;] = { title = &#039;&amp;amp;bWither Skeleton Skull&#039;, name = &#039;Wither Skeleton Skull BE&#039; },&lt;br /&gt;
	[&#039;Zombie Head BE&#039;] = { title = &#039;&amp;amp;eZombie Head&#039;, name = &#039;Zombie Head BE&#039; },&lt;br /&gt;
	[&#039;Player Head BE&#039;] = { title = &#039;&amp;amp;ePlayer Head&#039;, name = &#039;Player Head BE&#039; },&lt;br /&gt;
	[&#039;Creeper Head BE&#039;] = { title = &#039;&amp;amp;eCreeper Head&#039;, name = &#039;Creeper Head BE&#039; },&lt;br /&gt;
	[&#039;Dragon Head BE&#039;] = { title = &#039;&amp;amp;dDragon Head&#039;, name = &#039;Dragon Head BE&#039; },&lt;br /&gt;
&lt;br /&gt;
	-- Chemistry --&lt;br /&gt;
	[&#039;Lead (element)&#039;] = { title = &#039;Lead&#039;, name = &#039;Lead (element)&#039; },&lt;br /&gt;
	[&#039;Water (compound)&#039;] = { title = &#039;Water&#039;, name = &#039;Water (compound)&#039; },&lt;br /&gt;
	[&#039;Chloride&#039;] = { &#039;Calcium Chloride&#039;, &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Sparkler&#039;] = { &#039;Orange Sparkler&#039;, &#039;Blue Sparkler&#039;, &#039;Red Sparkler&#039;, &#039;Purple Sparkler&#039;, &#039;Green Sparkler&#039; },&lt;br /&gt;
	[&#039;Matching Chloride&#039;] = { &#039;Cerium Chloride&#039;, &#039;Mercuric Chloride&#039;, &#039;Potassium Chloride&#039;, &#039;Tungsten Chloride&#039; },&lt;br /&gt;
	[&#039;Matching Colored Torch&#039;] = { &#039;Blue Torch&#039;, &#039;Red Torch&#039;, &#039;Purple Torch&#039;, &#039;Green Torch&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- April Fools&#039; Day jokes --&lt;br /&gt;
	[&#039;New Thing Banner Pattern&#039;] = { title = &#039;&amp;amp;dBanner Pattern&#039;, name = &#039;New Thing Banner Pattern&#039;, text = &#039;&amp;amp;7New Thing&#039;},&lt;br /&gt;
	-- Note: These can&#039;t use this module&#039;s default color handling because potato peels have no white variant but do include the uncolored variant in recipes&lt;br /&gt;
	[&#039;Any Potato Peels&#039;] = { &#039;Potato Peels&#039;, &#039;Light Gray Potato Peels&#039;, &#039;Gray Potato Peels&#039;, &#039;Black Potato Peels&#039;, &#039;Brown Potato Peels&#039;, &#039;Red Potato Peels&#039;, &#039;Orange Potato Peels&#039;, &#039;Yellow Potato Peels&#039;, &#039;Lime Potato Peels&#039;, &#039;Green Potato Peels&#039;, &#039;Cyan Potato Peels&#039;, &#039;Light Blue Potato Peels&#039;, &#039;Blue Potato Peels&#039;, &#039;Purple Potato Peels&#039;, &#039;Magenta Potato Peels&#039;, &#039;Pink Potato Peels&#039; },&lt;br /&gt;
	&lt;br /&gt;
	-- Old textures --&lt;br /&gt;
	[&#039;Apple Revision 1&#039;] = { title = &#039;Apple&#039;, name = &#039;Apple Revision 1&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Stairs&#039;] = aliases[&#039;Any stairs&#039;]&lt;br /&gt;
&lt;br /&gt;
-- Tooltip colors --&lt;br /&gt;
local yellowTooltips = {&lt;br /&gt;
    &#039;Bottle o\&#039; Enchanting&#039;,&lt;br /&gt;
    &#039;Chainmail Boots&#039;,&lt;br /&gt;
    &#039;Chainmail Chestplate&#039;,&lt;br /&gt;
    &#039;Chainmail Helmet&#039;,&lt;br /&gt;
    &#039;Chainmail Leggings&#039;,&lt;br /&gt;
    &#039;Conduit&#039;,&lt;br /&gt;
    &#039;Creeper Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Creeper Head&#039;,&lt;br /&gt;
    &#039;Disc Fragment 5&#039;,&lt;br /&gt;
    &#039;Dragon\&#039;s Breath&#039;,&lt;br /&gt;
    &#039;Echo Shard&#039;,&lt;br /&gt;
    &#039;Enchanted Book&#039;,&lt;br /&gt;
    &#039;Goat Horn&#039;,&lt;br /&gt;
    &#039;Heart of the Sea&#039;,&lt;br /&gt;
    &#039;Nautilus Shell&#039;,&lt;br /&gt;
    &#039;Ominous Banner&#039;,&lt;br /&gt;
    &#039;Piglin Head&#039;,&lt;br /&gt;
    &#039;Player Head&#039;,&lt;br /&gt;
    &#039;Recovery Compass&#039;,&lt;br /&gt;
    &#039;Skeleton Skull&#039;,&lt;br /&gt;
    &#039;Sniffer Egg&#039;,&lt;br /&gt;
    &#039;Snout Banner Pattern&#039;,&lt;br /&gt;
    &#039;Totem of Undying&#039;,&lt;br /&gt;
    &#039;Zombie Head&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( yellowTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local aquaTooltips = {&lt;br /&gt;
	&#039;Beacon&#039;,&lt;br /&gt;
	&#039;Enchanted Golden Apple&#039;,&lt;br /&gt;
    &#039;Flow Banner Pattern&#039;,&lt;br /&gt;
	&#039;Guster Banner Pattern&#039;,&lt;br /&gt;
	&#039;Nether Star&#039;,&lt;br /&gt;
    &#039;Skull Charge Banner Pattern&#039;,&lt;br /&gt;
    &#039;Thing Banner Pattern&#039;,&lt;br /&gt;
    &#039;Wither Skeleton Skull&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( aquaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;b&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local magentaTooltips = {&lt;br /&gt;
	&#039;Barrier&#039;,&lt;br /&gt;
	&#039;Command Block&#039;,&lt;br /&gt;
	&#039;Chain Command Block&#039;,&lt;br /&gt;
	&#039;Debug Stick&#039;,&lt;br /&gt;
	&#039;Dragon Egg&#039;,&lt;br /&gt;
	&#039;Dragon Head&#039;,&lt;br /&gt;
	&#039;Elytra&#039;,&lt;br /&gt;
	&#039;Heavy Core&#039;,&lt;br /&gt;
	&#039;Jigsaw Block&#039;,&lt;br /&gt;
	&#039;Knowledge Book&#039;,&lt;br /&gt;
	&#039;Light&#039;,&lt;br /&gt;
	&#039;Repeating Command Block&#039;,&lt;br /&gt;
	&#039;Structure Block&#039;,&lt;br /&gt;
	&#039;Structure Void&#039;,&lt;br /&gt;
	&#039;Test Block&#039;,&lt;br /&gt;
	&#039;Test Instance Block&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs( magentaTooltips ) do&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;d&#039;, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons --&lt;br /&gt;
local tools = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5, 1.6 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6, 1.6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4, 1.6 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7, 1.6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8, 1.6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3, 1.2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4, 1.2 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2, 1.2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5, 1.2 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6, 1.2 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 7, 0.8 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 9, 0.8 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 9, 0.9 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 7, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 9, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 10, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 3.5, 1 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 4.5, 1 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 2.5, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 5.5, 1 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 6.5, 1 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 1, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 1, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 1, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 1, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 1, 4 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local materialGroups = {}&lt;br /&gt;
local toolGroups = {}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( tools ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	local damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
	local text = &#039;/&amp;amp;7When in Main Hand:/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[3] .. &#039; Attack Damage/&amp;amp;#160;&amp;amp;2&#039; .. toolProps[4] .. &#039; Attack Speed&#039;&lt;br /&gt;
	aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
	aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
	&lt;br /&gt;
	local materialGroup = toolProps[1]:lower()&lt;br /&gt;
	local toolGroup = toolProps[2]:lower()&lt;br /&gt;
	&lt;br /&gt;
	if toolProps[2] ~= &#039;Sword&#039; then&lt;br /&gt;
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end&lt;br /&gt;
		table.insert( materialGroups[materialGroup], aliases[aliasName] )&lt;br /&gt;
	end&lt;br /&gt;
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end&lt;br /&gt;
	table.insert( toolGroups[toolGroup], aliases[aliasName] )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for materialGroup, items in pairs( materialGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. materialGroup .. &#039; tools&#039;] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for toolGroup, items in pairs( toolGroups ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. toolGroup] = items&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Tools and weapons in Bedrock Edition --&lt;br /&gt;
local toolsBE = {&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Sword&#039;, 5 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Sword&#039;, 6 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Sword&#039;, 4 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Sword&#039;, 7 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Sword&#039;, 8 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Pickaxe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Pickaxe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Pickaxe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Pickaxe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Pickaxe&#039;, 6 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Axe&#039;, 4 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Axe&#039;, 5 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Axe&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Axe&#039;, 6 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Axe&#039;, 7 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Shovel&#039;, 2 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Shovel&#039;, 3 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Shovel&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Shovel&#039;, 4 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Shovel&#039;, 5 },&lt;br /&gt;
	&lt;br /&gt;
	{&#039;Wooden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Stone&#039;, &#039;Hoe&#039;, 3 },&lt;br /&gt;
	{&#039;Iron&#039;, &#039;Hoe&#039;, 4 },&lt;br /&gt;
	{&#039;Golden&#039;, &#039;Hoe&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;Hoe&#039;, 5 },&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;Hoe&#039;, 6 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, toolProps in ipairs( toolsBE ) do&lt;br /&gt;
	local aliasName = toolProps[1] .. &#039; &#039; .. toolProps[2]&lt;br /&gt;
	aliases[aliasName .. &#039; BE&#039;] = { title = aliasName, name = aliasName, text = &#039;/&amp;amp;9+&#039; .. toolProps[3] .. &#039; Attack Damage&#039;}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Armor tooltips --&lt;br /&gt;
local head = {&lt;br /&gt;
	{&#039;Leather Cap&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Iron Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Helmet&#039;, 2 },&lt;br /&gt;
	{&#039;Diamond Helmet&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Helmet&#039;, 3, 3, 1 },&lt;br /&gt;
	{&#039;Turtle Shell&#039;, 2 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local body = {&lt;br /&gt;
	{&#039;Leather Tunic&#039;, 3 },&lt;br /&gt;
	{&#039;Chainmail Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Iron Chestplate&#039;, 6 },&lt;br /&gt;
	{&#039;Golden Chestplate&#039;, 5 },&lt;br /&gt;
	{&#039;Diamond Chestplate&#039;, 8, 2 },&lt;br /&gt;
	{&#039;Netherite Chestplate&#039;, 8, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local legs = {&lt;br /&gt;
	{&#039;Leather Pants&#039;, 2 },&lt;br /&gt;
	{&#039;Chainmail Leggings&#039;, 4 },&lt;br /&gt;
	{&#039;Iron Leggings&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Leggings&#039;, 3 },&lt;br /&gt;
	{&#039;Diamond Leggings&#039;, 6, 2 },&lt;br /&gt;
	{&#039;Netherite Leggings&#039;, 6, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local feet = {&lt;br /&gt;
	{&#039;Leather Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Chainmail Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Iron Boots&#039;, 2 },&lt;br /&gt;
	{&#039;Golden Boots&#039;, 1 },&lt;br /&gt;
	{&#039;Diamond Boots&#039;, 3, 2 },&lt;br /&gt;
	{&#039;Netherite Boots&#039;, 3, 3, 1 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local equipped = {&lt;br /&gt;
	{&#039;Leather Horse Armor&#039;, 3 },&lt;br /&gt;
	{&#039;Iron Horse Armor&#039;, 5 },&lt;br /&gt;
	{&#039;Golden Horse Armor&#039;, 7 },&lt;br /&gt;
	{&#039;Diamond Horse Armor&#039;, 11, 2 },&lt;br /&gt;
	{&#039;Wolf Armor&#039;, 11 },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local bodyParts = {&lt;br /&gt;
    {head, &amp;quot;on Head&amp;quot;},&lt;br /&gt;
    {body, &amp;quot;on Body&amp;quot;},&lt;br /&gt;
    {legs, &amp;quot;on Legs&amp;quot;},&lt;br /&gt;
    {feet, &amp;quot;on Feet&amp;quot;},&lt;br /&gt;
    {equipped, &amp;quot;equipped&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local trimMaterial = {&lt;br /&gt;
	{&#039;Quartz&#039;, &#039;&amp;amp;h&#039;},&lt;br /&gt;
	{&#039;Iron&#039;, &#039;&amp;amp;i&#039;},&lt;br /&gt;
	{&#039;Netherite&#039;, &#039;&amp;amp;j&#039;},&lt;br /&gt;
	{&#039;Redstone&#039;, &#039;&amp;amp;y&#039;},&lt;br /&gt;
	{&#039;Copper&#039;, &#039;&amp;amp;z&#039;},&lt;br /&gt;
	{&#039;Gold&#039;, &#039;&amp;amp;p&#039;},&lt;br /&gt;
	{&#039;Emerald&#039;, &#039;&amp;amp;q&#039;},&lt;br /&gt;
	{&#039;Diamond&#039;, &#039;&amp;amp;s&#039;},&lt;br /&gt;
	{&#039;Lapis&#039;, &#039;&amp;amp;t&#039;},&lt;br /&gt;
	{&#039;Amethyst&#039;, &#039;&amp;amp;u&#039;},&lt;br /&gt;
	{&#039;Resin&#039;, &#039;&amp;amp;v&#039;},&lt;br /&gt;
	{&#039;Amber&#039;, &#039;&amp;amp;6&#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, bodyPart in ipairs(bodyParts) do&lt;br /&gt;
    local items = bodyPart[1]&lt;br /&gt;
    local bodyPartName = bodyPart[2]&lt;br /&gt;
    &lt;br /&gt;
    for _, toolProps in ipairs(items) do&lt;br /&gt;
        local aliasName = toolProps[1]&lt;br /&gt;
        local damagedName&lt;br /&gt;
        if string.find(aliasName, &amp;quot;Horse Armor&amp;quot;) then&lt;br /&gt;
            damagedName = aliasName &lt;br /&gt;
        else&lt;br /&gt;
            damagedName = &#039;Damaged &#039; .. aliasName&lt;br /&gt;
        end     &lt;br /&gt;
        local text = &#039;/&amp;amp;7When &#039; .. bodyPartName .. &#039;:/&amp;amp;9+&#039; .. toolProps[2] .. &#039; Armor/&#039;&lt;br /&gt;
        if toolProps[3] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[3] .. &#039; Armor Toughness/&#039;&lt;br /&gt;
        end&lt;br /&gt;
        if toolProps[4] then&lt;br /&gt;
            text = text .. &#039;+&#039; .. toolProps[4] .. &#039; Knockback Resistance&#039;&lt;br /&gt;
        end&lt;br /&gt;
        aliases[aliasName] = { title = aliasName, name = aliasName, text = text }&lt;br /&gt;
        aliases[damagedName] = { title = aliasName, name = damagedName, text = text }&lt;br /&gt;
        if bodyPartName ~= &amp;quot;equipped&amp;quot; then&lt;br /&gt;
			for _, materialType in ipairs( trimMaterial ) do&lt;br /&gt;
	        	local trimName = materialType[1] .. &#039; Trim &#039; .. aliasName&lt;br /&gt;
				local trimText = &#039;&amp;amp;7Upgrade:/&amp;amp;#160;&#039; .. materialType[2] .. &#039;Armor Trim/&amp;amp;#160;&#039; .. materialType[1] .. &#039; Material/&#039;&lt;br /&gt;
				aliases[trimName] = { title = aliasName, name = trimName, text = trimText .. text }&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Lists of item variants --&lt;br /&gt;
local itemVariants = {&lt;br /&gt;
	[&#039;Small Flower&#039;] = { &#039;Oxeye Daisy&#039;, &#039;Cornflower&#039;, &#039;Lily of the Valley&#039;, &#039;Wither Rose&#039;, &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039;, &#039;Azure Bluet&#039;, &#039;Allium&#039;, &#039;Blue Orchid&#039;, &#039;Poppy&#039;, &#039;Dandelion&#039;, &#039;Torchflower&#039;, &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Eyeblossom&#039;] = { &#039;Closed Eyeblossom&#039;, &#039;Open Eyeblossom&#039; },&lt;br /&gt;
	[&#039;Mushroom&#039;] = { &#039;Red Mushroom&#039;, &#039;Brown Mushroom&#039; },&lt;br /&gt;
	[&#039;Quartz Block&#039;] = { &#039;Block of Quartz&#039;, &#039;Chiseled Quartz Block&#039;, &#039;Quartz Pillar&#039; },&lt;br /&gt;
	[&#039;Red Sandstone&#039;] = { &#039;Red Sandstone&#039;, &#039;Cut Red Sandstone&#039;, &#039;Chiseled Red Sandstone&#039;, &#039;Smooth Red Sandstone&#039; },&lt;br /&gt;
	[&#039;Sandstone&#039;] = { &#039;Sandstone&#039;, &#039;Cut Sandstone&#039;, &#039;Chiseled Sandstone&#039;, &#039;Smooth Sandstone&#039; },&lt;br /&gt;
	[&#039;Stone Bricks&#039;] = { &#039;Stone Bricks&#039;, &#039;Mossy Stone Bricks&#039;, &#039;Cracked Stone Bricks&#039;, &#039;Chiseled Stone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Slab&#039;] = { &#039;Stone Slab&#039;, &#039;Cobblestone Slab&#039;, &#039;Mossy Cobblestone Slab&#039;, &#039;Smooth Stone Slab&#039;, &#039;Stone Brick Slab&#039;, &#039;Mossy Stone Brick Slab&#039;, &lt;br /&gt;
		&#039;Granite Slab&#039;, &#039;Polished Granite Slab&#039;, &#039;Diorite Slab&#039;, &#039;Polished Diorite Slab&#039;, &#039;Andesite Slab&#039;, &#039;Polished Andesite Slab&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Slab&#039;, &#039;Polished Deepslate Slab&#039;, &#039;Deepslate Brick Slab&#039;, &#039;Deepslate Tile Slab&#039;, &#039;Brick Slab&#039;, &#039;Mud Brick Slab&#039;, &#039;Resin Brick Slab&#039;,&lt;br /&gt;
		&#039;Sandstone Slab&#039;, &#039;Smooth Sandstone Slab&#039;, &#039;Cut Sandstone Slab&#039;, &#039;Red Sandstone Slab&#039;, &#039;Smooth Red Sandstone Slab&#039;, &#039;Cut Red Sandstone Slab&#039;, &#039;Prismarine Slab&#039;, &#039;Prismarine Brick Slab&#039;, &#039;Dark Prismarine Slab&#039;, &lt;br /&gt;
		&#039;Nether Brick Slab&#039;, &#039;Red Nether Brick Slab&#039;, &#039;Blackstone Slab&#039;, &#039;Polished Blackstone Slab&#039;, &#039;Polished Blackstone Brick Slab&#039;, &#039;End Stone Brick Slab&#039;, &#039;Purpur Slab&#039;, &#039;Quartz Slab&#039;, &#039;Smooth Quartz Slab&#039;, &#039;Petrified Oak Slab&#039; },&lt;br /&gt;
	[&#039;Stone Stairs&#039;] = { &#039;Stone Stairs&#039;, &#039;Cobblestone Stairs&#039;, &#039;Mossy Cobblestone Stairs&#039;, &#039;Stone Brick Stairs&#039;, &#039;Mossy Stone Brick Stairs&#039;, &lt;br /&gt;
		&#039;Granite Stairs&#039;, &#039;Polished Granite Stairs&#039;, &#039;Diorite Stairs&#039;, &#039;Polished Diorite Stairs&#039;, &#039;Andesite Stairs&#039;, &#039;Polished Andesite Stairs&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Stairs&#039;, &#039;Polished Deepslate Stairs&#039;, &#039;Deepslate Brick Stairs&#039;, &#039;Deepslate Tile Stairs&#039;, &#039;Brick Stairs&#039;, &#039;Mud Brick Stairs&#039;, &#039;Resin Brick Stairs&#039;, &lt;br /&gt;
		&#039;Sandstone Stairs&#039;, &#039;Smooth Sandstone Stairs&#039;, &#039;Red Sandstone Stairs&#039;, &#039;Smooth Red Sandstone Stairs&#039;, &#039;Prismarine Stairs&#039;, &#039;Prismarine Brick Stairs&#039;, &#039;Dark Prismarine Stairs&#039;, &lt;br /&gt;
		&#039;Nether Brick Stairs&#039;, &#039;Red Nether Brick Stairs&#039;, &#039;Blackstone Stairs&#039;, &#039;Polished Blackstone Stairs&#039;, &#039;Polished Blackstone Brick Stairs&#039;, &#039;End Stone Brick Stairs&#039;, &#039;Purpur Stairs&#039;, &#039;Quartz Stairs&#039;, &#039;Smooth Quartz Stairs&#039; },&lt;br /&gt;
	[&#039;Wall&#039;] = { &#039;Cobblestone Wall&#039;, &#039;Mossy Cobblestone Wall&#039;, &#039;Stone Brick Wall&#039;, &#039;Mossy Stone Brick Wall&#039;, &#039;Granite Wall&#039;, &#039;Diorite Wall&#039;, &#039;Andesite Wall&#039;, &lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;, &#039;Polished Deepslate Wall&#039;, &#039;Deepslate Brick Wall&#039;, &#039;Deepslate Tile Wall&#039;, &#039;Brick Wall&#039;, &#039;Mud Brick Wall&#039;, &#039;Resin Brick Wall&#039;, &#039;Sandstone Wall&#039;, &#039;Red Sandstone Wall&#039;, &#039;Prismarine Wall&#039;, &lt;br /&gt;
		&#039;Nether Brick Wall&#039;, &#039;Red Nether Brick Wall&#039;, &#039;Blackstone Wall&#039;, &#039;Polished Blackstone Wall&#039;, &#039;Polished Blackstone Brick Wall&#039;, &#039;End Stone Brick Wall&#039; },&lt;br /&gt;
	[&#039;Purpur Block&#039;] = { &#039;Purpur Block&#039;, &#039;Purpur Pillar&#039; },&lt;br /&gt;
	[&#039;Stone&#039;] = { &#039;Stone&#039;, &#039;Andesite&#039;, &#039;Granite&#039;, &#039;Diorite&#039;, &#039;Polished Andesite&#039;, &#039;Polished Granite&#039;, &#039;Polished Diorite&#039; },&lt;br /&gt;
	[&#039;Resin Block&#039;] = { &#039;Block of Resin&#039;, &#039;Resin Bricks&#039;, &#039;Chiseled Resin Bricks&#039; },&lt;br /&gt;
	[&#039;Tulip&#039;] = { &#039;Red Tulip&#039;, &#039;Orange Tulip&#039;, &#039;White Tulip&#039;, &#039;Pink Tulip&#039; },&lt;br /&gt;
	[&#039;Prismarine&#039;] = { &#039;Prismarine&#039;, &#039;Prismarine Bricks&#039;, &#039;Dark Prismarine&#039; },&lt;br /&gt;
	[&#039;Ore&#039;] = { &#039;Coal Ore&#039;, &#039;Iron Ore&#039;, &#039;Gold Ore&#039;, &#039;Lapis Lazuli Ore&#039;, &#039;Redstone Ore&#039;, &#039;Emerald Ore&#039;, &#039;Diamond Ore&#039;, &#039;Nether Quartz Ore&#039;, &#039;Nether Gold Ore&#039;, &#039;Deepslate Coal Ore&#039;, &lt;br /&gt;
		&#039;Deepslate Copper Ore&#039;, &#039;Deepslate Emerald Ore&#039;, &#039;Deepslate Iron Ore&#039;, &#039;Deepslate Gold Ore&#039;, &#039;Deepslate Lapis Lazuli Ore&#039;, &#039;Deepslate Redstone Ore&#039;, &#039;Deepslate Diamond Ore&#039;},&lt;br /&gt;
	[&#039;Dead Coral Block&#039;] = { &#039;Dead Tube Coral Block&#039;, &#039;Dead Brain Coral Block&#039;, &#039;Dead Bubble Coral Block&#039;, &#039;Dead Fire Coral Block&#039;, &#039;Dead Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Coral Block&#039;] = { &#039;Tube Coral Block&#039;, &#039;Brain Coral Block&#039;, &#039;Bubble Coral Block&#039;, &#039;Fire Coral Block&#039;, &#039;Horn Coral Block&#039; },&lt;br /&gt;
	[&#039;Dead Coral&#039;] = { &#039;Dead Tube Coral&#039;, &#039;Dead Brain Coral&#039;, &#039;Dead Bubble Coral&#039;, &#039;Dead Fire Coral&#039;, &#039;Dead Horn Coral&#039; },&lt;br /&gt;
	[&#039;Dead Coral Fan&#039;] = { &#039;Dead Tube Coral Fan&#039;, &#039;Dead Brain Coral Fan&#039;, &#039;Dead Bubble Coral Fan&#039;, &#039;Dead Fire Coral Fan&#039;, &#039;Dead Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Coral&#039;] = { &#039;Tube Coral&#039;, &#039;Brain Coral&#039;, &#039;Bubble Coral&#039;, &#039;Fire Coral&#039;, &#039;Horn Coral&#039; },&lt;br /&gt;
	[&#039;Coral Fan&#039;] = { &#039;Tube Coral Fan&#039;, &#039;Brain Coral Fan&#039;, &#039;Bubble Coral Fan&#039;, &#039;Fire Coral Fan&#039;, &#039;Horn Coral Fan&#039; },&lt;br /&gt;
	[&#039;Torch&#039;] = { &#039;Torch&#039;, &#039;Soul Torch&#039; },&lt;br /&gt;
	[&#039;Lantern&#039;] = { &#039;Lantern&#039;, &#039;Soul Lantern&#039; },&lt;br /&gt;
	[&#039;Fungus&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Fungi&#039;] = { &#039;Crimson Fungus&#039;, &#039;Warped Fungus&#039; },&lt;br /&gt;
	[&#039;Roots&#039;] = { &#039;Crimson Roots&#039;, &#039;Warped Roots&#039; },&lt;br /&gt;
	[&#039;Nylium&#039;] = { &#039;Crimson Nylium&#039;, &#039;Warped Nylium&#039; },&lt;br /&gt;
	[&#039;Soul Sand&#039;] = { &#039;Soul Sand&#039;, &#039;Soul Soil&#039; },&lt;br /&gt;
	[&#039;Campfire&#039;] = { &#039;Campfire&#039;, &#039;Soul Campfire&#039; },&lt;br /&gt;
	[&#039;Blackstone&#039;] = { &#039;Blackstone&#039;, &#039;Polished Blackstone&#039;, &#039;Chiseled Polished Blackstone&#039;, &#039;Polished Blackstone Bricks&#039;, &#039;Cracked Polished Blackstone Bricks&#039; },&lt;br /&gt;
	[&#039;Stone Button&#039;] = { &#039;Stone Button&#039;, &#039;Polished Blackstone Button&#039; },&lt;br /&gt;
	[&#039;Stone Pressure Plate&#039;] = { &#039;Stone Pressure Plate&#039;, &#039;Polished Blackstone Pressure Plate&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Copper --&lt;br /&gt;
local copperstuff = {&lt;br /&gt;
	&#039;Block of Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper&#039;,&lt;br /&gt;
	&#039;Cut Copper Stairs&#039;,&lt;br /&gt;
	&#039;Cut Copper Slab&#039;,&lt;br /&gt;
	&#039;Chiseled Copper&#039;,&lt;br /&gt;
	&#039;Copper Grate&#039;,&lt;br /&gt;
	&#039;Copper Bulb&#039;,&lt;br /&gt;
	&#039;Copper Door&#039;,&lt;br /&gt;
	&#039;Copper Trapdoor&#039;,&lt;br /&gt;
}&lt;br /&gt;
local coppervariants = { &#039;&#039;, &#039;Exposed &#039;, &#039;Weathered &#039;, &#039;Oxidized &#039; }&lt;br /&gt;
for _, copper in ipairs( copperstuff ) do&lt;br /&gt;
	itemVariants[&#039;Unwaxed &#039; .. copper] = {}&lt;br /&gt;
	itemVariants[&#039;Waxed &#039; .. copper] = {}&lt;br /&gt;
	for _, coppervariant in ipairs( coppervariants ) do&lt;br /&gt;
		local name = coppervariant .. copper&lt;br /&gt;
		if copper == &#039;Block of Copper&#039; and coppervariant ~= &#039;&#039; then&lt;br /&gt;
			name = coppervariant .. &#039;Copper&#039;&lt;br /&gt;
		end&lt;br /&gt;
		table.insert( itemVariants[&#039;Unwaxed &#039; .. copper], name )&lt;br /&gt;
		table.insert( itemVariants[&#039;Waxed &#039; .. copper], &#039;Waxed &#039; .. name )&lt;br /&gt;
	end&lt;br /&gt;
	itemVariants[copper] = {}&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Unwaxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
	for _, copperitem in ipairs( itemVariants[&#039;Waxed &#039; .. copper] ) do&lt;br /&gt;
		table.insert( itemVariants[copper], copperitem )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for aliasName, aliasItems in pairs( itemVariants ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. aliasName] = aliasItems&lt;br /&gt;
	aliases[&#039;Matching &#039; .. aliasName] = aliasItems&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Discs --&lt;br /&gt;
local discs = { &lt;br /&gt;
	{ &#039;13&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Cat&#039;,                 &#039;C418&#039;,         &#039;cat&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Blocks&#039;,              &#039;C418&#039;,         &#039;blocks&#039;,    &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Chirp&#039;,               &#039;C418&#039;,         &#039;chirp&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Far&#039;,                 &#039;C418&#039;,         &#039;far&#039;,       &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mall&#039;,                &#039;C418&#039;,         &#039;mall&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Mellohi&#039;,             &#039;C418&#039;,         &#039;mellohi&#039;,   &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Stal&#039;,                &#039;C418&#039;,         &#039;stal&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Strad&#039;,               &#039;C418&#039;,         &#039;strad&#039;,     &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Ward&#039;,                &#039;C418&#039;,         &#039;ward&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;11&#039;,                  &#039;C418&#039;,         &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wait&#039;,                &#039;C418&#039;,         &#039;wait&#039;,      &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Otherside&#039;,           &#039;Lena Raine&#039;,   &#039;otherside&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Pigstep&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;5&#039;,                   &#039;Samuel Åberg&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Relic&#039;,               &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Precipice&#039;,           &#039;Aaron Cherof&#039;, &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Creator&#039;,             &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Creator (Music Box)&#039;, &#039;Lena Raine&#039;,   &#039;&#039;,          &#039;&amp;amp;e&#039; },&lt;br /&gt;
}&lt;br /&gt;
for _, disc in ipairs( discs ) do&lt;br /&gt;
    local rarityColor = disc[4]&lt;br /&gt;
	local name = &#039;Music Disc &#039; .. disc[1]&lt;br /&gt;
	local artist = disc[2]&lt;br /&gt;
	local trackname = disc[1]&lt;br /&gt;
	if disc[3] ~= &#039;&#039; then&lt;br /&gt;
		trackname = disc[3]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = rarityColor .. &#039;Music Disc&#039;, name = name, text = &#039;&amp;amp;7&#039; .. artist .. &#039; - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Disc Fragments --&lt;br /&gt;
local disc_fragments = { &lt;br /&gt;
	{ &#039;5&#039;,    },&lt;br /&gt;
}&lt;br /&gt;
for _, disc_fragment in ipairs( disc_fragments ) do&lt;br /&gt;
	local name = &#039;Disc Fragment &#039; .. disc_fragment[1]&lt;br /&gt;
	local trackname = disc_fragment[1]&lt;br /&gt;
	if disc_fragment[2] ~= nil then&lt;br /&gt;
		trackname = disc_fragment[2]&lt;br /&gt;
	end&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;eDisc Fragment&#039;, name = name, text = &#039;&amp;amp;7Music Disc - &#039; .. trackname }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Paintings --&lt;br /&gt;
local paintings = { &lt;br /&gt;
	{ &#039;Kebab med tre pepperoni&#039;,    &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;de_aztec&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Albanian&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Target Successfully Bombed&#039;, &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Paradisträd&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wasteland&#039;,                  &#039;Kristoffer Zetterstrand&#039;, &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Meditative&#039;,                 &#039;Sarah Boeving&#039;,           &#039;1x1&#039; },&lt;br /&gt;
	{ &#039;Wanderer&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Graham&#039;,                     &#039;Kristoffer Zetterstrand&#039;, &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;Prairie Ride&#039;,               &#039;Sarah Boeving&#039;,           &#039;1x2&#039; },&lt;br /&gt;
	{ &#039;The Pool&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Bonjour Monsieur Courbet&#039;,   &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;sunset_dense&#039;,               &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Seaside&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Creebet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;2x1&#039; },&lt;br /&gt;
	{ &#039;Match&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bust&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The Stage Is Set&#039;,           &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;The void&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Skull and Roses&#039;,            &#039;Kristoffer Zetterstrand&#039;, &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wither&#039;,                     &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Baroque&#039;,                    &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Humble&#039;,                     &#039;Sarah Boeving&#039;,           &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Bouquet&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cavebird&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Cotán&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Endboss&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Fern&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Owlemons&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Sunflowers&#039;,                 &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Tides&#039;,                      &#039;Kristoffer Zetterstrand&#039;, &#039;3x3&#039; },&lt;br /&gt;
	{ &#039;Backyard&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Pond&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;3x4&#039; },&lt;br /&gt;
	{ &#039;Fighters&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Changing&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Finding&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Lowmist&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Passage&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x2&#039; },&lt;br /&gt;
	{ &#039;Mortal Coil&#039;,                &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Kong&#039;,                       &#039;Kristoffer Zetterstrand&#039;, &#039;4x3&#039; },&lt;br /&gt;
	{ &#039;Pointer&#039;,                    &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Pigscene&#039;,                   &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Skull On Fire&#039;,              &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Unpacked&#039;,                   &#039;Sarah Boeving&#039;,           &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Orb&#039;,                        &#039;Kristoffer Zetterstrand&#039;, &#039;4x4&#039; },&lt;br /&gt;
	{ &#039;Earth&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Wind&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Fire&#039;,                       &#039;Mojang&#039;,                  &#039;2x2&#039; },&lt;br /&gt;
	{ &#039;Water&#039;,                      &#039;Mojang&#039;,                  &#039;2x2&#039; }&lt;br /&gt;
}&lt;br /&gt;
for _, painting in ipairs( paintings ) do&lt;br /&gt;
	local name = &#039;Painting &#039; .. painting[1]&lt;br /&gt;
	local artist = painting[2]&lt;br /&gt;
	local artwork = painting[1]&lt;br /&gt;
	local size = painting[3]&lt;br /&gt;
	aliases[name] = { title = &#039;Painting&#039;, name = &#039;Painting&#039;, text = &#039;&amp;amp;e&#039; .. artwork .. &#039;/&amp;amp;7&#039; .. artist .. &#039;/&#039; .. &#039;&amp;amp;f&#039; .. size }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Damaged items, note it skips tools, weapons, and armor as they are handled above to add the damage tooltip. --&lt;br /&gt;
-- Items with rarity (such as Mace and Elytra) are hard-coded in the module&#039;s beginning.&lt;br /&gt;
local damagedItems = {&lt;br /&gt;
	&#039;Bow&#039;,&lt;br /&gt;
	&#039;Brush&#039;,&lt;br /&gt;
	&#039;Carrot on a Stick&#039;,&lt;br /&gt;
	&#039;Crossbow&#039;,&lt;br /&gt;
	&#039;Fishing Rod&#039;,&lt;br /&gt;
	&#039;Flint and Steel&#039;,&lt;br /&gt;
	&#039;Shears&#039;,&lt;br /&gt;
	&#039;Shield&#039;&lt;br /&gt;
}&lt;br /&gt;
for _, item in ipairs( damagedItems ) do&lt;br /&gt;
	local name = &#039;Damaged &#039; .. item&lt;br /&gt;
	aliases[name] = { title = item, name = name }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Banners and colored items --&lt;br /&gt;
local patterns = {&lt;br /&gt;
	&#039;Base Dexter Canton&#039;,&lt;br /&gt;
	&#039;Base&#039;,&lt;br /&gt;
	&#039;Base Gradient&#039;,&lt;br /&gt;
	&#039;Base Indented&#039;,&lt;br /&gt;
	&#039;Base Sinister Canton&#039;,&lt;br /&gt;
	&#039;Bend&#039;,&lt;br /&gt;
	&#039;Bend Sinister&#039;,&lt;br /&gt;
	&#039;Bordure&#039;,&lt;br /&gt;
	&#039;Bordure Indented&#039;,&lt;br /&gt;
	&#039;Chevron&#039;,&lt;br /&gt;
	&#039;Chief Dexter Canton&#039;,&lt;br /&gt;
	&#039;Chief&#039;,&lt;br /&gt;
	&#039;Chief Indented&#039;,&lt;br /&gt;
	&#039;Chief Sinister Canton&#039;,&lt;br /&gt;
	&#039;Creeper Charge&#039;,&lt;br /&gt;
	&#039;Cross&#039;,&lt;br /&gt;
	&#039;Fess&#039;,&lt;br /&gt;
	&#039;Field Masoned&#039;,&lt;br /&gt;
	&#039;Flow&#039;,&lt;br /&gt;
	&#039;Flower Charge&#039;,&lt;br /&gt;
	&#039;Globe&#039;,&lt;br /&gt;
	&#039;Gradient&#039;,&lt;br /&gt;
	&#039;Guster&#039;,&lt;br /&gt;
	&#039;Inverted Chevron&#039;,&lt;br /&gt;
	&#039;Lozenge&#039;,&lt;br /&gt;
	&#039;Thing&#039;,&lt;br /&gt;
	&#039;Pale&#039;,&lt;br /&gt;
	&#039;Pale Dexter&#039;,&lt;br /&gt;
	&#039;Pale Sinister&#039;,&lt;br /&gt;
	&#039;Paly&#039;,&lt;br /&gt;
	&#039;Per Bend&#039;,&lt;br /&gt;
	&#039;Per Bend Inverted&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister&#039;,&lt;br /&gt;
	&#039;Per Bend Sinister Inverted&#039;,&lt;br /&gt;
	&#039;Per Fess&#039;,&lt;br /&gt;
	&#039;Per Fess Inverted&#039;,&lt;br /&gt;
	&#039;Per Pale&#039;,&lt;br /&gt;
	&#039;Per Pale Inverted&#039;,&lt;br /&gt;
	&#039;Piglin&#039;,&lt;br /&gt;
	&#039;Snout&#039;,&lt;br /&gt;
	&#039;Roundel&#039;,&lt;br /&gt;
	&#039;Saltire&#039;,&lt;br /&gt;
	&#039;Skull Charge&#039;&lt;br /&gt;
}&lt;br /&gt;
local colors = {&lt;br /&gt;
	&#039;White&#039;,&lt;br /&gt;
	&#039;Light Gray&#039;,&lt;br /&gt;
	&#039;Gray&#039;,&lt;br /&gt;
	&#039;Black&#039;,&lt;br /&gt;
	&#039;Brown&#039;,&lt;br /&gt;
	&#039;Red&#039;,&lt;br /&gt;
	&#039;Orange&#039;,&lt;br /&gt;
	&#039;Yellow&#039;,&lt;br /&gt;
	&#039;Lime&#039;,&lt;br /&gt;
	&#039;Green&#039;,&lt;br /&gt;
	&#039;Cyan&#039;,&lt;br /&gt;
	&#039;Light Blue&#039;,&lt;br /&gt;
	&#039;Blue&#039;,&lt;br /&gt;
	&#039;Purple&#039;,&lt;br /&gt;
	&#039;Magenta&#039;,&lt;br /&gt;
	&#039;Pink&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Firework Stars --&lt;br /&gt;
local fireworkStar = {}&lt;br /&gt;
for _, color in ipairs( colors ) do&lt;br /&gt;
	local name = color .. &#039; Firework Star&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;Firework Star&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color }&lt;br /&gt;
	table.insert( fireworkStar, aliases[name] )&lt;br /&gt;
	for _, pattern in ipairs( patterns ) do&lt;br /&gt;
		name = color .. &#039; &#039; .. pattern .. &#039; Banner&#039;&lt;br /&gt;
		aliases[name] = { title = &#039;Banner&#039;, name = name, text = &#039;&amp;amp;7&#039; .. color .. &#039; &#039; .. pattern }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Any Firework Star&#039;] = fireworkStar&lt;br /&gt;
aliases[&#039;Matching Firework Star&#039;] = fireworkStar&lt;br /&gt;
&lt;br /&gt;
-- Items that use the sixteen colors --&lt;br /&gt;
local coloredItems = {&lt;br /&gt;
	withWhite = {&lt;br /&gt;
		&#039;Balloon&#039;,&lt;br /&gt;
		&#039;Banner&#039;,&lt;br /&gt;
		&#039;Bed&#039;,&lt;br /&gt;
		&#039;Carpet&#039;,&lt;br /&gt;
		&#039;Concrete&#039;,&lt;br /&gt;
		&#039;Concrete Powder&#039;,&lt;br /&gt;
		&#039;Glazed Terracotta&#039;,&lt;br /&gt;
		&#039;Glow Stick&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass&#039;,&lt;br /&gt;
		&#039;Hardened $1 Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Shield&#039;,&lt;br /&gt;
		&#039;Shulker Box&#039;,&lt;br /&gt;
		&#039;Stained Glass&#039;,&lt;br /&gt;
		&#039;Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Wool&#039;,&lt;br /&gt;
&lt;br /&gt;
		&#039;$Dyed Bundle&#039;,&lt;br /&gt;
		&#039;$Dyed Candle&#039;,&lt;br /&gt;
		&#039;$Dyed Terracotta&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	noWhite = {&lt;br /&gt;
		&#039;$Dyed Wool&#039;,&lt;br /&gt;
		&#039;$Dyed Bed&#039;,&lt;br /&gt;
		&#039;$Dyed Carpet&#039;,&lt;br /&gt;
		&#039;$Colored Dye&#039;,&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local coloredBadItems = {&lt;br /&gt;
	[&#039;Light Gray Glow Stick&#039;] = 1,&lt;br /&gt;
	[&#039;Black Glow Stick&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for type, items in pairs( coloredItems ) do&lt;br /&gt;
	for _, item in ipairs( items ) do&lt;br /&gt;
		local coloredItemAliases = {}&lt;br /&gt;
		local defaultItemAliases&lt;br /&gt;
&lt;br /&gt;
		if item:find( &#039;%$[^1]&#039; ) then&lt;br /&gt;
			defaultItemAliases = {}&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type == &#039;noWhite&#039; then&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+&#039;, &#039;White&#039; )&lt;br /&gt;
			else&lt;br /&gt;
				itemName = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			end&lt;br /&gt;
			table.insert( defaultItemAliases, itemName )&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		for _, color in ipairs( colors ) do&lt;br /&gt;
			local itemName&lt;br /&gt;
			if type ~= &#039;noWhite&#039; or color ~= &#039;White&#039; then&lt;br /&gt;
				if item:find( &#039;%$1&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$1&#039;, color )&lt;br /&gt;
				elseif item:find( &#039;%$&#039; ) then&lt;br /&gt;
					itemName = item:gsub( &#039;%$%w+&#039;, color )&lt;br /&gt;
				else&lt;br /&gt;
					itemName = color .. &#039; &#039; .. item&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			if not coloredBadItems[itemName] then&lt;br /&gt;
				if defaultItemAliases then&lt;br /&gt;
					table.insert( defaultItemAliases, itemName )&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				table.insert( coloredItemAliases, itemName )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if defaultItemAliases then&lt;br /&gt;
			local defaultItem = item:gsub( &#039;%$%w+ &#039;, &#039;&#039; )&lt;br /&gt;
			aliases[&#039;Any &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
			aliases[&#039;Matching &#039; .. defaultItem] = defaultItemAliases&lt;br /&gt;
		end&lt;br /&gt;
		item = item:gsub( &#039;%$1 &#039;, &#039;&#039; )&lt;br /&gt;
		item = item:gsub( &#039;%$&#039;, &#039;&#039; )&lt;br /&gt;
		aliases[&#039;Any &#039; .. item] = coloredItemAliases&lt;br /&gt;
		aliases[&#039;Matching &#039; .. item] = coloredItemAliases&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
-- list of all potions with no effects&lt;br /&gt;
local noEffects = {&lt;br /&gt;
	&#039;Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Potion&#039;,&lt;br /&gt;
	&#039;Thick Potion&#039;,&lt;br /&gt;
	&#039;Mundane Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Potion&#039;,&lt;br /&gt;
	&#039;Splash Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Splash Potion&#039;,&lt;br /&gt;
	&#039;Thick Splash Potion&#039;,&lt;br /&gt;
	&#039;Mundane Splash Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Splash Potion&#039;,&lt;br /&gt;
	&#039;Lingering Water Bottle&#039;,&lt;br /&gt;
	&#039;Awkward Lingering Potion&#039;,&lt;br /&gt;
	&#039;Thick Lingering Potion&#039;,&lt;br /&gt;
	&#039;Mundane Lingering Potion&#039;,&lt;br /&gt;
	&#039;Uncraftable Lingering Potion&#039;,&lt;br /&gt;
	&#039;Tipped Arrow&#039;,&lt;br /&gt;
	&#039;Arrow of Splashing&#039;,&lt;br /&gt;
	&#039;Uncraftable Tipped Arrow&#039;,&lt;br /&gt;
}&lt;br /&gt;
for _, name in ipairs(noEffects) do&lt;br /&gt;
	aliases[name] = { name = name, text = &#039;&amp;amp;7No Effects&#039; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- start these lists with the no effect items as names are not normal&lt;br /&gt;
local potionItems = {&lt;br /&gt;
	[&#039;Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Splash Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Splash Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Splash Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Splash Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Lingering Potion&#039;] = {&lt;br /&gt;
		aliases[&#039;Lingering Water Bottle&#039;],&lt;br /&gt;
		aliases[&#039;Awkward Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Thick Lingering Potion&#039;],&lt;br /&gt;
		aliases[&#039;Mundane Lingering Potion&#039;],&lt;br /&gt;
	},&lt;br /&gt;
	[&#039;Tipped Arrow&#039;] = {&lt;br /&gt;
		aliases[&#039;Arrow of Splashing&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
		aliases[&#039;Tipped Arrow&#039;],&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Potions --&lt;br /&gt;
local effects = {&lt;br /&gt;
	-- durations are in the order normal, extended, enhanced&lt;br /&gt;
	{name = &#039;Regeneration&#039;, effect = &#039;&amp;amp;9Regeneration&#039;, enhanced = &#039;II&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:22&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Swiftness&#039;, effect = &#039;&amp;amp;9Speed&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Fire Resistance&#039;, effect = &#039;&amp;amp;9Fire Resistance&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Poison&#039;, effect = &#039;&amp;amp;cPoison&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;0:45&#039;, &#039;1:30&#039;, &#039;0:21&#039; }, lingering = { &#039;0:11&#039;, &#039;0:22&#039;, &#039;0:05&#039; }, arrow = { &#039;0:05&#039;, &#039;0:11&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Healing&#039;, effect = &#039;&amp;amp;9Instant Health&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Night Vision&#039;,    effect = &#039;&amp;amp;9Night Vision&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Weakness&#039;,        effect = &#039;&amp;amp;cWeakness&#039;,        durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Strength&#039;, effect = &#039;&amp;amp;9Strength&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039;}, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Slowness&#039;, effect = &#039;&amp;amp;cSlowness&#039;, enhanced = &#039;IV&#039;, &lt;br /&gt;
		durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039;, &#039;0:20&#039;}, lingering = {&#039;0:22&#039;, &#039;1:00&#039;, &#039;0:05&#039;}, arrow = { &#039;0:11&#039;, &#039;0:30&#039;, &#039;0:02&#039; }}},&lt;br /&gt;
	{ name = &#039;Leaping&#039;, effect = &#039;&amp;amp;9Jump Boost&#039;, enhanced = &#039;II&#039;, &lt;br /&gt;
		durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039;, &#039;1:30&#039; }, lingering = {&#039;0:45&#039;, &#039;2:00&#039;, &#039;0:22&#039;}, arrow = { &#039;0:22&#039;, &#039;1:00&#039;, &#039;0:11&#039; }}},&lt;br /&gt;
	{ name = &#039;Harming&#039;, effect = &#039;&amp;amp;cInstant Damage&#039;, enhanced = &#039;II&#039; },&lt;br /&gt;
	{ name = &#039;Water Breathing&#039;, effect = &#039;&amp;amp;9Water Breathing&#039;, durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Invisibility&#039;,    effect = &#039;&amp;amp;9Invisibility&#039;,    durations = { normal = { &#039;3:00&#039;, &#039;8:00&#039; }, lingering = { &#039;0:45&#039;, &#039;2:00&#039; }, arrow = { &#039;0:22&#039;, &#039;1:00&#039; }}},&lt;br /&gt;
	{ name = &#039;Slow Falling&#039;,    effect = &#039;&amp;amp;9Slow Falling&#039;,    durations = { normal = { &#039;1:30&#039;, &#039;4:00&#039; }, lingering = { &#039;0:22&#039;, &#039;1:00&#039; }, arrow = { &#039;0:11&#039;, &#039;0:30&#039; }}},&lt;br /&gt;
	{ name = &#039;Luck&#039;,  effect = &#039;&amp;amp;9Luck&#039;,   durations = { normal = { &#039;5:00&#039; }, lingering = { &#039;1:15&#039; }, arrow = { &#039;0:37&#039; }}},&lt;br /&gt;
	{ name = &#039;Decay&#039;, effect = &#039;&amp;amp;cWither II&#039;, durations = { normal = { &#039;0:40&#039; }, lingering = { &#039;0:10&#039; }, arrow = { &#039;0:05&#039; }}},&lt;br /&gt;
	{ name = &#039;the Turtle Master&#039;, text = &#039;&amp;amp;cSlowness IV ($1)/&amp;amp;9Resistance III ($1)&#039;, enhanced = &#039;&amp;amp;cSlowness VI ($1)/&amp;amp;9Resistance IV ($1)&#039;,&lt;br /&gt;
		durations = { normal = { &#039;0:20&#039;, &#039;0:40&#039;, &#039;0:20&#039; }, lingering = { &#039;0:15&#039;, &#039;0:45&#039;, &#039;0:15&#039; }, arrow = {  &#039;0:07&#039;, &#039;0:22&#039;, &#039;0:07&#039; }}},&lt;br /&gt;
	{ name = &#039;Oozing&#039;,  effect = &#039;&amp;amp;cOozing&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Infestation&#039;,  effect = &#039;&amp;amp;cInfested&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Weaving&#039;,  effect = &#039;&amp;amp;cWeaving&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}},&lt;br /&gt;
	{ name = &#039;Wind Charging&#039;,  effect = &#039;&amp;amp;cWind Charged&#039;, durations = { normal = { &#039;3:00&#039; }, lingering = { &#039;0:45&#039; }, arrow = { &#039;0:22&#039; }}}&lt;br /&gt;
}&lt;br /&gt;
local types = {&lt;br /&gt;
	{name = &#039;Potion&#039;,           durations = &#039;normal&#039;,    text = &#039;Potion of &#039;},&lt;br /&gt;
	{name = &#039;Splash Potion&#039;,    durations = &#039;normal&#039;,    text = &#039;Splash Potion of &#039;},&lt;br /&gt;
	{name = &#039;Lingering Potion&#039;, durations = &#039;lingering&#039;, text = &#039;Lingering Potion of &#039;},&lt;br /&gt;
	{name = &#039;Tipped Arrow&#039;,     durations = &#039;arrow&#039;,     text = &#039;Arrow of &#039;},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for _, effect in ipairs(effects) do&lt;br /&gt;
	for _, type in ipairs(types) do&lt;br /&gt;
		-- form name, it will be reused&lt;br /&gt;
		local name =  type.text .. effect.name&lt;br /&gt;
		local potionName = {}&lt;br /&gt;
		if type.name == &#039;Tipped Arrow&#039; then&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		else&lt;br /&gt;
		potionName = type.text .. effect.name&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- if we have durations, add times&lt;br /&gt;
		if effect.durations then&lt;br /&gt;
			local durations = effect.durations[type.durations]&lt;br /&gt;
			&lt;br /&gt;
			-- turtle master is weird, so just do a fancy string replacement&lt;br /&gt;
			if effect.text then&lt;br /&gt;
				aliases[name] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[1] ) }&lt;br /&gt;
				aliases[name .. &#039; Extended&#039;] = { name = potionName, text = effect.text:gsub( &#039;%$1&#039;, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
				aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.enhanced:gsub( &#039;%$1&#039;, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
			else&lt;br /&gt;
				-- we always have normal&lt;br /&gt;
				aliases[name] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[1] ) }&lt;br /&gt;
			&lt;br /&gt;
				-- ensure we have extended&lt;br /&gt;
				if durations[2] then&lt;br /&gt;
					aliases[name .. &#039; Extended&#039;] = { name = potionName, text = string.format( &#039;%s (%s)&#039;, effect.effect, durations[2] ) .. &#039;/&amp;amp;8Extended&#039; }&lt;br /&gt;
					&lt;br /&gt;
					-- and enhanced&lt;br /&gt;
					if effect.enhanced then&lt;br /&gt;
						aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = string.format( &#039;%s %s (%s)&#039;, effect.effect, effect.enhanced, durations[3] ) .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- otherwise its just effect, currently every potion with no duration can be enhanced&lt;br /&gt;
			aliases[name] = { name = potionName, text = effect.effect}&lt;br /&gt;
			aliases[name .. &#039; Enhanced&#039;] = { name = potionName, text = effect.effect .. &#039; &#039; .. effect.enhanced .. &#039;/&amp;amp;8Enhanced&#039; }&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- add the base potion to the any list&lt;br /&gt;
		table.insert(potionItems[type.name], aliases[name])&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- build the any lists&lt;br /&gt;
for item, potionAliases in pairs( potionItems ) do&lt;br /&gt;
	aliases[&#039;Any &#039; .. item] = potionAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = potionAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Wood --&lt;br /&gt;
local woodTypes = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Oak&#039;,&lt;br /&gt;
	    &#039;Spruce&#039;,&lt;br /&gt;
	    &#039;Birch&#039;,&lt;br /&gt;
	    &#039;Jungle&#039;,&lt;br /&gt;
	    &#039;Acacia&#039;,&lt;br /&gt;
        &#039;Dark Oak&#039;,&lt;br /&gt;
        &#039;Mangrove&#039;,&lt;br /&gt;
        &#039;Cherry&#039;,&lt;br /&gt;
        &#039;Pale Oak&#039;,&lt;br /&gt;
        &#039;Bamboo&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Crimson&#039;,&lt;br /&gt;
        &#039;Warped&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {},&lt;br /&gt;
}&lt;br /&gt;
local woodTypeWorld = {}&lt;br /&gt;
for _, world in ipairs({&#039;overworld&#039;, &#039;nether&#039;}) do&lt;br /&gt;
	local woods = woodTypes[world]&lt;br /&gt;
	for _, type in ipairs(woods) do&lt;br /&gt;
		woodTypeWorld[type] = world&lt;br /&gt;
        table.insert(woodTypes.both, type)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
local woodItems = {&lt;br /&gt;
    overworld = {&lt;br /&gt;
        &#039;Log&#039;,&lt;br /&gt;
        &#039;Wood&#039;,&lt;br /&gt;
        &#039;Stripped $1 Log&#039;,&lt;br /&gt;
        &#039;Stripped $1 Wood&#039;,&lt;br /&gt;
        &#039;Boat&#039;,&lt;br /&gt;
        &#039;Boat with Chest&#039;,&lt;br /&gt;
        &#039;Sapling&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    nether = {&lt;br /&gt;
        &#039;Stem&#039;,&lt;br /&gt;
        &#039;Hyphae&#039;,&lt;br /&gt;
        &#039;Stripped $1 Stem&#039;,&lt;br /&gt;
        &#039;Stripped $1 Hyphae&#039;,&lt;br /&gt;
    },&lt;br /&gt;
    both = {&lt;br /&gt;
		-- Any/Matching X or Y&lt;br /&gt;
        &#039;${Log,Stem}&#039;,&lt;br /&gt;
        &#039;${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Wood,Hyphae}&#039;,&lt;br /&gt;
        &#039;Stripped $1 ${Log,Stem}&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Dimensional prefixes&lt;br /&gt;
        &#039;$world Planks&#039;,&lt;br /&gt;
        &#039;$world $wood Stairs&#039;,&lt;br /&gt;
        &#039;$world $wood Slab&#039;,&lt;br /&gt;
        &#039;$world $wood Fence&#039;,&lt;br /&gt;
        &#039;$world $wood Fence Gate&#039;,&lt;br /&gt;
        &#039;$world $wood Door&#039;,&lt;br /&gt;
        &#039;$world $wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$world $wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$world $wood Button&#039;,&lt;br /&gt;
        &#039;$world $wood Sign&#039;,&lt;br /&gt;
        &#039;$world $wood Hanging Sign&#039;,&lt;br /&gt;
&lt;br /&gt;
		-- Both dimensions&lt;br /&gt;
		-- Items with non-wood variants include $wood&lt;br /&gt;
        &#039;Planks&#039;,&lt;br /&gt;
        &#039;$wood Stairs&#039;,&lt;br /&gt;
        &#039;$wood Slab&#039;,&lt;br /&gt;
        &#039;$wood Fence&#039;,&lt;br /&gt;
        &#039;Fence Gate&#039;,&lt;br /&gt;
        &#039;$wood Door&#039;,&lt;br /&gt;
        &#039;$wood Trapdoor&#039;,&lt;br /&gt;
        &#039;$wood Pressure Plate&#039;,&lt;br /&gt;
        &#039;$wood Button&#039;,&lt;br /&gt;
        &#039;Sign&#039;,&lt;br /&gt;
        &#039;Hanging Sign&#039;,&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
local woodItemWorld = {}&lt;br /&gt;
for world, items in pairs(woodItems) do&lt;br /&gt;
    for _, item in ipairs(items) do&lt;br /&gt;
		-- expand $world (should only happen in &amp;quot;both&amp;quot;)&lt;br /&gt;
        if (item:find(&#039;%$world&#039;)) and world == &#039;both&#039; then&lt;br /&gt;
            item = item:gsub(&#039;%$world &#039;, &#039;&#039;)&lt;br /&gt;
            woodItemWorld[&#039;Overworld &#039; .. item] = &#039;overworld&#039;&lt;br /&gt;
			woodItemWorld[&#039;Nether &#039; .. item] = &#039;nether&#039;&lt;br /&gt;
		else&lt;br /&gt;
			woodItemWorld[item] = world&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local woodBadItems = {&lt;br /&gt;
	[&#039;Bamboo Sapling&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Bamboo Log&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Wood&#039;] = 1,&lt;br /&gt;
	[&#039;Stripped Bamboo Log&#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local woodNameMapping = {&lt;br /&gt;
	[&#039;Mangrove Sapling&#039;] = &#039;Mangrove Propagule&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat&#039;] = &#039;Bamboo Raft&#039;,&lt;br /&gt;
	[&#039;Bamboo Boat with Chest&#039;] = &#039;Bamboo Raft with Chest&#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for item, world in pairs(woodItemWorld) do&lt;br /&gt;
	local itemName = &#039;&#039;&lt;br /&gt;
	local woodAliases = {}&lt;br /&gt;
&lt;br /&gt;
	-- real &amp;quot;linkable&amp;quot; name&lt;br /&gt;
    local realItem = item:gsub(&#039;^Overworld &#039;, &#039;&#039;)&lt;br /&gt;
    realItem = realItem:gsub(&#039;^Nether &#039;, &#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
	for _, wood in ipairs(woodTypes[world]) do&lt;br /&gt;
		-- Parse ${,} (world-select) syntax&lt;br /&gt;
		local selector = (woodTypeWorld[wood] == &#039;overworld&#039;) and &amp;quot;%1&amp;quot; or &amp;quot;%2&amp;quot;&lt;br /&gt;
		itemName = realItem:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, selector)&lt;br /&gt;
&lt;br /&gt;
		if itemName:find(&#039;%$wood&#039;) then&lt;br /&gt;
			itemName = itemName:gsub(&#039;%$wood&#039;, wood)&lt;br /&gt;
		elseif itemName:find(&#039;%$1&#039;) then&lt;br /&gt;
			itemName = itemName:gsub( &#039;%$1&#039;, wood)&lt;br /&gt;
		else&lt;br /&gt;
			itemName = wood .. &#039; &#039; .. itemName&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- special handling&lt;br /&gt;
		if woodNameMapping[itemName] then&lt;br /&gt;
			itemName = woodNameMapping[itemName]&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if not woodBadItems[itemName] then&lt;br /&gt;
			table.insert(woodAliases, itemName)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Parse ${,} (world-select) syntax&lt;br /&gt;
	item = item:gsub(&amp;quot;%${(.-),(.-)}&amp;quot;, &amp;quot;%1 or %2&amp;quot;)&lt;br /&gt;
    item = item:gsub(&#039;%$wood&#039;, &#039;Wooden&#039;)&lt;br /&gt;
    item = item:gsub(&#039;%$1 &#039;, &#039;&#039;)&lt;br /&gt;
    aliases[&#039;Any &#039; .. item] = woodAliases&lt;br /&gt;
	aliases[&#039;Matching &#039; .. item] = woodAliases&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Bedrock Edition Items --&lt;br /&gt;
local editionItems = {&lt;br /&gt;
	BE = {&lt;br /&gt;
		&#039;Acacia Fence Gate&#039;,&lt;br /&gt;
		&#039;Andesite Wall&#039;,&lt;br /&gt;
		&#039;Birch Fence Gate&#039;,&lt;br /&gt;
		&#039;Black Bed&#039;,&lt;br /&gt;
		&#039;Black Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Blue Bed&#039;,&lt;br /&gt;
		&#039;Blue Ice&#039;,&lt;br /&gt;
		&#039;Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bow&#039;,&lt;br /&gt;
		&#039;Brick Wall&#039;,&lt;br /&gt;
		&#039;Brown Bed&#039;,&lt;br /&gt;
		&#039;Brown Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Bucket of Pufferfish&#039;,&lt;br /&gt;
		&#039;Bucket of Tropical Fish&#039;,&lt;br /&gt;
		&#039;Cat Spawn Egg&#039;,&lt;br /&gt;
		&#039;Chest&#039;,&lt;br /&gt;
		&#039;Cobbled Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Crimson Fence Gate&#039;,&lt;br /&gt;
		&#039;Crying Obsidian&#039;,&lt;br /&gt;
		&#039;Cyan Bed&#039;,&lt;br /&gt;
		&#039;Cyan Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Dark Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Deepslate Brick Wall&#039;,&lt;br /&gt;
		&#039;Deepslate Tile Wall&#039;,&lt;br /&gt;
		&#039;Desert Village Map&#039;,&lt;br /&gt;
		&#039;Diorite Wall&#039;,&lt;br /&gt;
		&#039;Enchanting Table&#039;,&lt;br /&gt;
		&#039;End Gateway&#039;,&lt;br /&gt;
		&#039;End Portal Frame&#039;,&lt;br /&gt;
		&#039;End Portal&#039;,&lt;br /&gt;
		&#039;End Rod&#039;,&lt;br /&gt;
		&#039;End Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Ender Chest&#039;,&lt;br /&gt;
		&#039;Glass Pane&#039;,&lt;br /&gt;
		&#039;Glowstone&#039;,&lt;br /&gt;
		&#039;Granite Wall&#039;,&lt;br /&gt;
		&#039;Gray Bed&#039;,&lt;br /&gt;
		&#039;Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Green Bed&#039;,&lt;br /&gt;
		&#039;Green Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Honey Block&#039;,&lt;br /&gt;
		&#039;Horn Coral Block&#039;,&lt;br /&gt;
		&#039;Iron Bars&#039;,&lt;br /&gt;
		&#039;Jack o\&#039;Lantern&#039;,&lt;br /&gt;
		&#039;Jungle Explorer Map&#039;,&lt;br /&gt;
		&#039;Jungle Fence Gate&#039;,&lt;br /&gt;
		&#039;Jungle Leaves&#039;,&lt;br /&gt;
		&#039;Lava&#039;,&lt;br /&gt;
		&#039;Leather Horse Armor&#039;,&lt;br /&gt;
		&#039;Light&#039;,&lt;br /&gt;
		&#039;Light Blue Bed&#039;,&lt;br /&gt;
		&#039;Light Blue Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Light Gray Bed&#039;,&lt;br /&gt;
		&#039;Light Gray Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Lime Bed&#039;,&lt;br /&gt;
		&#039;Lime Stained Glass Pane&#039;,&lt;br /&gt;
        &#039;Lodestone Compass&#039;,&lt;br /&gt;
        &#039;Magenta Bed&#039;,&lt;br /&gt;
		&#039;Magenta Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Magma Block&#039;,&lt;br /&gt;
		&#039;Map&#039;,&lt;br /&gt;
		&#039;Minecart with Command Block&#039;,&lt;br /&gt;
		&#039;Monster Spawner&#039;,&lt;br /&gt;
		&#039;Mossy Cobblestone Wall&#039;,&lt;br /&gt;
		&#039;Mossy Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Mud Brick Wall&#039;,&lt;br /&gt;
		&#039;Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Oak Fence Gate&#039;,&lt;br /&gt;
		&#039;Observer&#039;,&lt;br /&gt;
		&#039;Ocean Explorer Map&#039;,&lt;br /&gt;
		&#039;Ochre Froglight&#039;,&lt;br /&gt;
		&#039;Orange Bed&#039;,&lt;br /&gt;
		&#039;Orange Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Panda Spawn Egg&#039;,&lt;br /&gt;
		&#039;Pearlescent Froglight&#039;,&lt;br /&gt;
		&#039;Pink Bed&#039;,&lt;br /&gt;
		&#039;Pink Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Plains Village Map&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Wall&#039;,&lt;br /&gt;
		&#039;Polished Blackstone Brick Wall&#039;,&lt;br /&gt;
		&#039;Polished Deepslate Wall&#039;,&lt;br /&gt;
		&#039;Polished Tuff Wall&#039;,&lt;br /&gt;
		&#039;Prismarine Wall&#039;,&lt;br /&gt;
		&#039;Purple Bed&#039;,&lt;br /&gt;
		&#039;Purple Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Red Bed&#039;,&lt;br /&gt;
		&#039;Red Nether Brick Wall&#039;,&lt;br /&gt;
		&#039;Red Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Red Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Resin Brick Wall&#039;,&lt;br /&gt;
		&#039;Sandstone Wall&#039;,&lt;br /&gt;
		&#039;Savanna Village Map&#039;,&lt;br /&gt;
		&#039;Scaffolding&#039;,&lt;br /&gt;
		&#039;Sea Lantern&#039;,&lt;br /&gt;
		&#039;Shroomlight&#039;,&lt;br /&gt;
		&#039;Snowy Village Map&#039;,&lt;br /&gt;
		&#039;Spruce Fence Gate&#039;,&lt;br /&gt;
		&#039;Stone Brick Wall&#039;,&lt;br /&gt;
		&#039;Stonecutter&#039;,&lt;br /&gt;
		&#039;Structure Void&#039;,&lt;br /&gt;
		&#039;Swamp Explorer Map&#039;,&lt;br /&gt;
		&#039;Taiga Village Map&#039;,&lt;br /&gt;
		&#039;Trapped Chest&#039;,&lt;br /&gt;
		&#039;Trial Explorer Map&#039;,&lt;br /&gt;
		&#039;Tuff Wall&#039;,&lt;br /&gt;
		&#039;Tuff Brick Wall&#039;,&lt;br /&gt;
		&#039;Verdant Froglight&#039;,&lt;br /&gt;
		&#039;Wandering Trader Spawn Egg&#039;,&lt;br /&gt;
		&#039;Warped Fence Gate&#039;,&lt;br /&gt;
		&#039;White Bed&#039;,&lt;br /&gt;
		&#039;White Stained Glass Pane&#039;,&lt;br /&gt;
		&#039;Woodland Explorer Map&#039;,&lt;br /&gt;
		&#039;Yellow Bed&#039;,&lt;br /&gt;
		&#039;Yellow Stained Glass Pane&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	LCE = {&lt;br /&gt;
		&#039;Shrub&#039;&lt;br /&gt;
	},&lt;br /&gt;
	    SM = {&lt;br /&gt;
    	&#039;Compass&#039;,&lt;br /&gt;
    	&#039;Diamond Axe&#039;,&lt;br /&gt;
    	&#039;Diamond Hoe&#039;,&lt;br /&gt;
    	&#039;Diamond Pickaxe&#039;,&lt;br /&gt;
    	&#039;Diamond Shovel&#039;,&lt;br /&gt;
    	&#039;Diamond Sword&#039;,&lt;br /&gt;
    	&#039;Flint and Steel&#039;,&lt;br /&gt;
    	&#039;Potion of Invisibility&#039;,&lt;br /&gt;
    	&#039;Potion of Leaping&#039;,&lt;br /&gt;
    	&#039;Potion of Swiftness&#039;,&lt;br /&gt;
    	&#039;TNT&#039;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
for edition, items in pairs(editionItems) do&lt;br /&gt;
	for _, item in ipairs(items) do&lt;br /&gt;
		local name = item .. &#039; &#039; .. edition&lt;br /&gt;
		aliases[name] = { title = item, name = name }&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Light blocks --&lt;br /&gt;
for level = 0, 15 do&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level] = { title = &amp;quot;&amp;amp;dLight&amp;quot;, name = &amp;quot;Light &amp;quot; .. level }&lt;br /&gt;
aliases[&amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot;] = { title = &amp;quot;Light&amp;quot;, name = &amp;quot;Light &amp;quot; .. level .. &amp;quot; BE&amp;quot; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Pottery Sherds --&lt;br /&gt;
local pottery_sherds = { &lt;br /&gt;
	{ &#039;Angler&#039; },&lt;br /&gt;
	{ &#039;Arms Up&#039; },&lt;br /&gt;
	{ &#039;Archer&#039; },&lt;br /&gt;
	{ &#039;Blade&#039; },&lt;br /&gt;
	{ &#039;Brewer&#039; },&lt;br /&gt;
	{ &#039;Burn&#039; },&lt;br /&gt;
	{ &#039;Danger&#039; },&lt;br /&gt;
	{ &#039;Explorer&#039; },&lt;br /&gt;
	{ &#039;Flow&#039; },&lt;br /&gt;
	{ &#039;Friend&#039; },&lt;br /&gt;
	{ &#039;Guster&#039; },&lt;br /&gt;
	{ &#039;Heart&#039; },&lt;br /&gt;
	{ &#039;Heartbreak&#039; },&lt;br /&gt;
	{ &#039;Howl&#039; },&lt;br /&gt;
	{ &#039;Miner&#039; },&lt;br /&gt;
	{ &#039;Mourner&#039; },&lt;br /&gt;
	{ &#039;Plenty&#039; },&lt;br /&gt;
	{ &#039;Prize&#039; },&lt;br /&gt;
	{ &#039;Scrape&#039; },&lt;br /&gt;
	{ &#039;Sheaf&#039; },&lt;br /&gt;
	{ &#039;Shelter&#039; },&lt;br /&gt;
	{ &#039;Skull&#039; },&lt;br /&gt;
	{ &#039;Snort&#039; },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local potterySherdAliases = {}&lt;br /&gt;
for _, pottery_sherd in ipairs(pottery_sherds) do&lt;br /&gt;
	local name = pottery_sherd[1] .. &#039; Pottery Sherd&#039;&lt;br /&gt;
	aliases[name] = { title = &#039;&amp;amp;e&#039; .. name , name = name }&lt;br /&gt;
	table.insert(potterySherdAliases, aliases[name])&lt;br /&gt;
end&lt;br /&gt;
table.insert(potterySherdAliases, &#039;Brick&#039;)&lt;br /&gt;
&lt;br /&gt;
aliases[&#039;Any Pottery Sherd&#039;] = potterySherdAliases&lt;br /&gt;
&lt;br /&gt;
-- Smithing Templates --&lt;br /&gt;
local smithing_templates = {&lt;br /&gt;
	{ &#039;Netherite Upgrade&#039;,    &#039;Diamond Equipment&#039;, &#039;Netherite Ingot&#039;,  &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Bolt Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Coast Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Dune Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Eye Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Flow Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Host Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Raiser Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Rib Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Sentry Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Shaper Armor Trim&#039;,    &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Silence Armor Trim&#039;,   &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;d&#039; },&lt;br /&gt;
	{ &#039;Snout Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Spire Armor Trim&#039;,     &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Tide Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Vex Armor Trim&#039;,       &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Ward Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;b&#039; },&lt;br /&gt;
	{ &#039;Wayfinder Armor Trim&#039;, &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
	{ &#039;Wild Armor Trim&#039;,      &#039;Armor&#039;,             &#039;Ingot &amp;amp; Crystals&#039;, &#039;&amp;amp;e&#039; },&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
local smithing_template_array = {}&lt;br /&gt;
local armor_trims_array = {}&lt;br /&gt;
for _,smithing_template in pairs(smithing_templates) do&lt;br /&gt;
    local rarityColor = smithing_template[4]&lt;br /&gt;
	local current_alias = {&lt;br /&gt;
		title = rarityColor .. smithing_template[1],&lt;br /&gt;
		name = smithing_template[1] .. &#039; Smithing Template&#039;,&lt;br /&gt;
		text = &#039;&amp;amp;7&#039; .. &#039;Smithing Template&#039; .. &#039;//Applies to:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[2] .. &#039;/&amp;amp;7Ingredients:/&amp;amp;#160;&amp;amp;9&#039; .. smithing_template[3],&lt;br /&gt;
	}&lt;br /&gt;
	aliases[smithing_template[1]] = current_alias&lt;br /&gt;
	aliases[smithing_template[1] .. &#039; Smithing Template&#039;] = current_alias&lt;br /&gt;
	table.insert(smithing_template_array,current_alias)&lt;br /&gt;
	if string.find(smithing_template[1],&#039; Armor Trim$&#039;) then&lt;br /&gt;
		table.insert(armor_trims_array,current_alias)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
aliases[&#039;Matching Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Any Smithing Template&#039;] = smithing_template_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Matching Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
aliases[&#039;Any Armor Trim Smithing Template&#039;] = armor_trims_array&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return aliases&lt;/div&gt;</summary>
		<author><name>Gutin</name></author>
	</entry>
</feed>