Module:Inventory slot/Aliases: Difference between revisions

From Create: Minecraft Mod Wiki
Jump to navigation Jump to search
Create: Minecraft Mod Wiki>Joker876
No edit summary
Create: Minecraft Mod Wiki>Joker876
No edit summary
Line 63: Line 63:
['Mechanical Press Compacting'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Compacting//&cRequires Basin to be/under the Press!', image = 'Mechanical Press Compacting UI icon' },
['Mechanical Press Compacting'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Compacting//&cRequires Basin to be/under the Press!', image = 'Mechanical Press Compacting UI icon' },
['Mechanical Press Pressing'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Pressing', image = 'Mechanical Press Pressing UI icon' },
['Mechanical Press Pressing'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Pressing', image = 'Mechanical Press Pressing UI icon' },
['Milling'] = { name = 'Millstone', title = '&7Millstone', image = 'Millstone UI icon' },
['Milling'] = { name = 'Millstone', title = '&fMilling', image = 'Millstone UI icon' },
['Mechanical Crafting'] = { name = 'Mechanical Crafter', title = '&6Mechanical Crafting', image = 'Mechanical Crafter' },
['Mechanical Crafting'] = { name = 'Mechanical Crafter', title = '&6Mechanical Crafting', image = 'Mechanical Crafter' },
['Sawing'] = { name = 'Mechanical Saw', title = '&fSawing', image = 'Mechanical Saw' },
['Sawing'] = { name = 'Mechanical Saw', title = '&fSawing', image = 'Mechanical Saw' },

Revision as of 15:22, 21 April 2021

Documentation for this module may be created at Module:Inventory slot/Aliases/doc

local coloredDyes = {
	'Orange Dye', 'Magenta Dye', 'Light Blue Dye', 'Yellow Dye', 'Lime Dye',
	'Pink Dye', 'Gray Dye', 'Light Gray Dye', 'Cyan Dye', 'Purple Dye',
	'Blue Dye', 'Brown Dye', 'Green Dye',
	'Red Dye', 'Black Dye',
}
local aliases = {
	-- Common fuel types for furnace --
	['Any fuel'] = { 'Coal', 'Charcoal', { title = 'Log', name = 'Oak Log' }, { title = 'Overworld Planks', name = 'Oak Planks' }, 'Block of Coal' },
	['Any leather armor'] = { 'Leather Cap', 'Leather Tunic', 'Leather Pants', 'Leather Boots' },
	['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' },
	['Any chainmail armor'] = { 'Chainmail Helmet', 'Chainmail Chestplate', 'Chainmail Leggings', 'Chainmail Boots' },
	['Any iron armor'] = { 'Iron Helmet', 'Iron Chestplate', 'Iron Leggings', 'Iron Boots' },
	['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' },
	['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
	
    -- stones --
	['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
	['Any stone-tier block'] = { 'Cobblestone', 'Blackstone', 'Cobbled Deepslate' },
	['Any stone'] = { 'Stone', 'Andesite', 'Diorite', 'Granite', 'Limestone', 'Weathered Limestone', 'Gabbro', 'Scoria', 'Dark Scoria', 'Dolomite', 'Polished Andesite', 'Polished Diorite', 'Polished Granite', 'Polished Limestone', 'Polished Weathered Limestone', 'Polished Gabbro', 'Polished Scoria', 'Polished Dark Scoria', 'Polished Dolomite' },

	-- Display names --
	['Broken Elytra'] = { title = '&eElytra', name = 'Broken Elytra' },
	['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Clay (ball)'] = { title = 'Clay', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Banner Pattern Flower'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
	['Banner Pattern Flower Charge'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
	['Banner Pattern Creeper Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
	['Banner Pattern Creeper'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
	['Banner Pattern Bordure Indented'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Bordure Indented'},
	['Banner Pattern Field Masoned'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Field Masoned'},
	['Banner Pattern Skull Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
	['Banner Pattern Skull'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
	['Banner Pattern Thing'] = { title = '&dBanner Pattern', name = 'Banner Pattern', text = '&7Thing'},
	['Banner Pattern Mojang'] = { title = '&dBanner Pattern', name = 'Banner Pattern', text = '&7Thing'},
	['Banner Pattern Globe'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Globe'},
	['Banner Pattern Snout'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Snout'},
	['Banner Pattern Piglin'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Snout'},
	['Button'] = { title = 'Button', name = 'Stone Button'},
	['Wooden Button'] = { title = 'Button', name = 'Oak Button'},
	['Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Arrow Loaded Crossbow' },
	['Damaged Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Arrow Loaded Crossbow' },
	['Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Firework Loaded Crossbow' },
	['Damaged Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Firework Loaded Crossbow' },
	['Illager Banner'] = { title = '&6&oIllager Banner', name = 'Illager Banner', text = 
		'&7Cyan Lozenge/&7Light Gray Base/&7Gray Pale/&7Light Gray Bordure/&7Black Fess/&7Light Gray Per Fess'},
	['Jigsaw Block'] = { title = '&dJigsaw Block', name = 'Jigsaw Block' },
	['Half Filled Bundle'] = { title = 'Bundle', name = 'Half Filled Bundle' },
	['Filled Bundle'] = { title = 'Bundle', name = 'Filled Bundle' },

	-- Weapons --
	['Trident'] = { name = 'Trident', text = '/&7 When in main hand:/ &21.1 Attack Speed/ &29 Attack Damage'},
	['Trident BE'] = { name = 'Trident', text = '/&9 +8 Attack Damage'},
	
	-- Fake Items
	['Bulk Washing'] = { name = 'Bulk Washing', title = '&9Bulk Washing', image = 'Bulk Washing icon' },
	['Bulk Smoking'] = { name = 'Bulk Smoking', title = '&6Bulk Smoking', image = 'Bulk Smoking icon' },
	['Bulk Blasting'] = { name = 'Bulk Blasting', title = '&cBulk Blasting', image = 'Bulk Blasting icon' },
	['Mechanical Mixer Crafting'] = { name = 'Mechanical Mixer', title = '&6Mechanical Mixer', text = '&7Automated Shapeless Crafting//&cRequires Basin to be/under the Mixer!', image = 'Mechanical Mixer Crafting UI icon' },
	['Mechanical Mixer Mixing'] = { name = 'Mechanical Mixer', title = '&6Mechanical Mixer', text = '&7Mixing//&cRequires Basin to be/under the Mixer!', image = 'Mechanical Mixer Mixing UI icon' },
	['Mechanical Mixer Brewing'] = { name = 'Mechanical Mixer', title = '&6Mechanical Mixer', text = '&7Automated Brewing//&cRequires Basin to be/under the Mixer!', image = 'Mechanical Mixer Brewing UI icon' },
	['Mechanical Press Crafting'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Automated Packing//&cRequires Basin to be/under the Press!', image = 'Mechanical Press Crafting UI icon' },
	['Mechanical Press Compacting'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Compacting//&cRequires Basin to be/under the Press!', image = 'Mechanical Press Compacting UI icon' },
	['Mechanical Press Pressing'] = { name = 'Mechanical Press', title = '&6Mechanical Press', text = '&7Pressing', image = 'Mechanical Press Pressing UI icon' },
	['Milling'] = { name = 'Millstone', title = '&fMilling', image = 'Millstone UI icon' },
	['Mechanical Crafting'] = { name = 'Mechanical Crafter', title = '&6Mechanical Crafting', image = 'Mechanical Crafter' },
	['Sawing'] = { name = 'Mechanical Saw', title = '&fSawing', image = 'Mechanical Saw' },
	['Heated'] = { name = 'Blaze Burner', title = '&6Heating Required!', image = 'Fire' },
	['Super-Heated'] = { name = 'Blaze Burner', title = '&9Super Heating Required!', image = 'Soul Fire' },
}

-- Tooltip colors --
local yellowTooltips = {
	'Creeper Head',
	'Damaged Elytra',
	'Dragon Head',
	'Dragon\'s Breath',
	'Elytra',
	'Head',
	'Heart of the Sea',
	'Player Head',
	'Skeleton Skull',
	'Totem of Undying',
	'Wither Skeleton Skull',
	'Zombie Head',
}
for _, name in ipairs( yellowTooltips ) do
	aliases[name] = { title = '&e', name = name }
end

local aquaTooltips = {
	'Beacon',
	'Conduit',
	'Golden Apple',
}
for _, name in ipairs( aquaTooltips ) do
	aliases[name] = { title = '&b', name = name }
end

local lightPurpleTooltips = {
	'Dragon Egg',
	'Structure Block',
}
for _, name in ipairs( lightPurpleTooltips ) do
	aliases[name] = { title = '&d', name = name }
end

local orangeItalicTooltips = {
	'Ominous Banner',
}
for _, name in ipairs( orangeItalicTooltips ) do
	aliases[name] = { title = '&6&o', name = name }
end

-- Tools and weapons --
local tools = {
	{'Wooden', 'Sword', 1.6, 4 },
	{'Stone', 'Sword', 1.6, 5 },
	{'Iron', 'Sword', 1.6, 6 },
	{'Golden', 'Sword', 1.6, 4 },
	{'Diamond', 'Sword', 1.6, 7 },
	{'Netherite', 'Sword', 1.6, 8 },
	
	{'Wooden', 'Pickaxe', 1.2, 2 },
	{'Stone', 'Pickaxe', 1.2, 3 },
	{'Iron', 'Pickaxe', 1.2, 4 },
	{'Golden', 'Pickaxe', 1.2, 2 },
	{'Diamond', 'Pickaxe', 1.2, 5 },
	{'Netherite', 'Pickaxe', 1.2, 6 },
	
	{'Wooden', 'Axe', 0.8, 7 },
	{'Stone', 'Axe', 0.8, 9 },
	{'Iron', 'Axe', 0.9, 9 },
	{'Golden', 'Axe', 1, 7 },
	{'Diamond', 'Axe', 1, 9 },
	{'Netherite', 'Axe', 1, 10 },
	
	{'Wooden', 'Shovel', 1, 2.5 },
	{'Stone', 'Shovel', 1, 3.5 },
	{'Iron', 'Shovel', 1, 4.5 },
	{'Golden', 'Shovel', 1, 2.5 },
	{'Diamond', 'Shovel', 1, 5.5 },
	{'Netherite', 'Shovel', 1.6, 6.5 },
	
	{'Wooden', 'Hoe', 1, 1 },
	{'Stone', 'Hoe', 2, 1 },
	{'Iron', 'Hoe', 3, 1 },
	{'Golden', 'Hoe', 1, 1 },
	{'Diamond', 'Hoe', 4, 1 },
	{'Netherite', 'Hoe', 4, 1 }
}

local materialGroups = {}
local toolGroups = {}

for _, toolProps in ipairs( tools ) do
	local aliasName = toolProps[1] .. ' ' .. toolProps[2]
	local damagedName = 'Damaged ' .. aliasName
	local text = '/&7When in main hand:/ &2' .. toolProps[3] .. ' Attack Speed/ &2' .. toolProps[4] .. ' Attack Damage'
	aliases[aliasName] = { title = aliasName, name = aliasName, text = text }
	-- add damaged here as well so it gets the proper tooltip
	aliases[damagedName] = { title = aliasName, name = damagedName, text = text }
	
	local materialGroup = toolProps[1]:lower();
	local toolGroup = toolProps[2]:lower();
	
	if toolProps[2] ~= 'Sword' then
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end
		table.insert( materialGroups[materialGroup], aliases[aliasName] )
	end
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end
	table.insert( toolGroups[toolGroup], aliases[aliasName] )
end

for materialGroup, items in pairs( materialGroups ) do
	aliases['Any ' .. materialGroup .. ' tools'] = items
end

for toolGroup, items in pairs( toolGroups ) do
	aliases['Any ' .. toolGroup] = items
end

-- Tools and weapons in Bedrock Edition --
local toolsBE = {
	{'Wooden', 'Sword', 4 },
	{'Stone', 'Sword', 5 },
	{'Iron', 'Sword', 6 },
	{'Golden', 'Sword', 4 },
	{'Diamond', 'Sword', 7 },
	{'Netherite', 'Sword', 8 },
	
	{'Wooden', 'Pickaxe', 2 },
	{'Stone', 'Pickaxe', 3 },
	{'Iron', 'Pickaxe', 4 },
	{'Golden', 'Pickaxe', 2 },
	{'Diamond', 'Pickaxe', 5 },
	{'Netherite', 'Pickaxe', 6 },
	
	{'Wooden', 'Axe', 3 },
	{'Stone', 'Axe', 4 },
	{'Iron', 'Axe', 5 },
	{'Golden', 'Axe', 3 },
	{'Diamond', 'Axe', 6 },
	{'Netherite', 'Axe', 7 },
	
	{'Wooden', 'Shovel', 1 },
	{'Stone', 'Shovel', 2 },
	{'Iron', 'Shovel', 3 },
	{'Golden', 'Shovel', 1 },
	{'Diamond', 'Shovel', 4 },
	{'Netherite', 'Shovel', 5 },
	
	{'Wooden', 'Hoe', 2 },
	{'Stone', 'Hoe', 3 },
	{'Iron', 'Hoe', 4 },
	{'Golden', 'Hoe', 2 },
	{'Diamond', 'Hoe', 5 },
	{'Netherite', 'Hoe', 6 }
}

for _, toolProps in ipairs( toolsBE ) do
	local aliasName = toolProps[1] .. ' ' .. toolProps[2]
	aliases[aliasName .. ' BE'] = { title = aliasName, name = aliasName, text = '/&9+' .. toolProps[3] .. ' Attack Damage'}
end

local fluidAmounts = {
	[1000]= nil,
	[500]= 10,
	[250]= 6,
	[100]= 5,
	[25]= 4,
}
local fluids = {
	{'Water', { 1000, 500, 250 } },
	{'Lava', {1000, 250, 100} },
	{"Milk", {1000, 250} },
	{"Builder's Tea", {500, 250} },
	{"Chocolate", {1000, 250} },
	{"Potion of Strength", {1000, 250, 25} },
	{"Potion of Night Vision", {1000, 250, 25} },
	{"Potion of Instant Damage", {1000, 250, 25} },
}
for _, name in ipairs( fluids ) do
	for _, amount in ipairs( name[2] ) do
		aliases[amount..'mB of '..name[1]] = {
			title=name[1]..' &6'..amount..'mB', 
			name=name[1],
			link=name[1],
			image=fluidAmounts[amount] and name[1]..' (fluid) ('..fluidAmounts[amount]..'px)' or name[1]..' (fluid)',
		}
	end
end

-- Lists of item variants --
local itemVariants = {
	['Dye'] = mw.clone( coloredDyes ),
	['Colored Dye'] = coloredDyes,
	['Dyed Wool'] = {
		'Orange Wool', 'Magenta Wool', 'Light Blue Wool', 'Yellow Wool', 'Lime Wool',
		'Pink Wool', 'Gray Wool', 'Light Gray Wool', 'Cyan Wool', 'Purple Wool',
		'Blue Wool', 'Brown Wool', 'Green Wool', 'Red Wool', 'Black Wool',
	},
	['Dyed Bed'] = {
		'Orange Bed', 'Magenta Bed', 'Light Blue Bed', 'Yellow Bed', 'Lime Bed',
		'Pink Bed', 'Gray Bed', 'Light Gray Bed', 'Cyan Bed', 'Purple Bed',
		'Blue Bed', 'Brown Bed', 'Green Bed', 'Red Bed', 'Black Bed',
	},
	['Dyed Carpet'] = {
		'Orange Carpet', 'Magenta Carpet', 'Light Blue Carpet', 'Yellow Carpet', 'Lime Carpet',
		'Pink Carpet', 'Gray Carpet', 'Light Gray Carpet', 'Cyan Carpet', 'Purple Carpet',
		'Blue Carpet', 'Brown Carpet', 'Green Carpet', 'Red Carpet', 'Black Carpet',
	},
	['Dyed Terracotta'] = {
		'White Terracotta', 'Orange Terracotta', 'Magenta Terracotta', 'Light Blue Terracotta',
		'Yellow Terracotta', 'Lime Terracotta', 'Pink Terracotta', 'Gray Terracotta',
		'Light Gray Terracotta', 'Cyan Terracotta', 'Purple Terracotta', 'Blue Terracotta',
		'Brown Terracotta', 'Green Terracotta', 'Red Terracotta', 'Black Terracotta',
	},
	['Dyed Candle'] = {
		'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle',
		'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle',
		'Light Gray Candle', 'Cyan Candle', 'Purple Candle', 'Blue Candle',
		'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle',
	},
	['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion' },
	['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
	['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Quartz Pillar' },
	['Red Sandstone'] = { 'Red Sandstone', 'Cut Red Sandstone', 'Chiseled Red Sandstone', 'Smooth Red Sandstone' },
	['Sandstone'] = { 'Sandstone', 'Cut Sandstone', 'Chiseled Sandstone', 'Smooth Sandstone' },
	['Stone Bricks'] = { 'Stone Bricks', 'Mossy Stone Bricks', 'Cracked Stone Bricks', 'Chiseled Stone Bricks' },
	['Stone Slab'] = { 'Stone Slab', 'Smooth Stone Slab', 'Cobblestone Slab', 'Mossy Cobblestone Slab', 'Stone Brick Slab', 'Mossy Stone Brick Slab', 'Andesite Slab', 'Polished Andesite Slab',
		'Diorite Slab', 'Polished Diorite Slab', 'Granite Slab', 'Polished Granite Slab', 'Sandstone Slab', 'Cut Sandstone Slab', 'Smooth Sandstone Slab', 'Red Sandstone Slab', 'Cut Red Sandstone Slab', 
		'Smooth Red Sandstone Slab', 'Brick Slab', { title = 'Prismarine Slab', name = 'Prismarine Slab.gif' }, 'Prismarine Brick Slab', 'Dark Prismarine Slab', 'Nether Brick Slab', 'Red Nether Brick Slab', 'Quartz Slab', 
		'Smooth Quartz Slab', 'Purpur Slab', 'End Stone Brick Slab', 'Petrified Oak Slab', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab', 'Cobbled Deepslate Slab', 'Deepslate Brick Slab', 
		'Deepslate Tile Slab', 'Polished Deepslate Slab' },
	['Stone Stairs'] = { 'Stone Stairs', 'Cobblestone Stairs', 'Mossy Cobblestone Stairs', 'Stone Brick Stairs', 'Mossy Stone Brick Stairs', 'Andesite Stairs', 'Polished Andesite Stairs', 
		'Diorite Stairs', 'Polished Diorite Stairs', 'Granite Stairs', 'Polished Granite Stairs', 'Sandstone Stairs', 'Smooth Sandstone Stairs', 'Red Sandstone Stairs', 'Smooth Red Sandstone Stairs', 
		'Brick Stairs', { title = 'Prismarine Stairs', name = 'Prismarine Stairs.gif' }, 'Prismarine Brick Stairs', 'Dark Prismarine Stairs', 'Nether Brick Stairs', 'Red Nether Brick Stairs', 'Quartz Stairs', 'Smooth Quartz Stairs', 'Purpur Stairs', 
		'End Stone Brick Stairs', 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs', 'Cobbled Deepslate Stairs', 'Deepslate Brick Stairs', 'Deepslate Tile Stairs', 
		'Polished Deepslate Stairs' },
	['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' },
	['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' },
	['Tulip'] = { 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip' },
	['Prismarine'] = { { title = 'Prismarine', name = 'Prismarine.gif' }, 'Prismarine Bricks', 'Dark Prismarine' },
	['Ore'] = { 'Coal Ore', 'Iron Ore', 'Gold Ore', 'Lapis Lazuli Ore', 'Redstone Ore', 'Emerald Ore', 'Diamond Ore', 'Nether Quartz Ore', 'Nether Gold Ore', 'Deepslate Coal Ore', 
		'Deepslate Copper Ore', 'Deepslate Emerald Ore', 'Deepslate Iron Ore', 'Deepslate Gold Ore', 'Deepslate Lapis Lazuli Ore', 'Deepslate Redstone Ore', 'Deepslate Diamond Ore'},
	['Dead Coral Block'] = { 'Dead Tube Coral Block', 'Dead Brain Coral Block', 'Dead Bubble Coral Block', 'Dead Fire Coral Block', 'Dead Horn Coral Block' },
	['Coral Block'] = { 'Tube Coral Block', 'Brain Coral Block', 'Bubble Coral Block', 'Fire Coral Block', 'Horn Coral Block' },
	['Dead Coral'] = { 'Dead Tube Coral', 'Dead Brain Coral', 'Dead Bubble Coral', 'Dead Fire Coral', 'Dead Horn Coral' },
	['Dead Coral Fan'] = { 'Dead Tube Coral Fan', 'Dead Brain Coral Fan', 'Dead Bubble Coral Fan', 'Dead Fire Coral Fan', 'Dead Horn Coral Fan' },
	['Coral'] = { 'Tube Coral', 'Brain Coral', 'Bubble Coral', 'Fire Coral', 'Horn Coral' },
	['Coral Fan'] = { 'Tube Coral Fan', 'Brain Coral Fan', 'Bubble Coral Fan', 'Fire Coral Fan', 'Horn Coral Fan' },
	['Wall'] = { 'Cobblestone Wall', 'Mossy Cobblestone Wall', 'Stone Brick Wall', 'Mossy Stone Brick Wall', 'Andesite Wall', 'Diorite Wall', 'Granite Wall', 'Sandstone Wall', 
		'Red Sandstone Wall', 'Brick Wall', { title = 'Prismarine Wall', name = 'Prismarine Wall.gif' }, 'Nether Brick Wall', 'Red Nether Brick Wall', 'End Stone Brick Wall', 'Blackstone Wall', 'Polished Blackstone Wall', 
		'Polished Blackstone Brick Wall', 'Cobbled Deepslate Wall', 'Deepslate Brick Wall', 'Deepslate Tile Wall', 'Polished Deepslate Wall' },
	['Torch'] = { 'Torch', 'Soul Torch' },
	['Lantern'] = { 'Lantern', 'Soul Lantern' },
	['Fungus'] = { 'Crimson Fungus', 'Warped Fungus' },
	['Fungi'] = { 'Crimson Fungus', 'Warped Fungus' },
	['Roots'] = { 'Crimson Roots', 'Warped Roots' },
	['Nylium'] = { 'Crimson Nylium', 'Warped Nylium' },
	['Soul Sand'] = { 'Soul Sand', 'Soul Soil' },
	['Campfire'] = { 'Campfire', 'Soul Campfire' },
	['Blackstone'] = { 'Blackstone', 'Polished Blackstone', 'Chiseled Polished Blackstone', 'Polished Blackstone Bricks', 'Cracked Polished Blackstone Bricks' },
	['Stone Button'] = { 'Stone Button', 'Polished Blackstone Button' },
	['Stone Pressure Plate'] = { 'Stone Pressure Plate', 'Polished Blackstone Pressure Plate' },
	['Nether Wood Pressure Plate'] = { 'Crimson Pressure Plate', 'Warped Pressure Plate' },
	['Nether Wood Fence'] = { 'Crimson Fence', 'Warped Fence' },
	['Nether Wood Trapdoor'] = { 'Crimson Trapdoor', 'Warped Trapdoor' },
	['Nether Wood Fence Gate'] = { 'Crimson Fence Gate', 'Warped Fence Gate' },
	['Nether Wood Stairs'] = { 'Crimson Stairs', 'Warped Stairs' },
	['Nether Wood Door'] = { 'Crimson Door', 'Warped Door' },
	['Nether Wood Sign'] = { 'Crimson Sign', 'Warped Sign' },
	['Candle'] = { 'Candle', 'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle', 'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle', 'Light Gray Candle', 
		'Cyan Candle', 'Purple Candle', 'Blue Candle', 'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle' },
	['Copper Block'] = { 'Copper Block', 'Exposed Copper Block', 'Weathered Copper Block', 'Oxidized Copper Block', 'Waxed Copper Block', 'Waxed Exposed Copper Block', 'Waxed Weathered Copper Block' },
	['Cut Copper'] = { 'Cut Copper', 'Exposed Cut Copper', 'Weathered Cut Copper', 'Oxidized Cut Copper', 'Waxed Cut Copper', 'Waxed Exposed Cut Copper', 'Waxed Weathered Cut Copper' },
	['Cut Copper Stairs'] = { 'Cut Copper Stairs', 'Exposed Cut Copper Stairs', 'Weathered Cut Copper Stairs', 'Oxidized Cut Copper Stairs', 'Waxed Cut Copper Stairs', 
		'Waxed Exposed Cut Copper Stairs', 'Waxed Weathered Cut Copper Stairs' },
	['Cut Copper Slab'] = { 'Cut Copper Slab', 'Exposed Cut Copper Slab', 'Weathered Cut Copper Slab', 'Oxidized Cut Copper Slab', 'Waxed Cut Copper Slab', 'Waxed Exposed Cut Copper Slab',
		'Waxed Weathered Cut Copper Slab' },
}
table.insert( itemVariants['Dye'], 1, 'White Dye' )
for aliasName, aliasItems in pairs( itemVariants ) do
	aliases['Any ' .. aliasName] = aliasItems
	aliases['Matching ' .. aliasName] = aliasItems
end

-- Copper --
local copperstuff = {
	['Matching (Weathered) Copper Block'] = {'Copper Block', 'Lightly Weathered Copper Block', 'Semi-Weathered Copper Block', 'Weathered Copper BlocK'},
	['Matching (Weathered) Cut Copper'] = {'Cut Copper', 'Lightly Weathered Cut Copper', 'Semi-Weathered Cut Copper', 'Weathered Cut Copper'},
	['Matching Waxed (Weathered) Copper Block'] = {'Waxed Copper Block', 'Waxed Lightly Weathered Copper Block', 'Waxed Semi-Weathered Copper Block'},
	['Matching Waxed (Weathered) Cut Copper'] = {'Waxed Cut Copper', 'Waxed Lightly Weathered Cut Copper', 'Waxed Semi-Weathered Cut Copper'},
}
local function map(tbl, f)
    local t = {}
    for k,v in pairs(tbl) do
        t[k] = f(v)
    end
    return t
end
for k, v in pairs(copperstuff) do
	aliases[k] = v
	local k1 = k:gsub(' Block$', '')
	local v1 = map(v, function(s) return s:gsub(' Block$', '') end)
	aliases[k1 .. 'Slab'] = map(v1, function(s) return s .. 'Slab' end)
	aliases[k1 .. 'Stairs'] = map(v1, function(s) return s .. 'Stairs' end)
end

-- Discs --
local discs = { 
	{ '13',      'C418',                 },
	{ 'Cat',     'C418',       'cat'     },
	{ 'Blocks',  'C418',       'blocks'  },
	{ 'Chirp',   'C418',       'chirp'   },
	{ 'Far',     'C418',       'far'     },
	{ 'Mall',    'C418',       'mall'    },
	{ 'Mellohi', 'C418',       'mellohi' },
	{ 'Stal',    'C418',       'stal'    },
	{ 'Strad',   'C418',       'strad'   },
	{ 'Ward',    'C418',       'ward'    },
	{ '11',      'C418',                 },
	{ 'Wait',    'C418',       'wait'    },
	{ 'Pigstep', 'Lena Raine',           },
}
for _, disc in ipairs( discs ) do
	local name = 'Music Disc ' .. disc[1]
	local artist = disc[2]
	local trackname = disc[1]
	if disc[3] ~= nil then
		trackname = disc[3]
	end
	aliases[name] = { title = '&bMusic Disc', name = name, text = '&7' .. artist .. ' - ' .. trackname }
end

-- Damaged armor, note it skips tools and weapons as they are handled above to add the damage tooltip --
local damagedItems = {
	'Bow',
	'Carrot on a Stick',
	'Chainmail Boots',
	'Chainmail Chestplate',
	'Chainmail Helmet',
	'Chainmail Leggings',
	'Crossbow',
	'Diamond Boots',
	'Diamond Chestplate',
	'Diamond Helmet',
	'Diamond Leggings',
	'Elytra',
	'Fishing Rod',
	'Flint and Steel',
	'Golden Boots',
	'Golden Chestplate',
	'Golden Helmet',
	'Golden Leggings',
	'Iron Boots',
	'Iron Chestplate',
	'Iron Helmet',
	'Iron Leggings',
	'Leather Boots',
	'Leather Tunic',
	'Leather Cap',
	'Leather Pants',
	'Netherite Boots',
	'Netherite Chestplate',
	'Netherite Helmet',
	'Netherite Leggings',
	'Shears',
	'Shield'
}
for _, item in ipairs( damagedItems ) do
	local name = 'Damaged ' .. item
	aliases[name] = { title = item, name = item }
end

-- Banners and colored items --
local patterns = {
	'Base Dexter Canton',
	'Base',
	'Base Gradient',
	'Base Indented',
	'Base Sinister Canton',
	'Bend',
	'Bend Sinister',
	'Bordure',
	'Bordure Indented',
	'Chevron',
	'Chief Dexter Canton',
	'Chief',
	'Chief Indented',
	'Chief Sinister Canton',
	'Creeper Charge',
	'Cross',
	'Fess',
	'Field Masoned',
	'Flower Charge',
	'Globe',
	'Gradient',
	'Inverted Chevron',
	'Lozenge',
	'Thing',
	'Pale',
	'Pale Dexter',
	'Pale Sinister',
	'Paly',
	'Per Bend',
	'Per Bend Inverted',
	'Per Bend Sinister',
	'Per Bend Sinister Inverted',
	'Per Fess',
	'Per Fess Inverted',
	'Per Pale',
	'Per Pale Inverted',
	'Piglin',
	'Snout',
	'Roundel',
	'Saltire',
	'Skull Charge'
}
local colors = {
	'White',
	'Orange',
	'Magenta',
	'Light Blue',
	'Yellow',
	'Lime',
	'Pink',
	'Gray',
	'Light Gray',
	'Cyan',
	'Purple',
	'Blue',
	'Brown',
	'Green',
	'Red',
	'Black'
}

-- Firework Stars --
local fireworkStar = {}
for _, color in ipairs( colors ) do
	local name = color .. ' Firework Star'
	aliases[name] = { title = 'Firework Star', name = name, text = '&7' .. color }
	table.insert( fireworkStar, aliases[name] )
	for _, pattern in ipairs( patterns ) do
		name = color .. ' ' .. pattern .. ' Banner'
		aliases[name] = { title = 'Banner', name = name, text = '&7' .. color .. ' ' .. pattern }
	end
end
aliases['Any Firework Star'] = fireworkStar
aliases['Matching Firework Star'] = fireworkStar

-- Items that use the sixteen colors --
local coloredItems = {
	'Balloon',
	'Banner',
	'Bed',
	'Carpet',
	'Concrete',
	'Concrete Powder',
	'Glazed Terracotta',
	'Hardened $1 Stained Glass',
	'Hardened $1 Stained Glass Pane',
	'Shield',
	'Shulker Box',
	'Stained Glass',
	'Stained Glass Pane',
	'Wool'
}
for _, item in ipairs( coloredItems ) do
	local coloredItemAliases = {}
	local itemName = ''
	
	for _, color in ipairs( colors ) do
		if item:find( '%$1' ) then
			itemName = item:gsub( '%$1', color )
		else
			itemName = color .. ' ' .. item
		end
		table.insert( coloredItemAliases, itemName )
	end
	
	item = item:gsub( '%$1 ', '')
	aliases['Any ' .. item] = coloredItemAliases
	aliases['Matching ' .. item] = coloredItemAliases
end
-- list of all potions with no effects
local noEffects = {
	'Water Bottle',
	'Awkward Potion',
	'Thick Potion',
	'Mundane Potion',
	'Uncraftable Potion',
	'Splash Water Bottle',
	'Awkward Splash Potion',
	'Thick Splash Potion',
	'Mundane Splash Potion',
	'Uncraftable Splash Potion',
	'Lingering Water Bottle',
	'Awkward Lingering Potion',
	'Thick Lingering Potion',
	'Mundane Lingering Potion',
	'Uncraftable Lingering Potion',
	'Tipped Arrow',
	'Arrow of Splashing',
	'Uncraftable Tipped Arrow',
}
for _, name in ipairs(noEffects) do
	aliases[name] = { name = name, text = '&7No effects' }
end

-- start these lists with the no effect items as names are not normal
local potionItems = {
	['Potion'] = {
		aliases['Water Bottle'],
		aliases['Awkward Potion'],
		aliases['Thick Potion'],
		aliases['Mundane Potion'],
	},
	['Splash Potion'] = {
		aliases['Splash Water Bottle'],
		aliases['Awkward Splash Potion'],
		aliases['Thick Splash Potion'],
		aliases['Mundane Splash Potion'],
	},
	['Lingering Potion'] = {
		aliases['Lingering Water Bottle'],
		aliases['Awkward Lingering Potion'],
		aliases['Thick Lingering Potion'],
		aliases['Mundane Lingering Potion'],
	},
	['Tipped Arrow'] = {
		aliases['Arrow of Splashing'],
		aliases['Tipped Arrow'],
		aliases['Tipped Arrow'],
		aliases['Tipped Arrow'],
	},
}

-- Potions --
local effects = {
	-- durations are in the order normal, extended, enhanced
	{name = 'Regeneration', effect = '&9Regeneration', enhanced = 'II',
		durations = { normal = { '0:45', '1:30', '0:22' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
	{ name = 'Swiftness', effect = '&9Speed', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30' }, lingering = { '0:45', '2:00', '0:22' }, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'Fire Resistance', effect = '&9Fire Resistance', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Poison', effect = '&cPoison', enhanced = 'II', 
		durations = { normal = { '0:45', '1:30', '0:21' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
	{ name = 'Healing', effect = '&9Instant Health', enhanced = 'II' },
	{ name = 'Night Vision',    effect = '&9Night Vision',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Weakness',        effect = '&cWeakness',        durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'Strength', effect = '&9Strength', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30'}, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'Slowness', effect = '&cSlowness', enhanced = 'IV', 
		durations = { normal = { '1:30', '4:00', '0:20'}, lingering = {'0:22', '1:00', '0:05'}, arrow = { '0:11', '0:30', '0:02' }}},
	{ name = 'Leaping', effect = '&9Jump Boost', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30' }, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'Harming', effect = '&cInstant Damage', enhanced = 'II' },
	{ name = 'Water Breathing', effect = '&9Water Breathing', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Invisibility',    effect = '&9Invisibility',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Slow Falling',    effect = '&9Slow Falling',    durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'Luck',  effect = '&9Luck',   durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
	{ name = 'Decay', effect = '&cWither', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
	{ name = 'the Turtle Master', text = '&cSlowness IV ($1)/&9Resistance III ($1)', enhanced = '&cSlowness VI ($1)/&9Resistance IV ($1)',
		durations = { normal = { '0:20', '0:40', '0:20' }, lingering = { '0:15', '0:45', '0:15' }, arrow = {  '0:07', '0:22', '0:07' }}}
}
local types = {
	{name = 'Potion',           durations = 'normal',    text = 'Potion of '},
	{name = 'Splash Potion',    durations = 'normal',    text = 'Splash Potion of '},
	{name = 'Lingering Potion', durations = 'lingering', text = 'Lingering Potion of '},
	{name = 'Tipped Arrow',     durations = 'arrow',     text = 'Arrow of '},
}

for _, effect in ipairs(effects) do
	for _, type in ipairs(types) do
		-- form name, it will be reused
		local name =  type.text .. effect.name
		local potionName = {}
		if type.name == 'Tipped Arrow' then
		potionName = type.text .. effect.name
		else
		potionName = type.text .. effect.name .. '.gif'
		end
		
		-- if we have durations, add times
		if effect.durations then
			local durations = effect.durations[type.durations]
			
			-- turtle master is weird, so just do a fancy string replacement
			if effect.text then
				aliases[name] = { name = potionName, text = effect.text:gsub( '%$1', durations[1] ) }
				aliases[name .. ' Extended'] = { name = potionName, text = effect.text:gsub( '%$1', durations[2] ) }
				aliases[name .. ' Enhanced'] = { name = potionName, text = effect.enhanced:gsub( '%$1', durations[3] ) }
			else
				-- we always have normal
				aliases[name] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
			
				-- ensure we have extended
				if durations[2] then
					aliases[name .. ' Extended'] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[2] ) }
					
					-- and enhanced, currently there is nothing with a duration that can be extended but not enhanced
					if effect.enhanced then
						aliases[name .. ' Enhanced'] = { name = potionName, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
					end
				end
			end
		else
			-- otherwise its just effect, currently every potion with no duration can be enhanced
			aliases[name] = { name = potionName, text = effect.effect}
			aliases[name .. ' Enhanced'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
		end
		
		-- add the base potion to the any list
		table.insert(potionItems[type.name], aliases[name])
	end
end

-- build the any lists
for item, potionAliases in pairs( potionItems ) do
	aliases['Any ' .. item] = potionAliases
	aliases['Matching ' .. item] = potionAliases
end

-- Wood --
local woodTypes = {
    overworld = {
        'Oak',
	    'Spruce',
	    'Birch',
	    'Jungle',
	    'Acacia',
        'Dark Oak',
    },
    nether = {
        'Crimson',
        'Warped'
    },
    both = {},
}
local woodTypeWorld = {}
for _, world in ipairs({'overworld', 'nether'}) do
	local woods = woodTypes[world]
	for _, type in ipairs(woods) do
		woodTypeWorld[type] = world
        table.insert(woodTypes.both, type)
    end
end
local woodItems = {
    overworld = {
        'Wood',
        'Log',
        'Boat',
        'Stripped $1 Log',
        'Stripped $1 Wood',
        'Wood Planks',
        'Wood Slab',
        'Wood Stairs',
        'Wood Pressure Plate',
        'Wood Button',
        'Wood Door',
        'Wood Trapdoor',
        'Wood Fence Gate',
        'Wood Fence',
        'Wood Sign',
        'Sapling',
    },
    nether = {
        'Stem',
        'Hyphae',
        'Stripped $1 Stem',
        'Stripped $1 Hyphae',
    },
    both = {
        '$world Planks',
        '${Wood,Hyphae}',
        '${Log,Stem}',
        'Stripped $1 ${Wood,Hyphae}',
        'Stripped $1 ${Log,Stem}',
        'Fence Gate',
        -- '$world Wood Fence',
        '$wood Fence',
        '$wood Door',
        '$wood Button',
        '$wood Pressure Plate',
        '$wood Trapdoor',
        '$world $wood Slab',
        '$wood Stairs',
        'Sign'
    }
}
local woodItemWorld = {}
for world, items in pairs(woodItems) do
    for _, item in ipairs(items) do
		-- expand $world (should only happen in "both")
        if (item:find('%$world')) and world == 'both' then
            item = item:gsub('%$world ', '')
            woodItemWorld['Overworld ' .. item] = 'overworld'
			woodItemWorld['Nether ' .. item] = 'nether'
		end
		woodItemWorld[item] = world
    end
end

for item, world in pairs(woodItemWorld) do
	local itemName = ''
	local woodAliases = {}

	-- real "linkable" name
    local realItem = item:gsub('^Overworld ', '')
    realItem = realItem:gsub('^Nether ', '')

	for _, wood in ipairs(woodTypes[world]) do
		-- Parse ${,} (world-select) syntax
		local selector = (woodTypeWorld[wood] == 'overworld') and "%1" or "%2"
		itemName = realItem:gsub("%${(.-),(.-)}", selector)

		if itemName:find('%$wood') then
			itemName = itemName:gsub('%$wood', wood)
		elseif itemName:find('%$1') then
			itemName = itemName:gsub( '%$1', wood)
		else
			itemName = wood .. ' ' .. itemName
		end
		table.insert(woodAliases, itemName)
	end

	-- Parse ${,} (world-select) syntax
	item = item:gsub("%${(.-),(.-)}", "%1 or %2")
    item = item:gsub('%$wood ', 'wood ')
    item = item:gsub('%$1 ', '')
    aliases['Any ' .. item] = woodAliases
	aliases['Matching ' .. item] = woodAliases
end

-- Bedrock Edition Items --
local editionItems = {
	BE = {
		'Acacia Fence Gate',
		'Birch Fence Gate',
		'Bow',
		'Bucket of Pufferfish',
		'Bucket of Tropical Fish',
		'Chest',
		'Creeper Head',
		'Crimson Fence Gate',
		'Dark Oak Fence Gate',
		'Dragon Head',
		'End Gateway',
		'End Portal',
		'Ender Chest',
		'Flowing Lava',
		'Glass Pane',
		'Head',
		'Honey Block',
		'Horn Coral Block',
		'Iron Bars',
		'Jigsaw Block',
		'Jungle Fence Gate',
		'Lava',
		'Map',
		'Minecart with Command Block',
		'Oak Fence Gate',
		'Observer',
		'Ocean Explorer Map',
		'Peony',
		'Rose Bush',
		'Scaffolding',
		'Skeleton Skull',
		'Spawn Cat',
		'Spawn Panda',
		'Spawn Wandering Trader',
		'Spruce Fence Gate',
		'Stonecutter',
		'Structure Void',
		'Warped Fence Gate',
		'Wither Skeleton Skull',
		'Woodland Explorer Map',
		'Zombie Head',
		'Conduit',
		'Jungle Leaves',
		'Blue Ice',
		'Beacon',
		'Crying Obsidian',
		'End Portal Frame',
		'Dragon Egg',
		'Enchanting Table',
		'End Rod',
		'Glowstone',
		'Jack o\'Lantern',
		'Magma Block',
		'Spawner',
		'Sea Lantern',
		'Shroomlight',
		'Trapped Chest',
		'Leather Horse Armor',
	},
	LCE = {
		'Peony',
		'Rose Bush',
		'Shrub'
	}
}
for edition, items in pairs(editionItems) do
	for _, item in ipairs(items) do
		local name = item .. ' ' .. edition
		aliases[name] = { title = item, name = name }
	end
end

-- Light blocks
for level = 0, 15 do
aliases["Light Block " .. level] = {title = "Light Block", name = "Light Block " .. level}
aliases["Light " .. level] = {title = "Light", name = "Light " .. level}
end
aliases["Light Negative"] = {title = "Light", name = "Light Negative"}

--List of vanilla blocks/items
local allVanilla = {
    "Acacia Boat",
    "Acacia Button",
    "Acacia Door",
    "Acacia Fence",
    "Acacia Fence Gate",
    "Acacia Leaves",
    "Acacia Log",
    "Acacia Planks",
    "Acacia Pressure Plate",
    "Acacia Sapling",
    "Acacia Sign",
    "Acacia Slab",
    "Acacia Stairs",
    "Acacia Trapdoor",
    "Acacia Wood",
    "Activator Rail",
    "Allium",
    "Amethyst Cluster‌",
    "Amethyst Shard",
    "Ancient Debris",
    "Andesite",
    "Andesite Slab",
    "Andesite Stairs",
    "Andesite Wall",
    "Anvil",
    "Apple",
    "Armor Stand",
    "Arrow",
    "Axolotl Spawn Egg",
    "Azalea Leaves‌",
    "Azalea‌",
    "Azure Bluet",
    "Baked Potato",
    "Bamboo",
    "Bamboo Shoot",
    "Banner Pattern",
    "Barrel",
    "Barrier",
    "Basalt",
    "Bat Spawn Egg",
    "Beacon",
    "Bedrock",
    "Bee Nest",
    "Bee Spawn Egg",
    "Beehive",
    "Beetroot",
    "Beetroot Seeds",
    "Beetroot Soup",
    "Beetroots",
    "Bell",
    "Big Dripleaf‌",
    "Birch Boat",
    "Birch Button",
    "Birch Door",
    "Birch Fence",
    "Birch Fence Gate",
    "Birch Leaves",
    "Birch Log",
    "Birch Planks",
    "Birch Pressure Plate",
    "Birch Sapling",
    "Birch Sign",
    "Birch Slab",
    "Birch Stairs",
    "Birch Trapdoor",
    "Birch Wood",
    "Black Banner",
    "Black Bed",
    "Black Candle‌",
    "Black Carpet",
    "Black Concrete",
    "Black Concrete Powder",
    "Black Dye",
    "Black Glazed Terracotta",
    "Black Shulker Box",
    "Black Stained Glass",
    "Black Stained Glass Pane",
    "Black Terracotta",
    "Black Wool",
    "Blackstone",
    "Blackstone Slab",
    "Blackstone Stairs",
    "Blackstone Wall",
    "Blast Furnace",
    "Blaze Powder",
    "Blaze Rod",
    "Blaze Spawn Egg",
    "Block of Amethyst‌",
    "Block of Coal",
    "Block of Diamond",
    "Block of Emerald",
    "Block of Gold",
    "Block of Iron",
    "Block of Netherite",
    "Block of Quartz",
    "Block of Redstone",
    "Blue Banner",
    "Blue Bed",
    "Blue Candle‌",
    "Blue Carpet",
    "Blue Concrete",
    "Blue Concrete Powder",
    "Blue Dye",
    "Blue Glazed Terracotta",
    "Blue Ice",
    "Blue Orchid",
    "Blue Shulker Box",
    "Blue Stained Glass",
    "Blue Stained Glass Pane",
    "Blue Terracotta",
    "Blue Wool",
    "Bone",
    "Bone Block",
    "Bone Meal",
    "Book",
    "Book and Quill",
    "Bookshelf",
    "Bottle o' Enchanting",
    "Bow",
    "Bowl",
    "Brain Coral",
    "Brain Coral Block",
    "Brain Coral Fan",
    "Bread",
    "Brewing Stand",
    "Brick",
    "Brick Slab",
    "Brick Stairs",
    "Brick Wall",
    "Bricks",
    "Brown Banner",
    "Brown Bed",
    "Brown Candle‌",
    "Brown Carpet",
    "Brown Concrete",
    "Brown Concrete Powder",
    "Brown Dye",
    "Brown Glazed Terracotta",
    "Brown Mushroom",
    "Brown Mushroom Block",
    "Brown Shulker Box",
    "Brown Stained Glass",
    "Brown Stained Glass Pane",
    "Brown Terracotta",
    "Brown Wool",
    "Bubble Coral",
    "Bubble Coral Block",
    "Bubble Coral Fan",
    "Bucket",
    "Bucket of Axolotl",
    "Bucket of Cod",
    "Bucket of Pufferfish",
    "Bucket of Salmon",
    "Bucket of Tropical Fish",
    "Budding Amethyst‌",
    "Bundle",
    "Cactus",
    "Cake",
    "Calcite‌",
    "Campfire",
    "Candle‌",
    "Carrot",
    "Carrot on a Stick",
    "Carrots",
    "Cartography Table",
    "Carved Pumpkin",
    "Cat Spawn Egg",
    "Cauldron",
    "Cave Spider Spawn Egg",
    "Cave Vines‌",
    "Chain",
    "Chain Command Block",
    "Chainmail Boots",
    "Chainmail Chestplate",
    "Chainmail Helmet",
    "Chainmail Leggings",
    "Charcoal",
    "Chest",
    "Chicken Spawn Egg",
    "Chipped Anvil",
    "Chiseled Deepslate‌",
    "Chiseled Nether Bricks",
    "Chiseled Polished Blackstone",
    "Chiseled Quartz Block",
    "Chiseled Red Sandstone",
    "Chiseled Sandstone",
    "Chiseled Stone Bricks",
    "Chorus Flower",
    "Chorus Fruit",
    "Chorus Plant",
    "Clay",
    "Clay Ball",
    "Clock",
    "Coal",
    "Coal Ore",
    "Coarse Dirt",
    "Cobbled Deepslate Slab‌",
    "Cobbled Deepslate Stairs‌",
    "Cobbled Deepslate Wall‌",
    "Cobbled Deepslate‌",
    "Cobblestone",
    "Cobblestone Slab",
    "Cobblestone Stairs",
    "Cobblestone Wall",
    "Cobweb",
    "Cocoa",
    "Cocoa Beans",
    "Cod Spawn Egg",
    "Command Block",
    "Compass",
    "Composter",
    "Conduit",
    "Cooked Chicken",
    "Cooked Cod",
    "Cooked Mutton",
    "Cooked Porkchop",
    "Cooked Rabbit",
    "Cooked Salmon",
    "Cookie",
    "Copper Block‌",
    "Copper Ingot",
    "Copper Ore‌",
    "Cornflower",
    "Cow Spawn Egg",
    "Cracked Deepslate Bricks‌",
    "Cracked Deepslate Tiles‌",
    "Cracked Nether Bricks",
    "Cracked Polished Blackstone Bricks",
    "Cracked Stone Bricks",
    "Crafting Table",
    "Creeper Head",
    "Creeper Spawn Egg",
    "Crimson Button",
    "Crimson Door",
    "Crimson Fence",
    "Crimson Fence Gate",
    "Crimson Fungus",
    "Crimson Hyphae",
    "Crimson Nylium",
    "Crimson Planks",
    "Crimson Pressure Plate",
    "Crimson Roots",
    "Crimson Sign",
    "Crimson Slab",
    "Crimson Stairs",
    "Crimson Stem",
    "Crimson Trapdoor",
    "Crossbow",
    "Crying Obsidian",
    "Cut Copper Slab‌",
    "Cut Copper Stairs‌",
    "Cut Copper‌",
    "Cut Red Sandstone",
    "Cut Red Sandstone Slab",
    "Cut Sandstone",
    "Cut Sandstone Slab",
    "Cyan Banner",
    "Cyan Bed",
    "Cyan Candle‌",
    "Cyan Carpet",
    "Cyan Concrete",
    "Cyan Concrete Powder",
    "Cyan Dye",
    "Cyan Glazed Terracotta",
    "Cyan Shulker Box",
    "Cyan Stained Glass",
    "Cyan Stained Glass Pane",
    "Cyan Terracotta",
    "Cyan Wool",
    "Damaged Anvil",
    "Dandelion",
    "Dark Oak Boat",
    "Dark Oak Button",
    "Dark Oak Door",
    "Dark Oak Fence",
    "Dark Oak Fence Gate",
    "Dark Oak Leaves",
    "Dark Oak Log",
    "Dark Oak Planks",
    "Dark Oak Pressure Plate",
    "Dark Oak Sapling",
    "Dark Oak Sign",
    "Dark Oak Slab",
    "Dark Oak Stairs",
    "Dark Oak Trapdoor",
    "Dark Oak Wood",
    "Dark Prismarine",
    "Dark Prismarine Slab",
    "Dark Prismarine Stairs",
    "Daylight Detector",
    "Dead Brain Coral",
    "Dead Brain Coral Block",
    "Dead Brain Coral Fan",
    "Dead Bubble Coral",
    "Dead Bubble Coral Block",
    "Dead Bubble Coral Fan",
    "Dead Bush",
    "Dead Fire Coral",
    "Dead Fire Coral Block",
    "Dead Fire Coral Fan",
    "Dead Horn Coral",
    "Dead Horn Coral Block",
    "Dead Horn Coral Fan",
    "Dead Tube Coral",
    "Dead Tube Coral Block",
    "Dead Tube Coral Fan",
    "Debug Stick‌",
    "Deepslate Brick Slab‌",
    "Deepslate Brick Stairs‌",
    "Deepslate Brick Wall‌",
    "Deepslate Bricks‌",
    "Deepslate Coal Ore‌",
    "Deepslate Copper Ore‌",
    "Deepslate Diamond Ore‌",
    "Deepslate Emerald Ore‌",
    "Deepslate Gold Ore‌",
    "Deepslate Iron Ore‌",
    "Deepslate Lapis Lazuli Ore‌",
    "Deepslate Redstone Ore‌",
    "Deepslate Tile Slab‌",
    "Deepslate Tile Stairs‌",
    "Deepslate Tile Wall‌",
    "Deepslate Tiles‌",
    "Deepslate‌",
    "Detector Rail",
    "Diamond",
    "Diamond Axe",
    "Diamond Boots",
    "Diamond Chestplate",
    "Diamond Helmet",
    "Diamond Hoe",
    "Diamond Horse Armor",
    "Diamond Leggings",
    "Diamond Ore",
    "Diamond Pickaxe",
    "Diamond Shovel",
    "Diamond Sword",
    "Diorite",
    "Diorite Slab",
    "Diorite Stairs",
    "Diorite Wall",
    "Dirt",
    "Dispenser",
    "Dolphin Spawn Egg",
    "Donkey Spawn Egg",
    "Dragon Egg",
    "Dragon Head",
    "Dragon's Breath",
    "Dried Kelp",
    "Dried Kelp Block",
    "Dripstone Block‌",
    "Dropper",
    "Drowned Spawn Egg",
    "Egg",
    "Elder Guardian Spawn Egg",
    "Elytra",
    "Emerald",
    "Emerald Ore",
    "Empty Map",
    "Enchanted Book",
    "Enchanted Golden Apple",
    "Enchanting Table",
    "End Crystal",
    "End Portal Frame",
    "End Rod",
    "End Stone",
    "End Stone Brick Slab",
    "End Stone Brick Stairs",
    "End Stone Brick Wall",
    "End Stone Bricks",
    "Ender Chest",
    "Ender Pearl",
    "Enderman Spawn Egg",
    "Endermite Spawn Egg",
    "Evoker Spawn Egg",
    "Exposed Copper Block‌",
    "Exposed Cut Copper Slab‌",
    "Exposed Cut Copper Stairs‌",
    "Exposed Cut Copper‌",
    "Eye of Ender",
    "Farmland",
    "Feather",
    "Fermented Spider Eye",
    "Fern",
    "Fire",
    "Fire Charge",
    "Fire Coral",
    "Fire Coral Block",
    "Fire Coral Fan",
    "Firework Rocket",
    "Firework Star",
    "Fishing Rod",
    "Fletching Table",
    "Flint",
    "Flint and Steel",
    "Flower Pot",
    "Flowering Azalea Leaves‌",
    "Flowering Azalea‌",
    "Fox Spawn Egg",
    "Furnace",
    "Ghast Spawn Egg",
    "Ghast Tear",
    "Gilded Blackstone",
    "Glass",
    "Glass Bottle",
    "Glass Pane",
    "Glistering Melon Slice",
    "Glow Berries",
    "Glow Ink Sac",
    "Glow Item Frame",
    "Glow Item Frame ‌‌",
    "Glow Lichen‌",
    "Glow Squid Spawn Egg",
    "Glowing Obsidian‌",
    "Glowstone",
    "Glowstone Dust",
    "Goat Horn",
    "Goat Spawn Egg",
    "Gold Ingot",
    "Gold Nugget",
    "Gold Ore",
    "Golden Apple",
    "Golden Axe",
    "Golden Boots",
    "Golden Carrot",
    "Golden Chestplate",
    "Golden Helmet",
    "Golden Hoe",
    "Golden Horse Armor",
    "Golden Leggings",
    "Golden Pickaxe",
    "Golden Shovel",
    "Golden Sword",
    "Granite",
    "Granite Slab",
    "Granite Stairs",
    "Granite Wall",
    "Grass",
    "Grass Block",
    "Grass Path",
    "Gravel",
    "Gray Banner",
    "Gray Bed",
    "Gray Candle‌",
    "Gray Carpet",
    "Gray Concrete",
    "Gray Concrete Powder",
    "Gray Dye",
    "Gray Glazed Terracotta",
    "Gray Shulker Box",
    "Gray Stained Glass",
    "Gray Stained Glass Pane",
    "Gray Terracotta",
    "Gray Wool",
    "Green Banner",
    "Green Bed",
    "Green Candle‌",
    "Green Carpet",
    "Green Concrete",
    "Green Concrete Powder",
    "Green Dye",
    "Green Glazed Terracotta",
    "Green Shulker Box",
    "Green Stained Glass",
    "Green Stained Glass Pane",
    "Green Terracotta",
    "Green Wool",
    "Grindstone",
    "Guardian Spawn Egg",
    "Gunpowder",
    "Hanging Roots‌",
    "Hay Bale",
    "Heart of the Sea",
    "Heavy Weighted Pressure Plate",
    "Hoglin Spawn Egg",
    "Honey Block",
    "Honey Bottle",
    "Honeycomb",
    "Honeycomb Block",
    "Hopper",
    "Horn Coral",
    "Horn Coral Block",
    "Horn Coral Fan",
    "Horse Spawn Egg",
    "Husk Spawn Egg",
    "Ice",
    "Infested Chiseled Stone Bricks",
    "Infested Cobblestone",
    "Infested Cracked Stone Bricks",
    "Infested Deepslate‌",
    "Infested Mossy Stone Bricks",
    "Infested Stone",
    "Infested Stone Bricks",
    "Ink Sac‌",
    "Iron Axe",
    "Iron Bars",
    "Iron Boots",
    "Iron Chestplate",
    "Iron Door",
    "Iron Helmet",
    "Iron Hoe",
    "Iron Horse Armor",
    "Iron Ingot",
    "Iron Leggings",
    "Iron Nugget",
    "Iron Ore",
    "Iron Pickaxe",
    "Iron Shovel",
    "Iron Sword",
    "Iron Trapdoor",
    "Item Frame",
    "Item Frame ‌",
    "Jack o'Lantern",
    "Jigsaw Block",
    "Jukebox",
    "Jungle Boat",
    "Jungle Button",
    "Jungle Door",
    "Jungle Fence",
    "Jungle Fence Gate",
    "Jungle Leaves",
    "Jungle Log",
    "Jungle Planks",
    "Jungle Pressure Plate",
    "Jungle Sapling",
    "Jungle Sign",
    "Jungle Slab",
    "Jungle Stairs",
    "Jungle Trapdoor",
    "Jungle Wood",
    "Kelp",
    "Knowledge Book‌",
    "Ladder",
    "Lantern",
    "Lapis Lazuli",
    "Lapis Lazuli Block",
    "Lapis Lazuli Ore",
    "Large Amethyst Bud‌",
    "Large Fern",
    "Lava",
    "Lava Bucket",
    "Lead",
    "Leather",
    "Leather Boots",
    "Leather Cap",
    "Leather Horse Armor",
    "Leather Pants",
    "Leather Tunic",
    "Lectern",
    "Lever",
    "Light Block‌‌",
    "Light Blue Banner",
    "Light Blue Bed",
    "Light Blue Candle‌",
    "Light Blue Carpet",
    "Light Blue Concrete",
    "Light Blue Concrete Powder",
    "Light Blue Dye",
    "Light Blue Glazed Terracotta",
    "Light Blue Shulker Box",
    "Light Blue Stained Glass",
    "Light Blue Stained Glass Pane",
    "Light Blue Terracotta",
    "Light Blue Wool",
    "Light Gray Banner",
    "Light Gray Bed",
    "Light Gray Candle‌",
    "Light Gray Carpet",
    "Light Gray Concrete",
    "Light Gray Concrete Powder",
    "Light Gray Dye",
    "Light Gray Glazed Terracotta",
    "Light Gray Shulker Box",
    "Light Gray Stained Glass",
    "Light Gray Stained Glass Pane",
    "Light Gray Terracotta",
    "Light Gray Wool",
    "Light Weighted Pressure Plate",
    "Lightning Rod‌",
    "Lilac",
    "Lily of the Valley",
    "Lily Pad",
    "Lime Banner",
    "Lime Bed",
    "Lime Candle‌",
    "Lime Carpet",
    "Lime Concrete",
    "Lime Concrete Powder",
    "Lime Dye",
    "Lime Glazed Terracotta",
    "Lime Shulker Box",
    "Lime Stained Glass",
    "Lime Stained Glass Pane",
    "Lime Terracotta",
    "Lime Wool",
    "Lingering Potion",
    "Llama Spawn Egg",
    "Lodestone",
    "Loom",
    "Magenta Banner",
    "Magenta Bed",
    "Magenta Candle‌",
    "Magenta Carpet",
    "Magenta Concrete",
    "Magenta Concrete Powder",
    "Magenta Dye",
    "Magenta Glazed Terracotta",
    "Magenta Shulker Box",
    "Magenta Stained Glass",
    "Magenta Stained Glass Pane",
    "Magenta Terracotta",
    "Magenta Wool",
    "Magma Block",
    "Magma Cream",
    "Magma Cube Spawn Egg",
    "Map or Explorer Map",
    "Medium Amethyst Bud‌",
    "Melon",
    "Melon Seeds",
    "Melon Slice",
    "Melon Stem",
    "Milk Bucket",
    "Minecart",
    "Minecart with Chest",
    "Minecart with Command Block",
    "Minecart with Furnace‌",
    "Minecart with Hopper",
    "Minecart with TNT",
    "Mooshroom Spawn Egg",
    "Moss Block‌",
    "Moss Carpet‌",
    "Mossy Cobblestone",
    "Mossy Cobblestone Slab",
    "Mossy Cobblestone Stairs",
    "Mossy Cobblestone Wall",
    "Mossy Stone Brick Slab",
    "Mossy Stone Brick Stairs",
    "Mossy Stone Brick Wall",
    "Mossy Stone Bricks",
    "Mule Spawn Egg",
    "Mushroom Stem",
    "Mushroom Stew",
    "Music Disc",
    "Mycelium",
    "Name Tag",
    "Nautilus Shell",
    "Nether Brick",
    "Nether Brick Fence",
    "Nether Brick Slab",
    "Nether Brick Stairs",
    "Nether Brick Wall",
    "Nether Bricks",
    "Nether Gold Ore",
    "Nether Quartz",
    "Nether Quartz Ore",
    "Nether Reactor Core‌",
    "Nether Sprouts",
    "Nether Star",
    "Nether Wart",
    "Nether Wart Block",
    "Netherite Axe",
    "Netherite Boots",
    "Netherite Chestplate",
    "Netherite Helmet",
    "Netherite Hoe",
    "Netherite Ingot",
    "Netherite Leggings",
    "Netherite Pickaxe",
    "Netherite Scrap",
    "Netherite Shovel",
    "Netherite Sword",
    "Netherrack",
    "Note Block",
    "Oak Boat",
    "Oak Button",
    "Oak Door",
    "Oak Fence",
    "Oak Fence Gate",
    "Oak Leaves",
    "Oak Log",
    "Oak Planks",
    "Oak Pressure Plate",
    "Oak Sapling",
    "Oak Sign",
    "Oak Slab",
    "Oak Stairs",
    "Oak Trapdoor",
    "Oak Wood",
    "Observer",
    "Obsidian",
    "Ocelot Spawn Egg",
    "Ominous Banner",
    "Orange Banner",
    "Orange Bed",
    "Orange Candle‌",
    "Orange Carpet",
    "Orange Concrete",
    "Orange Concrete Powder",
    "Orange Dye",
    "Orange Glazed Terracotta",
    "Orange Shulker Box",
    "Orange Stained Glass",
    "Orange Stained Glass Pane",
    "Orange Terracotta",
    "Orange Tulip",
    "Orange Wool",
    "Oxeye Daisy",
    "Oxidized Copper Block‌",
    "Oxidized Cut Copper Slab‌",
    "Oxidized Cut Copper Stairs‌",
    "Oxidized Cut Copper‌",
    "Packed Ice",
    "Painting",
    "Panda Spawn Egg",
    "Paper",
    "Parrot Spawn Egg",
    "Peony",
    "Petrified Oak Slab",
    "Phantom Membrane",
    "Phantom Spawn Egg",
    "Pig Spawn Egg",
    "Piglin Brute Spawn Egg",
    "Piglin Spawn Egg",
    "Pillager Spawn Egg",
    "Pink Banner",
    "Pink Bed",
    "Pink Candle‌",
    "Pink Carpet",
    "Pink Concrete",
    "Pink Concrete Powder",
    "Pink Dye",
    "Pink Glazed Terracotta",
    "Pink Shulker Box",
    "Pink Stained Glass",
    "Pink Stained Glass Pane",
    "Pink Terracotta",
    "Pink Tulip",
    "Pink Wool",
    "Piston",
    "Player Head",
    "Podzol",
    "Pointed Dripstone‌",
    "Poisonous Potato",
    "Polar Bear Spawn Egg",
    "Polished Andesite",
    "Polished Andesite Slab",
    "Polished Andesite Stairs",
    "Polished Basalt",
    "Polished Blackstone",
    "Polished Blackstone Brick Slab",
    "Polished Blackstone Brick Stairs",
    "Polished Blackstone Brick Wall",
    "Polished Blackstone Bricks",
    "Polished Blackstone Button",
    "Polished Blackstone Pressure Plate",
    "Polished Blackstone Slab",
    "Polished Blackstone Stairs",
    "Polished Blackstone Wall",
    "Polished Deepslate Slab‌",
    "Polished Deepslate Stairs‌",
    "Polished Deepslate Wall‌",
    "Polished Deepslate‌",
    "Polished Diorite",
    "Polished Diorite Slab",
    "Polished Diorite Stairs",
    "Polished Granite",
    "Polished Granite Slab",
    "Polished Granite Stairs",
    "Popped Chorus Fruit",
    "Poppy",
    "Potato",
    "Potatoes",
    "Potions",
    "Powder Snow Bucket",
    "Powder Snow‌",
    "Powered Rail",
    "Prismarine",
    "Prismarine Brick Slab",
    "Prismarine Brick Stairs",
    "Prismarine Bricks",
    "Prismarine Crystals",
    "Prismarine Shard",
    "Prismarine Slab",
    "Prismarine Stairs",
    "Prismarine Wall",
    "Pufferfish",
    "Pufferfish Spawn Egg",
    "Pumpkin",
    "Pumpkin Pie",
    "Pumpkin Seeds",
    "Pumpkin Stem",
    "Purple Banner",
    "Purple Bed",
    "Purple Candle‌",
    "Purple Carpet",
    "Purple Concrete",
    "Purple Concrete Powder",
    "Purple Dye",
    "Purple Glazed Terracotta",
    "Purple Shulker Box",
    "Purple Stained Glass",
    "Purple Stained Glass Pane",
    "Purple Terracotta",
    "Purple Wool",
    "Purpur Block",
    "Purpur Pillar",
    "Purpur Slab",
    "Purpur Stairs",
    "Quartz Bricks",
    "Quartz Pillar",
    "Quartz Slab",
    "Quartz Stairs",
    "Rabbit Hide",
    "Rabbit Spawn Egg",
    "Rabbit Stew",
    "Rabbit's Foot",
    "Rail",
    "Ravager Spawn Egg",
    "Raw Beef",
    "Raw Chicken",
    "Raw Cod",
    "Raw Copper",
    "Raw Gold",
    "Raw Iron",
    "Raw Mutton",
    "Raw Porkchop",
    "Raw Rabbit",
    "Raw Salmon",
    "Red Banner",
    "Red Bed",
    "Red Candle‌",
    "Red Carpet",
    "Red Concrete",
    "Red Concrete Powder",
    "Red Dye",
    "Red Glazed Terracotta",
    "Red Mushroom",
    "Red Mushroom Block",
    "Red Nether Brick Slab",
    "Red Nether Brick Stairs",
    "Red Nether Brick Wall",
    "Red Nether Bricks",
    "Red Sand",
    "Red Sandstone",
    "Red Sandstone Slab",
    "Red Sandstone Stairs",
    "Red Sandstone Wall",
    "Red Shulker Box",
    "Red Stained Glass",
    "Red Stained Glass Pane",
    "Red Terracotta",
    "Red Tulip",
    "Red Wool",
    "Redstone Comparator",
    "Redstone Dust",
    "Redstone Lamp",
    "Redstone Ore",
    "Redstone Repeater",
    "Redstone Torch",
    "Repeating Command Block",
    "Respawn Anchor",
    "Rooted Dirt‌",
    "Rose Bush",
    "Rotten Flesh",
    "Saddle",
    "Salmon Spawn Egg",
    "Sand",
    "Sandstone",
    "Sandstone Slab",
    "Sandstone Stairs",
    "Sandstone Wall",
    "Scaffolding",
    "Sculk Sensor‌",
    "Scute",
    "Sea Lantern",
    "Sea Pickle",
    "Seagrass",
    "Shears",
    "Sheep Spawn Egg",
    "Shield",
    "Shroomlight",
    "Shulker Box",
    "Shulker Shell",
    "Shulker Spawn Egg",
    "Silverfish Spawn Egg",
    "Skeleton Horse Spawn Egg",
    "Skeleton Skull",
    "Skeleton Spawn Egg",
    "Slime Block",
    "Slime Spawn Egg",
    "Slimeball",
    "Small Amethyst Bud‌",
    "Small Dripleaf‌",
    "Smithing Table",
    "Smoker",
    "Smooth Basalt‌",
    "Smooth Quartz Block",
    "Smooth Quartz Slab",
    "Smooth Quartz Stairs",
    "Smooth Red Sandstone",
    "Smooth Red Sandstone Slab",
    "Smooth Red Sandstone Stairs",
    "Smooth Sandstone",
    "Smooth Sandstone Slab",
    "Smooth Sandstone Stairs",
    "Smooth Stone",
    "Smooth Stone Slab",
    "Snow",
    "Snow Block",
    "Snowball",
    "Soul Campfire",
    "Soul Fire",
    "Soul Lantern",
    "Soul Sand",
    "Soul Soil",
    "Soul Torch",
    "Spawn NPC",
    "Spawner",
    "Spectral Arrow‌",
    "Spider Eye",
    "Spider Spawn Egg",
    "Splash Potion",
    "Sponge",
    "Spore Blossom‌",
    "Spruce Boat",
    "Spruce Button",
    "Spruce Door",
    "Spruce Fence",
    "Spruce Fence Gate",
    "Spruce Leaves",
    "Spruce Log",
    "Spruce Planks",
    "Spruce Pressure Plate",
    "Spruce Sapling",
    "Spruce Sign",
    "Spruce Slab",
    "Spruce Stairs",
    "Spruce Trapdoor",
    "Spruce Wood",
    "Spyglass",
    "Squid Spawn Egg",
    "Steak",
    "Stick",
    "Sticky Piston",
    "Stone",
    "Stone Axe",
    "Stone Brick Slab",
    "Stone Brick Stairs",
    "Stone Brick Wall",
    "Stone Bricks",
    "Stone Button",
    "Stone Hoe",
    "Stone Pickaxe",
    "Stone Pressure Plate",
    "Stone Shovel",
    "Stone Slab",
    "Stone Stairs",
    "Stone Sword",
    "Stonecutter",
    "Stonecutter ‌",
    "Stray Spawn Egg",
    "Strider Spawn Egg",
    "String",
    "Stripped Acacia Log",
    "Stripped Acacia Wood",
    "Stripped Birch Log",
    "Stripped Birch Wood",
    "Stripped Crimson Hyphae",
    "Stripped Crimson Stem",
    "Stripped Dark Oak Log",
    "Stripped Dark Oak Wood",
    "Stripped Jungle Log",
    "Stripped Jungle Wood",
    "Stripped Oak Log",
    "Stripped Oak Wood",
    "Stripped Spruce Log",
    "Stripped Spruce Wood",
    "Stripped Warped Hyphae",
    "Stripped Warped Stem",
    "Structure Block",
    "Structure Void",
    "Sugar",
    "Sugar Cane",
    "Sunflower",
    "Suspicious Stew",
    "Sweet Berries",
    "Sweet Berry Bush",
    "Tall Grass",
    "Tall Seagrass",
    "Target",
    "Terracotta",
    "Tinted Glass‌",
    "Tipped Arrows",
    "TNT",
    "Torch",
    "Totem of Undying",
    "Trader Llama Spawn Egg",
    "Trapped Chest",
    "Trident",
    "Tripwire",
    "Tripwire Hook",
    "Tropical Fish",
    "Tropical Fish Spawn Egg",
    "Tube Coral",
    "Tube Coral Block",
    "Tube Coral Fan",
    "Tuff‌",
    "Turtle Egg",
    "Turtle Shell",
    "Turtle Spawn Egg",
    "Twisting Vines",
    "Vex Spawn Egg",
    "Villager Spawn Egg",
    "Vindicator Spawn Egg",
    "Vines",
    "Wandering Trader Spawn Egg",
    "Warped Button",
    "Warped Door",
    "Warped Fence",
    "Warped Fence Gate",
    "Warped Fungus",
    "Warped Hyphae",
    "Warped Nylium",
    "Warped Planks",
    "Warped Pressure Plate",
    "Warped Roots",
    "Warped Sign",
    "Warped Slab",
    "Warped Stairs",
    "Warped Stem",
    "Warped Trapdoor",
    "Warped Wart Block",
    "Water",
    "Water Bucket",
    "Waxed Copper‌",
    "Waxed Cut Copper Slab‌",
    "Waxed Cut Copper Stairs‌",
    "Waxed Cut Copper‌",
    "Waxed Exposed Copper‌",
    "Waxed Exposed Cut Copper Slab‌",
    "Waxed Exposed Cut Copper Stairs‌",
    "Waxed Exposed Cut Copper‌",
    "Waxed Oxidized Copper‌",
    "Waxed Oxidized Cut Copper Slab‌",
    "Waxed Oxidized Cut Copper Stairs‌",
    "Waxed Oxidized Cut Copper‌",
    "Waxed Weathered Copper‌",
    "Waxed Weathered Cut Copper Slab‌",
    "Waxed Weathered Cut Copper Stairs‌",
    "Waxed Weathered Cut Copper‌",
    "Weathered Copper Block‌",
    "Weathered Cut Copper Slab‌",
    "Weathered Cut Copper Stairs‌",
    "Weathered Cut Copper‌",
    "Weeping Vines",
    "Wet Sponge",
    "Wheat",
    "Wheat Crops",
    "Wheat Seeds",
    "White Banner",
    "White Bed",
    "White Candle‌",
    "White Carpet",
    "White Concrete",
    "White Concrete Powder",
    "White Dye",
    "White Glazed Terracotta",
    "White Shulker Box",
    "White Stained Glass",
    "White Stained Glass Pane",
    "White Terracotta",
    "White Tulip",
    "White Wool",
    "Witch Spawn Egg",
    "Wither Rose",
    "Wither Skeleton Skull",
    "Wither Skeleton Spawn Egg",
    "Wolf Spawn Egg",
    "Wooden Axe",
    "Wooden Hoe",
    "Wooden Pickaxe",
    "Wooden Shovel",
    "Wooden Sword",
    "Written Book",
    "Yellow Banner",
    "Yellow Bed",
    "Yellow Candle‌",
    "Yellow Carpet",
    "Yellow Concrete",
    "Yellow Concrete Powder",
    "Yellow Dye",
    "Yellow Glazed Terracotta",
    "Yellow Shulker Box",
    "Yellow Stained Glass",
    "Yellow Stained Glass Pane",
    "Yellow Terracotta",
    "Yellow Wool",
    "Zoglin Spawn Egg",
    "Zombie Head",
    "Zombie Horse Spawn Egg",
    "Zombie Spawn Egg",
    "Zombie Villager Spawn Egg",
    "Zombified Piglin Spawn Egg",
}

for _, name in ipairs(allVanilla) do
	if aliases[name] and type(aliases[name]) == "table" then
		if aliases[name].link then
			aliases[name].link = "w:c:minecraft:"..aliases[name].link
		else
			aliases[name].link = "w:c:minecraft:"..name
		end
	else
		aliases[name] = { link="w:c:minecraft:"..name, name=name, title=name }
	end
end

return aliases