From 82d6fc3890b785e5da74e7ea54d79180b7325052 Mon Sep 17 00:00:00 2001 From: ace Date: Tue, 17 Oct 2023 18:10:36 +0800 Subject: [PATCH 01/39] Fix loading of Chiseled Bookshelf tile from vanilla world (#6084) Co-authored-by: Dylan T --- src/block/tile/ChiseledBookshelf.php | 59 ++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/src/block/tile/ChiseledBookshelf.php b/src/block/tile/ChiseledBookshelf.php index adfdae814..f9d61e7eb 100644 --- a/src/block/tile/ChiseledBookshelf.php +++ b/src/block/tile/ChiseledBookshelf.php @@ -24,9 +24,16 @@ declare(strict_types=1); namespace pocketmine\block\tile; use pocketmine\block\utils\ChiseledBookshelfSlot; +use pocketmine\data\bedrock\item\SavedItemData; +use pocketmine\data\bedrock\item\SavedItemStackData; +use pocketmine\data\SavedDataLoadingException; use pocketmine\inventory\SimpleInventory; +use pocketmine\item\Item; use pocketmine\math\Vector3; +use pocketmine\nbt\NBT; use pocketmine\nbt\tag\CompoundTag; +use pocketmine\nbt\tag\ListTag; +use pocketmine\nbt\tag\StringTag; use pocketmine\world\World; use function count; @@ -55,4 +62,56 @@ class ChiseledBookshelf extends Tile implements Container{ public function writeSaveData(CompoundTag $nbt) : void{ $this->saveItems($nbt); } + + protected function loadItems(CompoundTag $tag) : void{ + if(($inventoryTag = $tag->getTag(Container::TAG_ITEMS)) instanceof ListTag && $inventoryTag->getTagType() === NBT::TAG_Compound){ + $inventory = $this->getRealInventory(); + $listeners = $inventory->getListeners()->toArray(); + $inventory->getListeners()->remove(...$listeners); //prevent any events being fired by initialization + + $newContents = []; + /** @var CompoundTag $itemNBT */ + foreach($inventoryTag as $slot => $itemNBT){ + try{ + $count = $itemNBT->getByte(SavedItemStackData::TAG_COUNT); + if($count === 0){ + continue; + } + $newContents[$slot] = Item::nbtDeserialize($itemNBT); + }catch(SavedDataLoadingException $e){ + //TODO: not the best solution + \GlobalLogger::get()->logException($e); + continue; + } + } + $inventory->setContents($newContents); + + $inventory->getListeners()->add(...$listeners); + } + + if(($lockTag = $tag->getTag(Container::TAG_LOCK)) instanceof StringTag){ + $this->lock = $lockTag->getValue(); + } + } + + protected function saveItems(CompoundTag $tag) : void{ + $items = []; + foreach($this->getRealInventory()->getContents(true) as $slot => $item){ + if($item->isNull()){ + $items[$slot] = CompoundTag::create() + ->setByte(SavedItemStackData::TAG_COUNT, 0) + ->setShort(SavedItemData::TAG_DAMAGE, 0) + ->setString(SavedItemData::TAG_NAME, "") + ->setByte(SavedItemStackData::TAG_WAS_PICKED_UP, 0); + }else{ + $items[$slot] = $item->nbtSerialize(); + } + } + + $tag->setTag(Container::TAG_ITEMS, new ListTag($items, NBT::TAG_Compound)); + + if($this->lock !== null){ + $tag->setString(Container::TAG_LOCK, $this->lock); + } + } } From b0936a50c11215d5d6928070996deb4425b43e4a Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 17 Oct 2023 11:28:58 +0100 Subject: [PATCH 02/39] Block: split generateStatePermutations into type and state parts this makes it marginally faster, since we can skip all permutations containing invalid type data. I measured a performance improvement of about 20% across all blocks. In addition, this makes it easier to locate where a problem is coming from if invalid inputs are accepted. --- src/block/Block.php | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index 7d01ce7ef..be154ec7b 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -304,18 +304,32 @@ class Block{ if($bits > Block::INTERNAL_STATE_DATA_BITS){ throw new \LogicException("Block state data cannot use more than " . Block::INTERNAL_STATE_DATA_BITS . " bits"); } - for($stateData = 0; $stateData < (1 << $bits); ++$stateData){ - $v = clone $this; + for($blockItemStateData = 0; $blockItemStateData < (1 << $this->requiredBlockItemStateDataBits); ++$blockItemStateData){ + $withType = clone $this; try{ - $v->decodeFullState($stateData); - if($v->encodeFullState() !== $stateData){ - throw new \LogicException(static::class . "::decodeStateData() accepts invalid state data (returned " . $v->encodeFullState() . " for input $stateData)"); + $withType->decodeBlockItemState($blockItemStateData); + $encoded = $withType->encodeBlockItemState(); + if($encoded !== $blockItemStateData){ + throw new \LogicException(static::class . "::decodeBlockItemState() accepts invalid inputs (returned $encoded for input $blockItemStateData)"); } }catch(InvalidSerializedRuntimeDataException){ //invalid property combination, leave it continue; } - yield $v; + for($blockOnlyStateData = 0; $blockOnlyStateData < (1 << $this->requiredBlockOnlyStateDataBits); ++$blockOnlyStateData){ + $withState = clone $withType; + try{ + $withState->decodeBlockOnlyState($blockOnlyStateData); + $encoded = $withState->encodeBlockOnlyState(); + if($encoded !== $blockOnlyStateData){ + throw new \LogicException(static::class . "::decodeBlockOnlyState() accepts invalid inputs (returned $encoded for input $blockOnlyStateData)"); + } + }catch(InvalidSerializedRuntimeDataException){ //invalid property combination, leave it + continue; + } + + yield $withState; + } } } From 18b711aca8f93e8a44e33ff3bf8f483c60c34383 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 17 Oct 2023 11:34:02 +0100 Subject: [PATCH 03/39] Apparently this function is no longer needed --- src/block/Block.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index be154ec7b..55737bbd6 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -228,12 +228,6 @@ class Block{ } } - private function decodeFullState(int $data) : void{ - $reader = new RuntimeDataReader($this->requiredBlockItemStateDataBits + $this->requiredBlockOnlyStateDataBits, $data); - $this->decodeBlockItemState($reader->readInt($this->requiredBlockItemStateDataBits)); - $this->decodeBlockOnlyState($reader->readInt($this->requiredBlockOnlyStateDataBits)); - } - private function encodeBlockItemState() : int{ $writer = new RuntimeDataWriter($this->requiredBlockItemStateDataBits); From d0d16cdeb73656b5ed1c46e0246f3b3fa7f4e29d Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 17 Oct 2023 12:03:43 +0100 Subject: [PATCH 04/39] RuntimeDataDescriber: Introduce boundedIntAuto, replacing boundedInt closes #6096 boundedIntAuto automatically calculates the correct number of bits to use based on the given bounds. The bounds must be constant, of course. --- src/block/AmethystCluster.php | 2 +- src/block/Anvil.php | 2 +- src/block/Bamboo.php | 2 +- src/block/Cake.php | 2 +- src/block/Candle.php | 2 +- src/block/CaveVines.php | 2 +- src/block/CocoaBlock.php | 2 +- src/block/DaylightSensor.php | 2 +- src/block/Farmland.php | 2 +- src/block/FillableCauldron.php | 2 +- src/block/Light.php | 2 +- src/block/Liquid.php | 2 +- src/block/PinkPetals.php | 2 +- src/block/RedstoneRepeater.php | 2 +- src/block/SeaPickle.php | 2 +- src/block/SnowLayer.php | 2 +- src/block/utils/AgeableTrait.php | 3 +-- .../AnalogRedstoneSignalEmitterTrait.php | 2 +- src/block/utils/SignLikeRotationTrait.php | 2 +- src/data/runtime/RuntimeDataDescriber.php | 9 ++++++++ src/data/runtime/RuntimeDataReader.php | 22 +++++++++++++++---- .../runtime/RuntimeDataSizeCalculator.php | 15 ++++++++++++- src/data/runtime/RuntimeDataWriter.php | 22 +++++++++++++++---- 23 files changed, 78 insertions(+), 29 deletions(-) diff --git a/src/block/AmethystCluster.php b/src/block/AmethystCluster.php index 5e23d4463..639490456 100644 --- a/src/block/AmethystCluster.php +++ b/src/block/AmethystCluster.php @@ -50,7 +50,7 @@ final class AmethystCluster extends Transparent{ private int $stage = self::STAGE_CLUSTER; public function describeBlockItemState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(2, self::STAGE_SMALL_BUD, self::STAGE_CLUSTER, $this->stage); + $w->boundedIntAuto(self::STAGE_SMALL_BUD, self::STAGE_CLUSTER, $this->stage); } public function getStage() : int{ return $this->stage; } diff --git a/src/block/Anvil.php b/src/block/Anvil.php index b4677e075..916c390ef 100644 --- a/src/block/Anvil.php +++ b/src/block/Anvil.php @@ -52,7 +52,7 @@ class Anvil extends Transparent implements Fallable{ private int $damage = self::UNDAMAGED; public function describeBlockItemState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(2, self::UNDAMAGED, self::VERY_DAMAGED, $this->damage); + $w->boundedIntAuto(self::UNDAMAGED, self::VERY_DAMAGED, $this->damage); } protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ diff --git a/src/block/Bamboo.php b/src/block/Bamboo.php index 255cd2857..5df71f696 100644 --- a/src/block/Bamboo.php +++ b/src/block/Bamboo.php @@ -58,7 +58,7 @@ class Bamboo extends Transparent{ protected int $leafSize = self::NO_LEAVES; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(2, self::NO_LEAVES, self::LARGE_LEAVES, $this->leafSize); + $w->boundedIntAuto(self::NO_LEAVES, self::LARGE_LEAVES, $this->leafSize); $w->bool($this->thick); $w->bool($this->ready); } diff --git a/src/block/Cake.php b/src/block/Cake.php index 5d4e3cfca..073fc62ac 100644 --- a/src/block/Cake.php +++ b/src/block/Cake.php @@ -37,7 +37,7 @@ class Cake extends BaseCake{ protected int $bites = 0; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(3, 0, self::MAX_BITES, $this->bites); + $w->boundedIntAuto(0, self::MAX_BITES, $this->bites); } /** diff --git a/src/block/Candle.php b/src/block/Candle.php index afcf5bb45..7f22641e1 100644 --- a/src/block/Candle.php +++ b/src/block/Candle.php @@ -48,7 +48,7 @@ class Candle extends Transparent{ protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ $this->encodeLitState($w); - $w->boundedInt(2, self::MIN_COUNT, self::MAX_COUNT, $this->count); + $w->boundedIntAuto(self::MIN_COUNT, self::MAX_COUNT, $this->count); } public function getCount() : int{ return $this->count; } diff --git a/src/block/CaveVines.php b/src/block/CaveVines.php index bc42a6788..daa973507 100644 --- a/src/block/CaveVines.php +++ b/src/block/CaveVines.php @@ -49,7 +49,7 @@ class CaveVines extends Flowable{ protected bool $head = false; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(5, 0, self::MAX_AGE, $this->age); + $w->boundedIntAuto(0, self::MAX_AGE, $this->age); $w->bool($this->berries); $w->bool($this->head); } diff --git a/src/block/CocoaBlock.php b/src/block/CocoaBlock.php index 25c53b23a..5cec4b933 100644 --- a/src/block/CocoaBlock.php +++ b/src/block/CocoaBlock.php @@ -48,7 +48,7 @@ class CocoaBlock extends Transparent{ protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ $w->horizontalFacing($this->facing); - $w->boundedInt(2, 0, self::MAX_AGE, $this->age); + $w->boundedIntAuto(0, self::MAX_AGE, $this->age); } /** diff --git a/src/block/DaylightSensor.php b/src/block/DaylightSensor.php index 0c0ec8820..4141a2b7e 100644 --- a/src/block/DaylightSensor.php +++ b/src/block/DaylightSensor.php @@ -42,7 +42,7 @@ class DaylightSensor extends Transparent{ protected bool $inverted = false; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(4, 0, 15, $this->signalStrength); + $w->boundedIntAuto(0, 15, $this->signalStrength); $w->bool($this->inverted); } diff --git a/src/block/Farmland.php b/src/block/Farmland.php index 2dd795eec..70a6eeba7 100644 --- a/src/block/Farmland.php +++ b/src/block/Farmland.php @@ -39,7 +39,7 @@ class Farmland extends Transparent{ protected int $wetness = 0; //"moisture" blockstate property in PC protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(3, 0, self::MAX_WETNESS, $this->wetness); + $w->boundedIntAuto(0, self::MAX_WETNESS, $this->wetness); } public function getWetness() : int{ return $this->wetness; } diff --git a/src/block/FillableCauldron.php b/src/block/FillableCauldron.php index 6c9b2940b..ceef35299 100644 --- a/src/block/FillableCauldron.php +++ b/src/block/FillableCauldron.php @@ -38,7 +38,7 @@ abstract class FillableCauldron extends Transparent{ private int $fillLevel = self::MIN_FILL_LEVEL; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(3, self::MIN_FILL_LEVEL, self::MAX_FILL_LEVEL, $this->fillLevel); + $w->boundedIntAuto(self::MIN_FILL_LEVEL, self::MAX_FILL_LEVEL, $this->fillLevel); } public function getFillLevel() : int{ return $this->fillLevel; } diff --git a/src/block/Light.php b/src/block/Light.php index 239e1c048..29a3a8dfc 100644 --- a/src/block/Light.php +++ b/src/block/Light.php @@ -35,7 +35,7 @@ final class Light extends Flowable{ private int $level = self::MAX_LIGHT_LEVEL; public function describeBlockItemState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(4, self::MIN_LIGHT_LEVEL, self::MAX_LIGHT_LEVEL, $this->level); + $w->boundedIntAuto(self::MIN_LIGHT_LEVEL, self::MAX_LIGHT_LEVEL, $this->level); } public function getLightLevel() : int{ return $this->level; } diff --git a/src/block/Liquid.php b/src/block/Liquid.php index 2299f7d71..9a9e49af4 100644 --- a/src/block/Liquid.php +++ b/src/block/Liquid.php @@ -49,7 +49,7 @@ abstract class Liquid extends Transparent{ protected bool $still = false; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(3, 0, self::MAX_DECAY, $this->decay); + $w->boundedIntAuto(0, self::MAX_DECAY, $this->decay); $w->bool($this->falling); $w->bool($this->still); } diff --git a/src/block/PinkPetals.php b/src/block/PinkPetals.php index 5f1130206..872798df0 100644 --- a/src/block/PinkPetals.php +++ b/src/block/PinkPetals.php @@ -47,7 +47,7 @@ class PinkPetals extends Flowable{ protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ $w->horizontalFacing($this->facing); - $w->boundedInt(2, self::MIN_COUNT, self::MAX_COUNT, $this->count); + $w->boundedIntAuto(self::MIN_COUNT, self::MAX_COUNT, $this->count); } public function getCount() : int{ diff --git a/src/block/RedstoneRepeater.php b/src/block/RedstoneRepeater.php index 1306456d4..7e6e73da8 100644 --- a/src/block/RedstoneRepeater.php +++ b/src/block/RedstoneRepeater.php @@ -47,7 +47,7 @@ class RedstoneRepeater extends Flowable{ protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ $w->horizontalFacing($this->facing); - $w->boundedInt(2, self::MIN_DELAY, self::MAX_DELAY, $this->delay); + $w->boundedIntAuto(self::MIN_DELAY, self::MAX_DELAY, $this->delay); $w->bool($this->powered); } diff --git a/src/block/SeaPickle.php b/src/block/SeaPickle.php index 62662f9cf..627af9bac 100644 --- a/src/block/SeaPickle.php +++ b/src/block/SeaPickle.php @@ -39,7 +39,7 @@ class SeaPickle extends Transparent{ protected bool $underwater = false; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(2, self::MIN_COUNT, self::MAX_COUNT, $this->count); + $w->boundedIntAuto(self::MIN_COUNT, self::MAX_COUNT, $this->count); $w->bool($this->underwater); } diff --git a/src/block/SnowLayer.php b/src/block/SnowLayer.php index fd7258d91..cca8424a9 100644 --- a/src/block/SnowLayer.php +++ b/src/block/SnowLayer.php @@ -47,7 +47,7 @@ class SnowLayer extends Flowable implements Fallable{ protected int $layers = self::MIN_LAYERS; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(3, self::MIN_LAYERS, self::MAX_LAYERS, $this->layers); + $w->boundedIntAuto(self::MIN_LAYERS, self::MAX_LAYERS, $this->layers); } public function getLayers() : int{ return $this->layers; } diff --git a/src/block/utils/AgeableTrait.php b/src/block/utils/AgeableTrait.php index 8e2793e81..dc1369c87 100644 --- a/src/block/utils/AgeableTrait.php +++ b/src/block/utils/AgeableTrait.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace pocketmine\block\utils; use pocketmine\data\runtime\RuntimeDataDescriber; -use function log; /** * This trait is used for blocks that have an age property. @@ -34,7 +33,7 @@ trait AgeableTrait{ protected int $age = 0; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(((int) log(self::MAX_AGE, 2)) + 1, 0, self::MAX_AGE, $this->age); + $w->boundedIntAuto(0, self::MAX_AGE, $this->age); } public function getAge() : int{ return $this->age; } diff --git a/src/block/utils/AnalogRedstoneSignalEmitterTrait.php b/src/block/utils/AnalogRedstoneSignalEmitterTrait.php index fe61f652c..4b8694643 100644 --- a/src/block/utils/AnalogRedstoneSignalEmitterTrait.php +++ b/src/block/utils/AnalogRedstoneSignalEmitterTrait.php @@ -29,7 +29,7 @@ trait AnalogRedstoneSignalEmitterTrait{ protected int $signalStrength = 0; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(4, 0, 15, $this->signalStrength); + $w->boundedIntAuto(0, 15, $this->signalStrength); } public function getOutputSignalStrength() : int{ return $this->signalStrength; } diff --git a/src/block/utils/SignLikeRotationTrait.php b/src/block/utils/SignLikeRotationTrait.php index 233c75095..36b2dce3f 100644 --- a/src/block/utils/SignLikeRotationTrait.php +++ b/src/block/utils/SignLikeRotationTrait.php @@ -31,7 +31,7 @@ trait SignLikeRotationTrait{ private $rotation = 0; protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ - $w->boundedInt(4, 0, 15, $this->rotation); + $w->boundedIntAuto(0, 15, $this->rotation); } public function getRotation() : int{ return $this->rotation; } diff --git a/src/data/runtime/RuntimeDataDescriber.php b/src/data/runtime/RuntimeDataDescriber.php index 8eba38a1d..04217f5df 100644 --- a/src/data/runtime/RuntimeDataDescriber.php +++ b/src/data/runtime/RuntimeDataDescriber.php @@ -38,8 +38,17 @@ use pocketmine\math\Facing; interface RuntimeDataDescriber extends RuntimeEnumDescriber{ public function int(int $bits, int &$value) : void; + /** + * @deprecated Use {@link RuntimeDataDescriber::boundedIntAuto()} instead. + */ public function boundedInt(int $bits, int $min, int $max, int &$value) : void; + /** + * Same as boundedInt() but automatically calculates the required number of bits from the range. + * The range bounds must be constant. + */ + public function boundedIntAuto(int $min, int $max, int &$value) : void; + public function bool(bool &$value) : void; public function horizontalFacing(int &$facing) : void; diff --git a/src/data/runtime/RuntimeDataReader.php b/src/data/runtime/RuntimeDataReader.php index e4ccc892d..84239f411 100644 --- a/src/data/runtime/RuntimeDataReader.php +++ b/src/data/runtime/RuntimeDataReader.php @@ -31,6 +31,7 @@ use pocketmine\math\Facing; use pocketmine\utils\AssumptionFailedError; use function get_class; use function intdiv; +use function log; use function spl_object_id; final class RuntimeDataReader implements RuntimeDataDescriber{ @@ -58,7 +59,20 @@ final class RuntimeDataReader implements RuntimeDataDescriber{ $value = $this->readInt($bits); } - protected function readBoundedInt(int $bits, int $min, int $max) : int{ + /** + * @deprecated Use {@link self::boundedIntAuto()} instead. + */ + public function boundedInt(int $bits, int $min, int $max, int &$value) : void{ + $offset = $this->offset; + $this->boundedIntAuto($min, $max, $value); + $actualBits = $this->offset - $offset; + if($this->offset !== $offset + $bits){ + throw new \InvalidArgumentException("Bits should be $actualBits for the given bounds, but received $bits. Use boundedIntAuto() for automatic bits calculation."); + } + } + + private function readBoundedIntAuto(int $min, int $max) : int{ + $bits = ((int) log($max - $min, 2)) + 1; $result = $this->readInt($bits) + $min; if($result < $min || $result > $max){ throw new InvalidSerializedRuntimeDataException("Value is outside the range $min - $max"); @@ -66,8 +80,8 @@ final class RuntimeDataReader implements RuntimeDataDescriber{ return $result; } - public function boundedInt(int $bits, int $min, int $max, int &$value) : void{ - $value = $this->readBoundedInt($bits, $min, $max); + public function boundedIntAuto(int $min, int $max, int &$value) : void{ + $value = $this->readBoundedIntAuto($min, $max); } protected function readBool() : bool{ @@ -162,7 +176,7 @@ final class RuntimeDataReader implements RuntimeDataDescriber{ public function wallConnections(array &$connections) : void{ $result = []; $offset = 0; - $packed = $this->readBoundedInt(7, 0, (3 ** 4) - 1); + $packed = $this->readBoundedIntAuto(0, (3 ** 4) - 1); foreach(Facing::HORIZONTAL as $facing){ $type = intdiv($packed, (3 ** $offset)) % 3; if($type !== 0){ diff --git a/src/data/runtime/RuntimeDataSizeCalculator.php b/src/data/runtime/RuntimeDataSizeCalculator.php index 28ddaa673..18c703cb8 100644 --- a/src/data/runtime/RuntimeDataSizeCalculator.php +++ b/src/data/runtime/RuntimeDataSizeCalculator.php @@ -26,6 +26,7 @@ namespace pocketmine\data\runtime; use pocketmine\block\utils\BrewingStandSlot; use pocketmine\math\Facing; use function count; +use function log; final class RuntimeDataSizeCalculator implements RuntimeDataDescriber{ use LegacyRuntimeEnumDescriberTrait; @@ -44,8 +45,20 @@ final class RuntimeDataSizeCalculator implements RuntimeDataDescriber{ $this->addBits($bits); } + /** + * @deprecated Use {@link self::boundedIntAuto()} instead. + */ public function boundedInt(int $bits, int $min, int $max, int &$value) : void{ - $this->addBits($bits); + $currentBits = $this->bits; + $this->boundedIntAuto($min, $max, $value); + $actualBits = $this->bits - $currentBits; + if($actualBits !== $bits){ + throw new \InvalidArgumentException("Bits should be $actualBits for the given bounds, but received $bits. Use boundedIntAuto() for automatic bits calculation."); + } + } + + public function boundedIntAuto(int $min, int $max, int &$value) : void{ + $this->addBits(((int) log($max - $min, 2)) + 1); } public function bool(bool &$value) : void{ diff --git a/src/data/runtime/RuntimeDataWriter.php b/src/data/runtime/RuntimeDataWriter.php index 5224b3417..0fbdd869f 100644 --- a/src/data/runtime/RuntimeDataWriter.php +++ b/src/data/runtime/RuntimeDataWriter.php @@ -28,6 +28,7 @@ use pocketmine\block\utils\WallConnectionType; use pocketmine\math\Axis; use pocketmine\math\Facing; use function array_flip; +use function log; use function spl_object_id; final class RuntimeDataWriter implements RuntimeDataDescriber{ @@ -56,15 +57,28 @@ final class RuntimeDataWriter implements RuntimeDataDescriber{ $this->writeInt($bits, $value); } - protected function writeBoundedInt(int $bits, int $min, int $max, int $value) : void{ + /** + * @deprecated Use {@link self::boundedIntAuto()} instead. + */ + public function boundedInt(int $bits, int $min, int $max, int &$value) : void{ + $offset = $this->offset; + $this->writeBoundedIntAuto($min, $max, $value); + $actualBits = $this->offset - $offset; + if($actualBits !== $bits){ + throw new \InvalidArgumentException("Bits should be $actualBits for the given bounds, but received $bits. Use boundedIntAuto() for automatic bits calculation."); + } + } + + private function writeBoundedIntAuto(int $min, int $max, int $value) : void{ if($value < $min || $value > $max){ throw new \InvalidArgumentException("Value $value is outside the range $min - $max"); } + $bits = ((int) log($max - $min, 2)) + 1; $this->writeInt($bits, $value - $min); } - public function boundedInt(int $bits, int $min, int $max, int &$value) : void{ - $this->writeBoundedInt($bits, $min, $max, $value); + public function boundedIntAuto(int $min, int $max, int &$value) : void{ + $this->writeBoundedIntAuto($min, $max, $value); } protected function writeBool(bool $value) : void{ @@ -153,7 +167,7 @@ final class RuntimeDataWriter implements RuntimeDataDescriber{ } * (3 ** $offset); $offset++; } - $this->writeBoundedInt(7, 0, (3 ** 4) - 1, $packed); + $this->writeBoundedIntAuto(0, (3 ** 4) - 1, $packed); } /** From 224a69b11af4b37e46cd38b53b3018fa88b40429 Mon Sep 17 00:00:00 2001 From: Hugo_ <55756021+Dhaiven@users.noreply.github.com> Date: Tue, 17 Oct 2023 13:22:20 +0200 Subject: [PATCH 05/39] Sign can be a fuel (#6095) --- src/block/BaseSign.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/block/BaseSign.php b/src/block/BaseSign.php index d7a22f3b8..2c9f8cda2 100644 --- a/src/block/BaseSign.php +++ b/src/block/BaseSign.php @@ -271,4 +271,8 @@ abstract class BaseSign extends Transparent{ public function asItem() : Item{ return ($this->asItemCallback)(); } + + public function getFuelTime() : int{ + return $this->woodType->isFlammable() ? 200 : 0; + } } From 63fcf9879ad7589c078dc8ffab81cd97286d46f5 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 17 Oct 2023 15:20:31 +0100 Subject: [PATCH 06/39] Block: Use xxhash'd XOR mask to improve state data lower bits distribution xxhash is generally well known for its hash key properties, so this is a suitable use case. We XOR the state data with a partial hash of xxh3(typeID), which provides sufficient hash distribution regardless of the size of state data. The previous method started to break down as the number of bits exceeded the number of significant bits of type ID (about 10 currently). As well as being better for hash distribution regardless of state data size, this also reduces the load factor of RuntimeBlockRegistry to 1.08 (previously around 1.24), which is a nice bonus. --- src/block/Block.php | 34 ++++++++++++++----- tests/phpunit/block/BlockTest.php | 9 +++++ .../block_factory_consistency_check.json | 2 +- 3 files changed, 36 insertions(+), 9 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index 55737bbd6..a81b15211 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -50,12 +50,14 @@ use pocketmine\math\Vector3; use pocketmine\nbt\tag\CompoundTag; use pocketmine\player\Player; use pocketmine\utils\AssumptionFailedError; +use pocketmine\utils\Binary; use pocketmine\world\BlockTransaction; use pocketmine\world\format\Chunk; use pocketmine\world\Position; use pocketmine\world\World; use function count; use function get_class; +use function hash; use const PHP_INT_MAX; class Block{ @@ -64,8 +66,10 @@ class Block{ /** * @internal + * Hardcoded int is `Binary::readLong(hash('xxh3', Binary::writeLLong(BlockTypeIds::AIR), binary: true))` + * TODO: it would be much easier if we could just make this 0 or some other easy value */ - public const EMPTY_STATE_ID = (BlockTypeIds::AIR << self::INTERNAL_STATE_DATA_BITS) | (BlockTypeIds::AIR & self::INTERNAL_STATE_DATA_MASK); + public const EMPTY_STATE_ID = (BlockTypeIds::AIR << self::INTERNAL_STATE_DATA_BITS) | (-7482769108513497636 & self::INTERNAL_STATE_DATA_MASK); protected BlockIdentifier $idInfo; protected string $fallbackName; @@ -80,6 +84,23 @@ class Block{ private Block $defaultState; + private int $stateIdXorMask; + + /** + * Computes the mask to be XOR'd with the state data. + * This is to improve distribution of the state data bits, which occupy the least significant bits of the state ID. + * Improved distribution improves PHP array performance when using the state ID as a key, as PHP arrays use some of + * the lower bits of integer keys directly without hashing. + * + * The type ID is included in the XOR mask. This is not necessary to improve distribution, but it reduces the number + * of operations required to compute the state ID (micro optimization). + */ + public static function computeStateIdXorMask(int $typeId) : int{ + return + $typeId << self::INTERNAL_STATE_DATA_BITS | + (Binary::readLong(hash('xxh3', Binary::writeLLong($typeId), binary: true)) & self::INTERNAL_STATE_DATA_MASK); + } + /** * @param string $name English name of the block type (TODO: implement translations) */ @@ -97,6 +118,9 @@ class Block{ $this->describeBlockOnlyState($calculator); $this->requiredBlockOnlyStateDataBits = $calculator->getBitsUsed(); + $this->stateIdXorMask = self::computeStateIdXorMask($idInfo->getBlockTypeId()); + + //this must be done last, otherwise the defaultState could have uninitialized fields $defaultState = clone $this; $this->defaultState = $defaultState; $defaultState->defaultState = $defaultState; @@ -152,13 +176,7 @@ class Block{ * {@link RuntimeBlockStateRegistry::fromStateId()}. */ public function getStateId() : int{ - $typeId = $this->getTypeId(); - //TODO: this XOR mask improves hashtable distribution, but it's only effective if the number of unique block - //type IDs is larger than the number of available state data bits. We should probably hash (e.g. using xxhash) - //the type ID to create a better mask. - //Alternatively, we could hash the whole state ID, but this is currently problematic, since we currently need - //to be able to recover the state data from the state ID because of UnknownBlock. - return ($typeId << self::INTERNAL_STATE_DATA_BITS) | ($this->encodeFullState() ^ ($typeId & self::INTERNAL_STATE_DATA_MASK)); + return $this->encodeFullState() ^ $this->stateIdXorMask; } /** diff --git a/tests/phpunit/block/BlockTest.php b/tests/phpunit/block/BlockTest.php index 3b84b8021..f876bf402 100644 --- a/tests/phpunit/block/BlockTest.php +++ b/tests/phpunit/block/BlockTest.php @@ -28,6 +28,7 @@ use function asort; use function file_get_contents; use function is_array; use function json_decode; +use function log; use function print_r; use const SORT_STRING; @@ -125,6 +126,14 @@ class BlockTest extends TestCase{ self::assertInstanceOf(Air::class, $block); } + public function testStateDataSizeNotTooLarge() : void{ + $typeIdBitsMin = ((int) log(BlockTypeIds::FIRST_UNUSED_BLOCK_ID, 2)) + 1; + + $typeIdBitsMin++; //for custom blocks + + self::assertLessThanOrEqual(32, Block::INTERNAL_STATE_DATA_BITS + $typeIdBitsMin, "State data size cannot be larger than " . (32 - $typeIdBitsMin) . " bits (need at least $typeIdBitsMin bits for block type ID)"); + } + public function testAsItemFromItem() : void{ $block = VanillaBlocks::FLOWER_POT(); $item = $block->asItem(); diff --git a/tests/phpunit/block/block_factory_consistency_check.json b/tests/phpunit/block/block_factory_consistency_check.json index 219736a67..4a4c82b1e 100644 --- a/tests/phpunit/block/block_factory_consistency_check.json +++ b/tests/phpunit/block/block_factory_consistency_check.json @@ -1 +1 @@ -{"knownStates":{"???":[2624010],"Acacia Button":[2560272,2560273,2560274,2560275,2560276,2560277,2560280,2560281,2560282,2560283,2560284,2560285],"Acacia Door":[2560512,2560513,2560514,2560515,2560516,2560517,2560518,2560519,2560520,2560521,2560522,2560523,2560524,2560525,2560526,2560527,2560528,2560529,2560530,2560531,2560532,2560533,2560534,2560535,2560536,2560537,2560538,2560539,2560540,2560541,2560542,2560543],"Acacia Fence":[2560787],"Acacia Fence Gate":[2561040,2561041,2561042,2561043,2561044,2561045,2561046,2561047,2561048,2561049,2561050,2561051,2561052,2561053,2561054,2561055],"Acacia Leaves":[2561300,2561301,2561302,2561303],"Acacia Log":[2561554,2561555,2561556,2561557,2561558,2561559],"Acacia Planks":[2561815],"Acacia Pressure Plate":[2562072,2562073],"Acacia Sapling":[2562328,2562329],"Acacia Sign":[2562576,2562577,2562578,2562579,2562580,2562581,2562582,2562583,2562584,2562585,2562586,2562587,2562588,2562589,2562590,2562591],"Acacia Slab":[2562841,2562842,2562843],"Acacia Stairs":[2563096,2563097,2563098,2563099,2563100,2563101,2563102,2563103],"Acacia Trapdoor":[2563344,2563345,2563346,2563347,2563348,2563349,2563350,2563351,2563352,2563353,2563354,2563355,2563356,2563357,2563358,2563359],"Acacia Wall Sign":[2563612,2563613,2563614,2563615],"Acacia Wood":[2563866,2563867,2563868,2563869,2563870,2563871],"Actinium":[2594197],"Activator Rail":[2564128,2564129,2564130,2564131,2564132,2564133,2564136,2564137,2564138,2564139,2564140,2564141],"Air":[2560016],"All Sided Mushroom Stem":[2564385],"Allium":[2564642],"Aluminum":[2594454],"Americium":[2594711],"Amethyst":[2698284],"Amethyst Cluster":[2697760,2697761,2697762,2697763,2697764,2697765,2697766,2697767,2697768,2697769,2697770,2697771,2697772,2697773,2697774,2697775,2697784,2697785,2697786,2697787,2697788,2697789,2697790,2697791],"Ancient Debris":[2698541],"Andesite":[2564899],"Andesite Slab":[2565156,2565157,2565158],"Andesite Stairs":[2565408,2565409,2565410,2565411,2565412,2565413,2565414,2565415],"Andesite Wall":[2565632,2565633,2565634,2565635,2565636,2565637,2565638,2565639,2565640,2565641,2565642,2565643,2565644,2565645,2565646,2565647,2565648,2565649,2565650,2565651,2565652,2565653,2565654,2565655,2565656,2565657,2565658,2565659,2565660,2565661,2565662,2565663,2565664,2565665,2565666,2565667,2565668,2565669,2565670,2565671,2565672,2565673,2565674,2565675,2565676,2565677,2565678,2565679,2565680,2565681,2565682,2565683,2565684,2565685,2565686,2565687,2565688,2565689,2565690,2565691,2565692,2565693,2565694,2565695,2565728,2565729,2565730,2565731,2565732,2565733,2565734,2565735,2565736,2565737,2565738,2565739,2565740,2565741,2565742,2565743,2565750,2565760,2565761,2565762,2565763,2565764,2565765,2565766,2565767,2565768,2565769,2565770,2565771,2565772,2565773,2565774,2565775,2565776,2565777,2565778,2565779,2565780,2565781,2565782,2565783,2565784,2565785,2565786,2565787,2565788,2565789,2565790,2565791,2565792,2565793,2565794,2565795,2565796,2565797,2565798,2565799,2565800,2565801,2565802,2565803,2565804,2565805,2565806,2565807,2565808,2565809,2565810,2565811,2565812,2565813,2565814,2565815,2565816,2565817,2565818,2565819,2565820,2565821,2565822,2565823,2565856,2565857,2565858,2565859,2565860,2565861,2565862,2565863,2565864,2565865,2565866,2565867,2565868,2565869,2565870,2565871,2565878],"Antimony":[2594968],"Anvil":[2565921,2565922,2565923,2565925,2565926,2565927,2565929,2565930,2565931,2565933,2565934,2565935],"Argon":[2595225],"Arsenic":[2595482],"Astatine":[2595739],"Azalea Leaves":[2735804,2735805,2735806,2735807],"Azure Bluet":[2566184],"Bamboo":[2566432,2566433,2566435,2566436,2566437,2566439,2566440,2566441,2566443,2566444,2566445,2566447],"Bamboo Sapling":[2566698,2566699],"Banner":[2566912,2566913,2566914,2566915,2566916,2566917,2566918,2566919,2566920,2566921,2566922,2566923,2566924,2566925,2566926,2566927,2566928,2566929,2566930,2566931,2566932,2566933,2566934,2566935,2566936,2566937,2566938,2566939,2566940,2566941,2566942,2566943,2566944,2566945,2566946,2566947,2566948,2566949,2566950,2566951,2566952,2566953,2566954,2566955,2566956,2566957,2566958,2566959,2566960,2566961,2566962,2566963,2566964,2566965,2566966,2566967,2566968,2566969,2566970,2566971,2566972,2566973,2566974,2566975,2566976,2566977,2566978,2566979,2566980,2566981,2566982,2566983,2566984,2566985,2566986,2566987,2566988,2566989,2566990,2566991,2566992,2566993,2566994,2566995,2566996,2566997,2566998,2566999,2567000,2567001,2567002,2567003,2567004,2567005,2567006,2567007,2567008,2567009,2567010,2567011,2567012,2567013,2567014,2567015,2567016,2567017,2567018,2567019,2567020,2567021,2567022,2567023,2567024,2567025,2567026,2567027,2567028,2567029,2567030,2567031,2567032,2567033,2567034,2567035,2567036,2567037,2567038,2567039,2567040,2567041,2567042,2567043,2567044,2567045,2567046,2567047,2567048,2567049,2567050,2567051,2567052,2567053,2567054,2567055,2567056,2567057,2567058,2567059,2567060,2567061,2567062,2567063,2567064,2567065,2567066,2567067,2567068,2567069,2567070,2567071,2567072,2567073,2567074,2567075,2567076,2567077,2567078,2567079,2567080,2567081,2567082,2567083,2567084,2567085,2567086,2567087,2567088,2567089,2567090,2567091,2567092,2567093,2567094,2567095,2567096,2567097,2567098,2567099,2567100,2567101,2567102,2567103,2567104,2567105,2567106,2567107,2567108,2567109,2567110,2567111,2567112,2567113,2567114,2567115,2567116,2567117,2567118,2567119,2567120,2567121,2567122,2567123,2567124,2567125,2567126,2567127,2567128,2567129,2567130,2567131,2567132,2567133,2567134,2567135,2567136,2567137,2567138,2567139,2567140,2567141,2567142,2567143,2567144,2567145,2567146,2567147,2567148,2567149,2567150,2567151,2567152,2567153,2567154,2567155,2567156,2567157,2567158,2567159,2567160,2567161,2567162,2567163,2567164,2567165,2567166,2567167],"Barium":[2595996],"Barrel":[2567200,2567201,2567204,2567205,2567206,2567207,2567208,2567209,2567212,2567213,2567214,2567215],"Barrier":[2567469],"Basalt":[2698796,2698798,2698799],"Beacon":[2567726],"Bed Block":[2567936,2567937,2567938,2567939,2567940,2567941,2567942,2567943,2567944,2567945,2567946,2567947,2567948,2567949,2567950,2567951,2567952,2567953,2567954,2567955,2567956,2567957,2567958,2567959,2567960,2567961,2567962,2567963,2567964,2567965,2567966,2567967,2567968,2567969,2567970,2567971,2567972,2567973,2567974,2567975,2567976,2567977,2567978,2567979,2567980,2567981,2567982,2567983,2567984,2567985,2567986,2567987,2567988,2567989,2567990,2567991,2567992,2567993,2567994,2567995,2567996,2567997,2567998,2567999,2568000,2568001,2568002,2568003,2568004,2568005,2568006,2568007,2568008,2568009,2568010,2568011,2568012,2568013,2568014,2568015,2568016,2568017,2568018,2568019,2568020,2568021,2568022,2568023,2568024,2568025,2568026,2568027,2568028,2568029,2568030,2568031,2568032,2568033,2568034,2568035,2568036,2568037,2568038,2568039,2568040,2568041,2568042,2568043,2568044,2568045,2568046,2568047,2568048,2568049,2568050,2568051,2568052,2568053,2568054,2568055,2568056,2568057,2568058,2568059,2568060,2568061,2568062,2568063,2568064,2568065,2568066,2568067,2568068,2568069,2568070,2568071,2568072,2568073,2568074,2568075,2568076,2568077,2568078,2568079,2568080,2568081,2568082,2568083,2568084,2568085,2568086,2568087,2568088,2568089,2568090,2568091,2568092,2568093,2568094,2568095,2568096,2568097,2568098,2568099,2568100,2568101,2568102,2568103,2568104,2568105,2568106,2568107,2568108,2568109,2568110,2568111,2568112,2568113,2568114,2568115,2568116,2568117,2568118,2568119,2568120,2568121,2568122,2568123,2568124,2568125,2568126,2568127,2568128,2568129,2568130,2568131,2568132,2568133,2568134,2568135,2568136,2568137,2568138,2568139,2568140,2568141,2568142,2568143,2568144,2568145,2568146,2568147,2568148,2568149,2568150,2568151,2568152,2568153,2568154,2568155,2568156,2568157,2568158,2568159,2568160,2568161,2568162,2568163,2568164,2568165,2568166,2568167,2568168,2568169,2568170,2568171,2568172,2568173,2568174,2568175,2568176,2568177,2568178,2568179,2568180,2568181,2568182,2568183,2568184,2568185,2568186,2568187,2568188,2568189,2568190,2568191],"Bedrock":[2568240,2568241],"Beetroot Block":[2568496,2568497,2568498,2568499,2568500,2568501,2568502,2568503],"Bell":[2568752,2568753,2568754,2568755,2568756,2568757,2568758,2568759,2568760,2568761,2568762,2568763,2568764,2568765,2568766,2568767],"Berkelium":[2596253],"Beryllium":[2596510],"Big Dripleaf":[2741200,2741201,2741202,2741203,2741204,2741205,2741206,2741207,2741208,2741209,2741210,2741211,2741212,2741213,2741214,2741215],"Big Dripleaf Stem":[2741460,2741461,2741462,2741463],"Birch Button":[2569008,2569009,2569010,2569011,2569014,2569015,2569016,2569017,2569018,2569019,2569022,2569023],"Birch Door":[2569248,2569249,2569250,2569251,2569252,2569253,2569254,2569255,2569256,2569257,2569258,2569259,2569260,2569261,2569262,2569263,2569264,2569265,2569266,2569267,2569268,2569269,2569270,2569271,2569272,2569273,2569274,2569275,2569276,2569277,2569278,2569279],"Birch Fence":[2569525],"Birch Fence Gate":[2569776,2569777,2569778,2569779,2569780,2569781,2569782,2569783,2569784,2569785,2569786,2569787,2569788,2569789,2569790,2569791],"Birch Leaves":[2570036,2570037,2570038,2570039],"Birch Log":[2570296,2570297,2570298,2570299,2570300,2570301],"Birch Planks":[2570553],"Birch Pressure Plate":[2570810,2570811],"Birch Sapling":[2571066,2571067],"Birch Sign":[2571312,2571313,2571314,2571315,2571316,2571317,2571318,2571319,2571320,2571321,2571322,2571323,2571324,2571325,2571326,2571327],"Birch Slab":[2571580,2571581,2571583],"Birch Stairs":[2571832,2571833,2571834,2571835,2571836,2571837,2571838,2571839],"Birch Trapdoor":[2572080,2572081,2572082,2572083,2572084,2572085,2572086,2572087,2572088,2572089,2572090,2572091,2572092,2572093,2572094,2572095],"Birch Wall Sign":[2572352,2572353,2572354,2572355],"Birch Wood":[2572608,2572609,2572610,2572611,2572612,2572613],"Bismuth":[2596767],"Blackstone":[2699569],"Blackstone Slab":[2699824,2699826,2699827],"Blackstone Stairs":[2700080,2700081,2700082,2700083,2700084,2700085,2700086,2700087],"Blackstone Wall":[2700288,2700289,2700290,2700291,2700292,2700293,2700294,2700295,2700296,2700297,2700298,2700299,2700300,2700301,2700302,2700303,2700304,2700305,2700306,2700307,2700308,2700309,2700310,2700311,2700312,2700313,2700314,2700315,2700316,2700317,2700318,2700319,2700320,2700321,2700322,2700323,2700324,2700325,2700326,2700327,2700328,2700329,2700330,2700331,2700332,2700333,2700334,2700335,2700336,2700337,2700338,2700339,2700340,2700341,2700342,2700343,2700344,2700345,2700346,2700347,2700348,2700349,2700350,2700351,2700388,2700400,2700401,2700402,2700403,2700404,2700405,2700406,2700407,2700408,2700409,2700410,2700411,2700412,2700413,2700414,2700415,2700416,2700417,2700418,2700419,2700420,2700421,2700422,2700423,2700424,2700425,2700426,2700427,2700428,2700429,2700430,2700431,2700432,2700433,2700434,2700435,2700436,2700437,2700438,2700439,2700440,2700441,2700442,2700443,2700444,2700445,2700446,2700447,2700448,2700449,2700450,2700451,2700452,2700453,2700454,2700455,2700456,2700457,2700458,2700459,2700460,2700461,2700462,2700463,2700464,2700465,2700466,2700467,2700468,2700469,2700470,2700471,2700472,2700473,2700474,2700475,2700476,2700477,2700478,2700479,2700516,2700528,2700529,2700530,2700531,2700532,2700533,2700534,2700535,2700536,2700537,2700538,2700539,2700540,2700541,2700542,2700543],"Blast Furnace":[2573120,2573121,2573122,2573123,2573124,2573125,2573126,2573127],"Blue Ice":[2573637],"Blue Orchid":[2573894],"Blue Torch":[2574146,2574147,2574148,2574149,2574150],"Bohrium":[2597024],"Bone Block":[2574408,2574409,2574410],"Bookshelf":[2574665],"Boron":[2597281],"Brewing Stand":[2574920,2574921,2574922,2574923,2574924,2574925,2574926,2574927],"Brick Slab":[2575177,2575178,2575179],"Brick Stairs":[2575432,2575433,2575434,2575435,2575436,2575437,2575438,2575439],"Brick Wall":[2575616,2575617,2575618,2575619,2575620,2575621,2575622,2575623,2575624,2575625,2575626,2575627,2575628,2575629,2575630,2575631,2575645,2575680,2575681,2575682,2575683,2575684,2575685,2575686,2575687,2575688,2575689,2575690,2575691,2575692,2575693,2575694,2575695,2575696,2575697,2575698,2575699,2575700,2575701,2575702,2575703,2575704,2575705,2575706,2575707,2575708,2575709,2575710,2575711,2575712,2575713,2575714,2575715,2575716,2575717,2575718,2575719,2575720,2575721,2575722,2575723,2575724,2575725,2575726,2575727,2575728,2575729,2575730,2575731,2575732,2575733,2575734,2575735,2575736,2575737,2575738,2575739,2575740,2575741,2575742,2575743,2575744,2575745,2575746,2575747,2575748,2575749,2575750,2575751,2575752,2575753,2575754,2575755,2575756,2575757,2575758,2575759,2575773,2575808,2575809,2575810,2575811,2575812,2575813,2575814,2575815,2575816,2575817,2575818,2575819,2575820,2575821,2575822,2575823,2575824,2575825,2575826,2575827,2575828,2575829,2575830,2575831,2575832,2575833,2575834,2575835,2575836,2575837,2575838,2575839,2575840,2575841,2575842,2575843,2575844,2575845,2575846,2575847,2575848,2575849,2575850,2575851,2575852,2575853,2575854,2575855,2575856,2575857,2575858,2575859,2575860,2575861,2575862,2575863,2575864,2575865,2575866,2575867,2575868,2575869,2575870,2575871],"Bricks":[2575950],"Bromine":[2597538],"Brown Mushroom":[2576464],"Brown Mushroom Block":[2576720,2576721,2576722,2576723,2576724,2576725,2576726,2576727,2576728,2576729,2576731],"Budding Amethyst":[2696999],"Cactus":[2576976,2576977,2576978,2576979,2576980,2576981,2576982,2576983,2576984,2576985,2576986,2576987,2576988,2576989,2576990,2576991],"Cadmium":[2597795],"Cake":[2577232,2577233,2577234,2577235,2577237,2577238,2577239],"Cake With Candle":[2729638,2729639],"Cake With Dyed Candle":[2729888,2729889,2729890,2729891,2729892,2729893,2729894,2729895,2729896,2729897,2729898,2729899,2729900,2729901,2729902,2729903,2729904,2729905,2729906,2729907,2729908,2729909,2729910,2729911,2729912,2729913,2729914,2729915,2729916,2729917,2729918,2729919],"Calcite":[2704709],"Calcium":[2598052],"Californium":[2598309],"Candle":[2729120,2729121,2729122,2729123,2729124,2729125,2729126,2729127],"Carbon":[2598566],"Carpet":[2577488,2577489,2577490,2577491,2577492,2577493,2577494,2577495,2577496,2577497,2577498,2577499,2577500,2577501,2577502,2577503],"Carrot Block":[2577744,2577745,2577746,2577747,2577748,2577749,2577750,2577751],"Cartography Table":[2730666],"Carved Pumpkin":[2578004,2578005,2578006,2578007],"Cauldron":[2731694],"Cave Vines":[2736512,2736513,2736514,2736515,2736516,2736517,2736518,2736519,2736520,2736521,2736522,2736523,2736524,2736525,2736526,2736527,2736528,2736529,2736530,2736531,2736532,2736533,2736534,2736535,2736536,2736537,2736544,2736545,2736546,2736547,2736548,2736549,2736550,2736551,2736552,2736553,2736554,2736555,2736556,2736557,2736558,2736559,2736560,2736561,2736562,2736563,2736564,2736565,2736566,2736567,2736568,2736569,2736576,2736577,2736578,2736579,2736580,2736581,2736582,2736583,2736584,2736585,2736586,2736587,2736588,2736589,2736590,2736591,2736592,2736593,2736594,2736595,2736596,2736597,2736598,2736599,2736600,2736601,2736608,2736609,2736610,2736611,2736612,2736613,2736614,2736615,2736616,2736617,2736618,2736619,2736620,2736621,2736622,2736623,2736624,2736625,2736626,2736627,2736628,2736629,2736630,2736631,2736632,2736633],"Cerium":[2598823],"Cesium":[2599080],"Chain":[2734776,2734778,2734779],"Cherry Button":[2737088,2737089,2737090,2737091,2737094,2737095,2737096,2737097,2737098,2737099,2737102,2737103],"Cherry Door":[2737344,2737345,2737346,2737347,2737348,2737349,2737350,2737351,2737352,2737353,2737354,2737355,2737356,2737357,2737358,2737359,2737360,2737361,2737362,2737363,2737364,2737365,2737366,2737367,2737368,2737369,2737370,2737371,2737372,2737373,2737374,2737375],"Cherry Fence":[2737605],"Cherry Fence Gate":[2737856,2737857,2737858,2737859,2737860,2737861,2737862,2737863,2737864,2737865,2737866,2737867,2737868,2737869,2737870,2737871],"Cherry Leaves":[2738116,2738117,2738118,2738119],"Cherry Log":[2738376,2738377,2738378,2738379,2738380,2738381],"Cherry Planks":[2738633],"Cherry Pressure Plate":[2738890,2738891],"Cherry Sign":[2739392,2739393,2739394,2739395,2739396,2739397,2739398,2739399,2739400,2739401,2739402,2739403,2739404,2739405,2739406,2739407],"Cherry Slab":[2739660,2739661,2739663],"Cherry Stairs":[2739912,2739913,2739914,2739915,2739916,2739917,2739918,2739919],"Cherry Trapdoor":[2740160,2740161,2740162,2740163,2740164,2740165,2740166,2740167,2740168,2740169,2740170,2740171,2740172,2740173,2740174,2740175],"Cherry Wall Sign":[2740432,2740433,2740434,2740435],"Cherry Wood":[2740688,2740689,2740690,2740691,2740692,2740693],"Chest":[2578520,2578521,2578522,2578523],"Chiseled Bookshelf":[2742272,2742273,2742274,2742275,2742276,2742277,2742278,2742279,2742280,2742281,2742282,2742283,2742284,2742285,2742286,2742287,2742288,2742289,2742290,2742291,2742292,2742293,2742294,2742295,2742296,2742297,2742298,2742299,2742300,2742301,2742302,2742303,2742304,2742305,2742306,2742307,2742308,2742309,2742310,2742311,2742312,2742313,2742314,2742315,2742316,2742317,2742318,2742319,2742320,2742321,2742322,2742323,2742324,2742325,2742326,2742327,2742328,2742329,2742330,2742331,2742332,2742333,2742334,2742335,2742336,2742337,2742338,2742339,2742340,2742341,2742342,2742343,2742344,2742345,2742346,2742347,2742348,2742349,2742350,2742351,2742352,2742353,2742354,2742355,2742356,2742357,2742358,2742359,2742360,2742361,2742362,2742363,2742364,2742365,2742366,2742367,2742368,2742369,2742370,2742371,2742372,2742373,2742374,2742375,2742376,2742377,2742378,2742379,2742380,2742381,2742382,2742383,2742384,2742385,2742386,2742387,2742388,2742389,2742390,2742391,2742392,2742393,2742394,2742395,2742396,2742397,2742398,2742399,2742400,2742401,2742402,2742403,2742404,2742405,2742406,2742407,2742408,2742409,2742410,2742411,2742412,2742413,2742414,2742415,2742416,2742417,2742418,2742419,2742420,2742421,2742422,2742423,2742424,2742425,2742426,2742427,2742428,2742429,2742430,2742431,2742432,2742433,2742434,2742435,2742436,2742437,2742438,2742439,2742440,2742441,2742442,2742443,2742444,2742445,2742446,2742447,2742448,2742449,2742450,2742451,2742452,2742453,2742454,2742455,2742456,2742457,2742458,2742459,2742460,2742461,2742462,2742463,2742464,2742465,2742466,2742467,2742468,2742469,2742470,2742471,2742472,2742473,2742474,2742475,2742476,2742477,2742478,2742479,2742480,2742481,2742482,2742483,2742484,2742485,2742486,2742487,2742488,2742489,2742490,2742491,2742492,2742493,2742494,2742495,2742496,2742497,2742498,2742499,2742500,2742501,2742502,2742503,2742504,2742505,2742506,2742507,2742508,2742509,2742510,2742511,2742512,2742513,2742514,2742515,2742516,2742517,2742518,2742519,2742520,2742521,2742522,2742523,2742524,2742525,2742526,2742527],"Chiseled Deepslate":[2710106],"Chiseled Nether Bricks":[2710363],"Chiseled Polished Blackstone":[2702139],"Chiseled Quartz Block":[2578776,2578777,2578779],"Chiseled Red Sandstone":[2579034],"Chiseled Sandstone":[2579291],"Chiseled Stone Bricks":[2579548],"Chlorine":[2599337],"Chorus Flower":[2732976,2732977,2732978,2732979,2732982,2732983],"Chorus Plant":[2733236],"Chromium":[2599594],"Clay Block":[2579805],"Coal Block":[2580062],"Coal Ore":[2580319],"Cobalt":[2599851],"Cobbled Deepslate":[2707793],"Cobbled Deepslate Slab":[2708048,2708050,2708051],"Cobbled Deepslate Stairs":[2708304,2708305,2708306,2708307,2708308,2708309,2708310,2708311],"Cobbled Deepslate Wall":[2708484,2708496,2708497,2708498,2708499,2708500,2708501,2708502,2708503,2708504,2708505,2708506,2708507,2708508,2708509,2708510,2708511,2708544,2708545,2708546,2708547,2708548,2708549,2708550,2708551,2708552,2708553,2708554,2708555,2708556,2708557,2708558,2708559,2708560,2708561,2708562,2708563,2708564,2708565,2708566,2708567,2708568,2708569,2708570,2708571,2708572,2708573,2708574,2708575,2708576,2708577,2708578,2708579,2708580,2708581,2708582,2708583,2708584,2708585,2708586,2708587,2708588,2708589,2708590,2708591,2708592,2708593,2708594,2708595,2708596,2708597,2708598,2708599,2708600,2708601,2708602,2708603,2708604,2708605,2708606,2708607,2708612,2708624,2708625,2708626,2708627,2708628,2708629,2708630,2708631,2708632,2708633,2708634,2708635,2708636,2708637,2708638,2708639,2708672,2708673,2708674,2708675,2708676,2708677,2708678,2708679,2708680,2708681,2708682,2708683,2708684,2708685,2708686,2708687,2708688,2708689,2708690,2708691,2708692,2708693,2708694,2708695,2708696,2708697,2708698,2708699,2708700,2708701,2708702,2708703,2708704,2708705,2708706,2708707,2708708,2708709,2708710,2708711,2708712,2708713,2708714,2708715,2708716,2708717,2708718,2708719,2708720,2708721,2708722,2708723,2708724,2708725,2708726,2708727,2708728,2708729,2708730,2708731,2708732,2708733,2708734,2708735],"Cobblestone":[2580576],"Cobblestone Slab":[2580832,2580833,2580835],"Cobblestone Stairs":[2581088,2581089,2581090,2581091,2581092,2581093,2581094,2581095],"Cobblestone Wall":[2581280,2581281,2581282,2581283,2581284,2581285,2581286,2581287,2581288,2581289,2581290,2581291,2581292,2581293,2581294,2581295,2581299,2581312,2581313,2581314,2581315,2581316,2581317,2581318,2581319,2581320,2581321,2581322,2581323,2581324,2581325,2581326,2581327,2581328,2581329,2581330,2581331,2581332,2581333,2581334,2581335,2581336,2581337,2581338,2581339,2581340,2581341,2581342,2581343,2581344,2581345,2581346,2581347,2581348,2581349,2581350,2581351,2581352,2581353,2581354,2581355,2581356,2581357,2581358,2581359,2581360,2581361,2581362,2581363,2581364,2581365,2581366,2581367,2581368,2581369,2581370,2581371,2581372,2581373,2581374,2581375,2581408,2581409,2581410,2581411,2581412,2581413,2581414,2581415,2581416,2581417,2581418,2581419,2581420,2581421,2581422,2581423,2581427,2581440,2581441,2581442,2581443,2581444,2581445,2581446,2581447,2581448,2581449,2581450,2581451,2581452,2581453,2581454,2581455,2581456,2581457,2581458,2581459,2581460,2581461,2581462,2581463,2581464,2581465,2581466,2581467,2581468,2581469,2581470,2581471,2581472,2581473,2581474,2581475,2581476,2581477,2581478,2581479,2581480,2581481,2581482,2581483,2581484,2581485,2581486,2581487,2581488,2581489,2581490,2581491,2581492,2581493,2581494,2581495,2581496,2581497,2581498,2581499,2581500,2581501,2581502,2581503],"Cobweb":[2581604],"Cocoa Block":[2581856,2581857,2581858,2581859,2581860,2581861,2581862,2581863,2581868,2581869,2581870,2581871],"Compound Creator":[2582116,2582117,2582118,2582119],"Concrete":[2582368,2582369,2582370,2582371,2582372,2582373,2582374,2582375,2582376,2582377,2582378,2582379,2582380,2582381,2582382,2582383],"Concrete Powder":[2582624,2582625,2582626,2582627,2582628,2582629,2582630,2582631,2582632,2582633,2582634,2582635,2582636,2582637,2582638,2582639],"Copernicium":[2600365],"Copper":[2600622],"Copper Block":[2728096,2728097,2728098,2728099,2728100,2728101,2728102,2728103],"Copper Ore":[2725012],"Coral":[2582880,2582881,2582882,2582883,2582885,2582888,2582889,2582890,2582891,2582893],"Coral Block":[2583136,2583137,2583138,2583139,2583142,2583144,2583145,2583146,2583147,2583150],"Coral Fan":[2583392,2583393,2583394,2583395,2583399,2583400,2583401,2583402,2583403,2583407,2583408,2583409,2583410,2583411,2583415,2583416,2583417,2583418,2583419,2583423],"Cornflower":[2583660],"Cracked Deepslate Bricks":[2706251],"Cracked Deepslate Tiles":[2707536],"Cracked Nether Bricks":[2710620],"Cracked Polished Blackstone Bricks":[2703424],"Cracked Stone Bricks":[2583917],"Crafting Table":[2584174],"Crimson Button":[2717298,2717299,2717300,2717301,2717302,2717303,2717306,2717307,2717308,2717309,2717310,2717311],"Crimson Door":[2718816,2718817,2718818,2718819,2718820,2718821,2718822,2718823,2718824,2718825,2718826,2718827,2718828,2718829,2718830,2718831,2718832,2718833,2718834,2718835,2718836,2718837,2718838,2718839,2718840,2718841,2718842,2718843,2718844,2718845,2718846,2718847],"Crimson Fence":[2713447],"Crimson Fence Gate":[2719600,2719601,2719602,2719603,2719604,2719605,2719606,2719607,2719608,2719609,2719610,2719611,2719612,2719613,2719614,2719615],"Crimson Hyphae":[2715760,2715761,2715762,2715763,2715764,2715765],"Crimson Planks":[2712676],"Crimson Pressure Plate":[2718072,2718073],"Crimson Roots":[2741974],"Crimson Sign":[2721152,2721153,2721154,2721155,2721156,2721157,2721158,2721159,2721160,2721161,2721162,2721163,2721164,2721165,2721166,2721167],"Crimson Slab":[2714216,2714218,2714219],"Crimson Stairs":[2720384,2720385,2720386,2720387,2720388,2720389,2720390,2720391],"Crimson Stem":[2714984,2714985,2714988,2714989,2714990,2714991],"Crimson Trapdoor":[2716528,2716529,2716530,2716531,2716532,2716533,2716534,2716535,2716536,2716537,2716538,2716539,2716540,2716541,2716542,2716543],"Crimson Wall Sign":[2721928,2721929,2721930,2721931],"Crying Obsidian":[2727325],"Curium":[2600879],"Cut Copper Block":[2728352,2728353,2728354,2728355,2728356,2728357,2728358,2728359],"Cut Copper Slab Slab":[2728608,2728609,2728610,2728611,2728612,2728613,2728614,2728615,2728616,2728617,2728618,2728619,2728620,2728621,2728622,2728623,2728624,2728625,2728626,2728627,2728628,2728629,2728630,2728631],"Cut Copper Stairs":[2728832,2728833,2728834,2728835,2728836,2728837,2728838,2728839,2728840,2728841,2728842,2728843,2728844,2728845,2728846,2728847,2728848,2728849,2728850,2728851,2728852,2728853,2728854,2728855,2728856,2728857,2728858,2728859,2728860,2728861,2728862,2728863,2728864,2728865,2728866,2728867,2728868,2728869,2728870,2728871,2728872,2728873,2728874,2728875,2728876,2728877,2728878,2728879,2728880,2728881,2728882,2728883,2728884,2728885,2728886,2728887,2728888,2728889,2728890,2728891,2728892,2728893,2728894,2728895],"Cut Red Sandstone":[2584431],"Cut Red Sandstone Slab":[2584688,2584689,2584690],"Cut Sandstone":[2584945],"Cut Sandstone Slab":[2585200,2585202,2585203],"Dandelion":[2585716],"Dark Oak Button":[2585968,2585969,2585972,2585973,2585974,2585975,2585976,2585977,2585980,2585981,2585982,2585983],"Dark Oak Door":[2586208,2586209,2586210,2586211,2586212,2586213,2586214,2586215,2586216,2586217,2586218,2586219,2586220,2586221,2586222,2586223,2586224,2586225,2586226,2586227,2586228,2586229,2586230,2586231,2586232,2586233,2586234,2586235,2586236,2586237,2586238,2586239],"Dark Oak Fence":[2586487],"Dark Oak Fence Gate":[2586736,2586737,2586738,2586739,2586740,2586741,2586742,2586743,2586744,2586745,2586746,2586747,2586748,2586749,2586750,2586751],"Dark Oak Leaves":[2587000,2587001,2587002,2587003],"Dark Oak Log":[2587256,2587257,2587258,2587259,2587262,2587263],"Dark Oak Planks":[2587515],"Dark Oak Pressure Plate":[2587772,2587773],"Dark Oak Sapling":[2588028,2588029],"Dark Oak Sign":[2588272,2588273,2588274,2588275,2588276,2588277,2588278,2588279,2588280,2588281,2588282,2588283,2588284,2588285,2588286,2588287],"Dark Oak Slab":[2588541,2588542,2588543],"Dark Oak Stairs":[2588800,2588801,2588802,2588803,2588804,2588805,2588806,2588807],"Dark Oak Trapdoor":[2589056,2589057,2589058,2589059,2589060,2589061,2589062,2589063,2589064,2589065,2589066,2589067,2589068,2589069,2589070,2589071],"Dark Oak Wall Sign":[2589312,2589313,2589314,2589315],"Dark Oak Wood":[2589568,2589569,2589570,2589571,2589574,2589575],"Dark Prismarine":[2589828],"Dark Prismarine Slab":[2590084,2590085,2590087],"Dark Prismarine Stairs":[2590336,2590337,2590338,2590339,2590340,2590341,2590342,2590343],"Darmstadtium":[2601136],"Daylight Sensor":[2590592,2590593,2590594,2590595,2590596,2590597,2590598,2590599,2590600,2590601,2590602,2590603,2590604,2590605,2590606,2590607,2590608,2590609,2590610,2590611,2590612,2590613,2590614,2590615,2590616,2590617,2590618,2590619,2590620,2590621,2590622,2590623],"Dead Bush":[2590856],"Deepslate":[2704964,2704966,2704967],"Deepslate Brick Slab":[2705480,2705481,2705482],"Deepslate Brick Stairs":[2705736,2705737,2705738,2705739,2705740,2705741,2705742,2705743],"Deepslate Brick Wall":[2705920,2705921,2705922,2705923,2705924,2705925,2705926,2705927,2705928,2705929,2705930,2705931,2705932,2705933,2705934,2705935,2705946,2705984,2705985,2705986,2705987,2705988,2705989,2705990,2705991,2705992,2705993,2705994,2705995,2705996,2705997,2705998,2705999,2706000,2706001,2706002,2706003,2706004,2706005,2706006,2706007,2706008,2706009,2706010,2706011,2706012,2706013,2706014,2706015,2706016,2706017,2706018,2706019,2706020,2706021,2706022,2706023,2706024,2706025,2706026,2706027,2706028,2706029,2706030,2706031,2706032,2706033,2706034,2706035,2706036,2706037,2706038,2706039,2706040,2706041,2706042,2706043,2706044,2706045,2706046,2706047,2706048,2706049,2706050,2706051,2706052,2706053,2706054,2706055,2706056,2706057,2706058,2706059,2706060,2706061,2706062,2706063,2706074,2706112,2706113,2706114,2706115,2706116,2706117,2706118,2706119,2706120,2706121,2706122,2706123,2706124,2706125,2706126,2706127,2706128,2706129,2706130,2706131,2706132,2706133,2706134,2706135,2706136,2706137,2706138,2706139,2706140,2706141,2706142,2706143,2706144,2706145,2706146,2706147,2706148,2706149,2706150,2706151,2706152,2706153,2706154,2706155,2706156,2706157,2706158,2706159,2706160,2706161,2706162,2706163,2706164,2706165,2706166,2706167,2706168,2706169,2706170,2706171,2706172,2706173,2706174,2706175],"Deepslate Bricks":[2705223],"Deepslate Coal Ore":[2722956],"Deepslate Copper Ore":[2724755],"Deepslate Diamond Ore":[2723213],"Deepslate Emerald Ore":[2723470],"Deepslate Gold Ore":[2724498],"Deepslate Iron Ore":[2724241],"Deepslate Lapis Lazuli Ore":[2723727],"Deepslate Redstone Ore":[2723984,2723985],"Deepslate Tile Slab":[2706764,2706765,2706767],"Deepslate Tile Stairs":[2707016,2707017,2707018,2707019,2707020,2707021,2707022,2707023],"Deepslate Tile Wall":[2707200,2707201,2707202,2707203,2707204,2707205,2707206,2707207,2707208,2707209,2707210,2707211,2707212,2707213,2707214,2707215,2707231,2707264,2707265,2707266,2707267,2707268,2707269,2707270,2707271,2707272,2707273,2707274,2707275,2707276,2707277,2707278,2707279,2707280,2707281,2707282,2707283,2707284,2707285,2707286,2707287,2707288,2707289,2707290,2707291,2707292,2707293,2707294,2707295,2707296,2707297,2707298,2707299,2707300,2707301,2707302,2707303,2707304,2707305,2707306,2707307,2707308,2707309,2707310,2707311,2707312,2707313,2707314,2707315,2707316,2707317,2707318,2707319,2707320,2707321,2707322,2707323,2707324,2707325,2707326,2707327,2707328,2707329,2707330,2707331,2707332,2707333,2707334,2707335,2707336,2707337,2707338,2707339,2707340,2707341,2707342,2707343,2707359,2707392,2707393,2707394,2707395,2707396,2707397,2707398,2707399,2707400,2707401,2707402,2707403,2707404,2707405,2707406,2707407,2707408,2707409,2707410,2707411,2707412,2707413,2707414,2707415,2707416,2707417,2707418,2707419,2707420,2707421,2707422,2707423,2707424,2707425,2707426,2707427,2707428,2707429,2707430,2707431,2707432,2707433,2707434,2707435,2707436,2707437,2707438,2707439,2707440,2707441,2707442,2707443,2707444,2707445,2707446,2707447,2707448,2707449,2707450,2707451,2707452,2707453,2707454,2707455],"Deepslate Tiles":[2706508],"Detector Rail":[2591104,2591105,2591106,2591107,2591108,2591109,2591112,2591113,2591114,2591115,2591116,2591117],"Diamond Block":[2591370],"Diamond Ore":[2591627],"Diorite":[2591884],"Diorite Slab":[2592140,2592141,2592143],"Diorite Stairs":[2592392,2592393,2592394,2592395,2592396,2592397,2592398,2592399],"Diorite Wall":[2592512,2592513,2592514,2592515,2592516,2592517,2592518,2592519,2592520,2592521,2592522,2592523,2592524,2592525,2592526,2592527,2592528,2592529,2592530,2592531,2592532,2592533,2592534,2592535,2592536,2592537,2592538,2592539,2592540,2592541,2592542,2592543,2592544,2592545,2592546,2592547,2592548,2592549,2592550,2592551,2592552,2592553,2592554,2592555,2592556,2592557,2592558,2592559,2592560,2592561,2592562,2592563,2592564,2592565,2592566,2592567,2592568,2592569,2592570,2592571,2592572,2592573,2592574,2592575,2592576,2592577,2592578,2592579,2592580,2592581,2592582,2592583,2592584,2592585,2592586,2592587,2592588,2592589,2592590,2592591,2592607,2592640,2592641,2592642,2592643,2592644,2592645,2592646,2592647,2592648,2592649,2592650,2592651,2592652,2592653,2592654,2592655,2592656,2592657,2592658,2592659,2592660,2592661,2592662,2592663,2592664,2592665,2592666,2592667,2592668,2592669,2592670,2592671,2592672,2592673,2592674,2592675,2592676,2592677,2592678,2592679,2592680,2592681,2592682,2592683,2592684,2592685,2592686,2592687,2592688,2592689,2592690,2592691,2592692,2592693,2592694,2592695,2592696,2592697,2592698,2592699,2592700,2592701,2592702,2592703,2592704,2592705,2592706,2592707,2592708,2592709,2592710,2592711,2592712,2592713,2592714,2592715,2592716,2592717,2592718,2592719,2592735],"Dirt":[2592912,2592913,2592914],"Double Pitcher Crop":[2743772,2743773,2743774,2743775],"Double Tallgrass":[2593168,2593169],"Dragon Egg":[2593426],"Dried Kelp Block":[2593683],"Dubnium":[2601393],"Dyed Candle":[2729344,2729345,2729346,2729347,2729348,2729349,2729350,2729351,2729352,2729353,2729354,2729355,2729356,2729357,2729358,2729359,2729360,2729361,2729362,2729363,2729364,2729365,2729366,2729367,2729368,2729369,2729370,2729371,2729372,2729373,2729374,2729375,2729376,2729377,2729378,2729379,2729380,2729381,2729382,2729383,2729384,2729385,2729386,2729387,2729388,2729389,2729390,2729391,2729392,2729393,2729394,2729395,2729396,2729397,2729398,2729399,2729400,2729401,2729402,2729403,2729404,2729405,2729406,2729407,2729408,2729409,2729410,2729411,2729412,2729413,2729414,2729415,2729416,2729417,2729418,2729419,2729420,2729421,2729422,2729423,2729424,2729425,2729426,2729427,2729428,2729429,2729430,2729431,2729432,2729433,2729434,2729435,2729436,2729437,2729438,2729439,2729440,2729441,2729442,2729443,2729444,2729445,2729446,2729447,2729448,2729449,2729450,2729451,2729452,2729453,2729454,2729455,2729456,2729457,2729458,2729459,2729460,2729461,2729462,2729463,2729464,2729465,2729466,2729467,2729468,2729469,2729470,2729471],"Dyed Shulker Box":[2593936,2593937,2593938,2593939,2593940,2593941,2593942,2593943,2593944,2593945,2593946,2593947,2593948,2593949,2593950,2593951],"Dysprosium":[2601650],"Einsteinium":[2601907],"Element Constructor":[2600108,2600109,2600110,2600111],"Emerald Block":[2624781],"Emerald Ore":[2625038],"Enchanting Table":[2625295],"End Portal Frame":[2625552,2625553,2625554,2625555,2625556,2625557,2625558,2625559],"End Rod":[2625808,2625809,2625810,2625811,2625812,2625813],"End Stone":[2626066],"End Stone Brick Slab":[2626321,2626322,2626323],"End Stone Brick Stairs":[2626576,2626577,2626578,2626579,2626580,2626581,2626582,2626583],"End Stone Brick Wall":[2626816,2626817,2626818,2626819,2626820,2626821,2626822,2626823,2626824,2626825,2626826,2626827,2626828,2626829,2626830,2626831,2626832,2626833,2626834,2626835,2626836,2626837,2626838,2626839,2626840,2626841,2626842,2626843,2626844,2626845,2626846,2626847,2626848,2626849,2626850,2626851,2626852,2626853,2626854,2626855,2626856,2626857,2626858,2626859,2626860,2626861,2626862,2626863,2626864,2626865,2626866,2626867,2626868,2626869,2626870,2626871,2626872,2626873,2626874,2626875,2626876,2626877,2626878,2626879,2626885,2626896,2626897,2626898,2626899,2626900,2626901,2626902,2626903,2626904,2626905,2626906,2626907,2626908,2626909,2626910,2626911,2626944,2626945,2626946,2626947,2626948,2626949,2626950,2626951,2626952,2626953,2626954,2626955,2626956,2626957,2626958,2626959,2626960,2626961,2626962,2626963,2626964,2626965,2626966,2626967,2626968,2626969,2626970,2626971,2626972,2626973,2626974,2626975,2626976,2626977,2626978,2626979,2626980,2626981,2626982,2626983,2626984,2626985,2626986,2626987,2626988,2626989,2626990,2626991,2626992,2626993,2626994,2626995,2626996,2626997,2626998,2626999,2627000,2627001,2627002,2627003,2627004,2627005,2627006,2627007,2627013,2627024,2627025,2627026,2627027,2627028,2627029,2627030,2627031,2627032,2627033,2627034,2627035,2627036,2627037,2627038,2627039],"End Stone Bricks":[2627094],"Ender Chest":[2627348,2627349,2627350,2627351],"Erbium":[2602164],"Europium":[2602421],"Fake Wooden Slab":[2627608,2627609,2627610],"Farmland":[2627864,2627865,2627866,2627867,2627868,2627869,2627870,2627871],"Fermium":[2602678],"Fern":[2628122],"Fire Block":[2628368,2628369,2628370,2628371,2628372,2628373,2628374,2628375,2628376,2628377,2628378,2628379,2628380,2628381,2628382,2628383],"Flerovium":[2602935],"Fletching Table":[2628636],"Flower Pot":[2628893],"Flowering Azalea Leaves":[2736060,2736061,2736062,2736063],"Fluorine":[2603192],"Francium":[2603449],"Froglight":[2734001,2734002,2734003,2734005,2734006,2734007,2734013,2734014,2734015],"Frosted Ice":[2629148,2629149,2629150,2629151],"Furnace":[2629400,2629401,2629402,2629403,2629404,2629405,2629406,2629407],"Gadolinium":[2603706],"Gallium":[2603963],"Germanium":[2604220],"Gilded Blackstone":[2727582],"Glass":[2629664],"Glass Pane":[2629921],"Glazed Terracotta":[2697984,2697985,2697986,2697987,2697988,2697989,2697990,2697991,2697992,2697993,2697994,2697995,2697996,2697997,2697998,2697999,2698000,2698001,2698002,2698003,2698004,2698005,2698006,2698007,2698008,2698009,2698010,2698011,2698012,2698013,2698014,2698015,2698016,2698017,2698018,2698019,2698020,2698021,2698022,2698023,2698024,2698025,2698026,2698027,2698028,2698029,2698030,2698031,2698032,2698033,2698034,2698035,2698036,2698037,2698038,2698039,2698040,2698041,2698042,2698043,2698044,2698045,2698046,2698047],"Glow Item Frame":[2735280,2735281,2735284,2735285,2735286,2735287,2735288,2735289,2735292,2735293,2735294,2735295],"Glow Lichen":[2736832,2736833,2736834,2736835,2736836,2736837,2736838,2736839,2736840,2736841,2736842,2736843,2736844,2736845,2736846,2736847,2736848,2736849,2736850,2736851,2736852,2736853,2736854,2736855,2736856,2736857,2736858,2736859,2736860,2736861,2736862,2736863,2736864,2736865,2736866,2736867,2736868,2736869,2736870,2736871,2736872,2736873,2736874,2736875,2736876,2736877,2736878,2736879,2736880,2736881,2736882,2736883,2736884,2736885,2736886,2736887,2736888,2736889,2736890,2736891,2736892,2736893,2736894,2736895],"Glowing Obsidian":[2630178],"Glowstone":[2630435],"Gold":[2604477],"Gold Block":[2630692],"Gold Ore":[2630949],"Granite":[2631206],"Granite Slab":[2631461,2631462,2631463],"Granite Stairs":[2631720,2631721,2631722,2631723,2631724,2631725,2631726,2631727],"Granite Wall":[2631936,2631937,2631938,2631939,2631940,2631941,2631942,2631943,2631944,2631945,2631946,2631947,2631948,2631949,2631950,2631951,2631952,2631953,2631954,2631955,2631956,2631957,2631958,2631959,2631960,2631961,2631962,2631963,2631964,2631965,2631966,2631967,2631968,2631969,2631970,2631971,2631972,2631973,2631974,2631975,2631976,2631977,2631978,2631979,2631980,2631981,2631982,2631983,2631984,2631985,2631986,2631987,2631988,2631989,2631990,2631991,2631992,2631993,2631994,2631995,2631996,2631997,2631998,2631999,2632032,2632033,2632034,2632035,2632036,2632037,2632038,2632039,2632040,2632041,2632042,2632043,2632044,2632045,2632046,2632047,2632057,2632064,2632065,2632066,2632067,2632068,2632069,2632070,2632071,2632072,2632073,2632074,2632075,2632076,2632077,2632078,2632079,2632080,2632081,2632082,2632083,2632084,2632085,2632086,2632087,2632088,2632089,2632090,2632091,2632092,2632093,2632094,2632095,2632096,2632097,2632098,2632099,2632100,2632101,2632102,2632103,2632104,2632105,2632106,2632107,2632108,2632109,2632110,2632111,2632112,2632113,2632114,2632115,2632116,2632117,2632118,2632119,2632120,2632121,2632122,2632123,2632124,2632125,2632126,2632127,2632160,2632161,2632162,2632163,2632164,2632165,2632166,2632167,2632168,2632169,2632170,2632171,2632172,2632173,2632174,2632175,2632185],"Grass":[2632234],"Grass Path":[2632491],"Gravel":[2632748],"Green Torch":[2633514,2633515,2633516,2633517,2633518],"Hafnium":[2604734],"Hanging Roots":[2730409],"Hardened Clay":[2633776],"Hardened Glass":[2634033],"Hardened Glass Pane":[2634290],"Hassium":[2604991],"Hay Bale":[2634545,2634546,2634547],"Heat Block":[2578263],"Helium":[2605248],"Holmium":[2605505],"Honeycomb Block":[2722699],"Hopper":[2634800,2634801,2634804,2634806,2634807,2634808,2634809,2634812,2634814,2634815],"Hydrogen":[2605762],"Ice":[2635061],"Indium":[2606019],"Infested Chiseled Stone Brick":[2635318],"Infested Cobblestone":[2635575],"Infested Cracked Stone Brick":[2635832],"Infested Mossy Stone Brick":[2636089],"Infested Stone":[2636346],"Infested Stone Brick":[2636603],"Invisible Bedrock":[2637374],"Iodine":[2606276],"Iridium":[2606533],"Iron":[2606790],"Iron Bars":[2637888],"Iron Block":[2637631],"Iron Door":[2638144,2638145,2638146,2638147,2638148,2638149,2638150,2638151,2638152,2638153,2638154,2638155,2638156,2638157,2638158,2638159,2638160,2638161,2638162,2638163,2638164,2638165,2638166,2638167,2638168,2638169,2638170,2638171,2638172,2638173,2638174,2638175],"Iron Ore":[2638402],"Iron Trapdoor":[2638656,2638657,2638658,2638659,2638660,2638661,2638662,2638663,2638664,2638665,2638666,2638667,2638668,2638669,2638670,2638671],"Item Frame":[2638912,2638913,2638916,2638917,2638918,2638919,2638920,2638921,2638924,2638925,2638926,2638927],"Jack o'Lantern":[2647396,2647397,2647398,2647399],"Jukebox":[2639173],"Jungle Button":[2639426,2639427,2639428,2639429,2639430,2639431,2639434,2639435,2639436,2639437,2639438,2639439],"Jungle Door":[2639680,2639681,2639682,2639683,2639684,2639685,2639686,2639687,2639688,2639689,2639690,2639691,2639692,2639693,2639694,2639695,2639696,2639697,2639698,2639699,2639700,2639701,2639702,2639703,2639704,2639705,2639706,2639707,2639708,2639709,2639710,2639711],"Jungle Fence":[2639944],"Jungle Fence Gate":[2640192,2640193,2640194,2640195,2640196,2640197,2640198,2640199,2640200,2640201,2640202,2640203,2640204,2640205,2640206,2640207],"Jungle Leaves":[2640456,2640457,2640458,2640459],"Jungle Log":[2640712,2640713,2640714,2640715,2640718,2640719],"Jungle Planks":[2640972],"Jungle Pressure Plate":[2641228,2641229],"Jungle Sapling":[2641486,2641487],"Jungle Sign":[2641728,2641729,2641730,2641731,2641732,2641733,2641734,2641735,2641736,2641737,2641738,2641739,2641740,2641741,2641742,2641743],"Jungle Slab":[2642000,2642001,2642002],"Jungle Stairs":[2642256,2642257,2642258,2642259,2642260,2642261,2642262,2642263],"Jungle Trapdoor":[2642512,2642513,2642514,2642515,2642516,2642517,2642518,2642519,2642520,2642521,2642522,2642523,2642524,2642525,2642526,2642527],"Jungle Wall Sign":[2642768,2642769,2642770,2642771],"Jungle Wood":[2643024,2643025,2643028,2643029,2643030,2643031],"Krypton":[2607047],"Lab Table":[2643284,2643285,2643286,2643287],"Ladder":[2643540,2643541,2643542,2643543],"Lantern":[2643798,2643799],"Lanthanum":[2607304],"Lapis Lazuli Block":[2644056],"Lapis Lazuli Ore":[2644313],"Large Fern":[2644570,2644571],"Lava":[2644800,2644801,2644802,2644803,2644804,2644805,2644806,2644807,2644808,2644809,2644810,2644811,2644812,2644813,2644814,2644815,2644816,2644817,2644818,2644819,2644820,2644821,2644822,2644823,2644824,2644825,2644826,2644827,2644828,2644829,2644830,2644831],"Lava Cauldron":[2732208,2732209,2732210,2732211,2732212,2732213],"Lawrencium":[2607561],"Lead":[2607818],"Lectern":[2645080,2645081,2645082,2645083,2645084,2645085,2645086,2645087],"Legacy Stonecutter":[2645341],"Lever":[2645584,2645585,2645586,2645587,2645588,2645589,2645590,2645591,2645592,2645593,2645594,2645595,2645596,2645597,2645598,2645599],"Light Block":[2703680,2703681,2703682,2703683,2703684,2703685,2703686,2703687,2703688,2703689,2703690,2703691,2703692,2703693,2703694,2703695],"Lightning Rod":[2727834,2727835,2727836,2727837,2727838,2727839],"Lilac":[2646368,2646369],"Lily Pad":[2646883],"Lily of the Valley":[2646626],"Lithium":[2608075],"Livermorium":[2608332],"Loom":[2647652,2647653,2647654,2647655],"Lutetium":[2608589],"Magma Block":[2648168],"Magnesium":[2608846],"Manganese":[2609103],"Mangrove Button":[2717040,2717041,2717044,2717045,2717046,2717047,2717048,2717049,2717052,2717053,2717054,2717055],"Mangrove Door":[2718560,2718561,2718562,2718563,2718564,2718565,2718566,2718567,2718568,2718569,2718570,2718571,2718572,2718573,2718574,2718575,2718576,2718577,2718578,2718579,2718580,2718581,2718582,2718583,2718584,2718585,2718586,2718587,2718588,2718589,2718590,2718591],"Mangrove Fence":[2713190],"Mangrove Fence Gate":[2719344,2719345,2719346,2719347,2719348,2719349,2719350,2719351,2719352,2719353,2719354,2719355,2719356,2719357,2719358,2719359],"Mangrove Leaves":[2735548,2735549,2735550,2735551],"Mangrove Log":[2714728,2714729,2714732,2714733,2714734,2714735],"Mangrove Planks":[2712419],"Mangrove Pressure Plate":[2717816,2717817],"Mangrove Roots":[2733493],"Mangrove Sign":[2720896,2720897,2720898,2720899,2720900,2720901,2720902,2720903,2720904,2720905,2720906,2720907,2720908,2720909,2720910,2720911],"Mangrove Slab":[2713960,2713961,2713963],"Mangrove Stairs":[2720128,2720129,2720130,2720131,2720132,2720133,2720134,2720135],"Mangrove Trapdoor":[2716272,2716273,2716274,2716275,2716276,2716277,2716278,2716279,2716280,2716281,2716282,2716283,2716284,2716285,2716286,2716287],"Mangrove Wall Sign":[2721668,2721669,2721670,2721671],"Mangrove Wood":[2715498,2715499,2715500,2715501,2715502,2715503],"Material Reducer":[2648424,2648425,2648426,2648427],"Meitnerium":[2609360],"Melon Block":[2648682],"Melon Stem":[2648896,2648897,2648898,2648899,2648900,2648901,2648902,2648903,2648904,2648905,2648906,2648907,2648908,2648909,2648910,2648911,2648928,2648929,2648930,2648931,2648932,2648933,2648934,2648935,2648944,2648945,2648946,2648947,2648948,2648949,2648950,2648951,2648952,2648953,2648954,2648955,2648956,2648957,2648958,2648959],"Mendelevium":[2609617],"Mercury":[2609874],"Mob Head":[2649152,2649153,2649154,2649156,2649157,2649158,2649159,2649160,2649161,2649162,2649164,2649165,2649166,2649167,2649184,2649185,2649186,2649188,2649189,2649190,2649191,2649200,2649201,2649202,2649204,2649205,2649206,2649207,2649208,2649209,2649210,2649212,2649213,2649214,2649215],"Molybdenum":[2610131],"Monster Spawner":[2649453],"Moscovium":[2610388],"Mossy Cobblestone":[2649710],"Mossy Cobblestone Slab":[2649965,2649966,2649967],"Mossy Cobblestone Stairs":[2650224,2650225,2650226,2650227,2650228,2650229,2650230,2650231],"Mossy Cobblestone Wall":[2650401,2650416,2650417,2650418,2650419,2650420,2650421,2650422,2650423,2650424,2650425,2650426,2650427,2650428,2650429,2650430,2650431,2650432,2650433,2650434,2650435,2650436,2650437,2650438,2650439,2650440,2650441,2650442,2650443,2650444,2650445,2650446,2650447,2650448,2650449,2650450,2650451,2650452,2650453,2650454,2650455,2650456,2650457,2650458,2650459,2650460,2650461,2650462,2650463,2650464,2650465,2650466,2650467,2650468,2650469,2650470,2650471,2650472,2650473,2650474,2650475,2650476,2650477,2650478,2650479,2650480,2650481,2650482,2650483,2650484,2650485,2650486,2650487,2650488,2650489,2650490,2650491,2650492,2650493,2650494,2650495,2650529,2650544,2650545,2650546,2650547,2650548,2650549,2650550,2650551,2650552,2650553,2650554,2650555,2650556,2650557,2650558,2650559,2650560,2650561,2650562,2650563,2650564,2650565,2650566,2650567,2650568,2650569,2650570,2650571,2650572,2650573,2650574,2650575,2650576,2650577,2650578,2650579,2650580,2650581,2650582,2650583,2650584,2650585,2650586,2650587,2650588,2650589,2650590,2650591,2650592,2650593,2650594,2650595,2650596,2650597,2650598,2650599,2650600,2650601,2650602,2650603,2650604,2650605,2650606,2650607,2650608,2650609,2650610,2650611,2650612,2650613,2650614,2650615,2650616,2650617,2650618,2650619,2650620,2650621,2650622,2650623],"Mossy Stone Brick Slab":[2650736,2650738,2650739],"Mossy Stone Brick Stairs":[2650992,2650993,2650994,2650995,2650996,2650997,2650998,2650999],"Mossy Stone Brick Wall":[2651172,2651184,2651185,2651186,2651187,2651188,2651189,2651190,2651191,2651192,2651193,2651194,2651195,2651196,2651197,2651198,2651199,2651200,2651201,2651202,2651203,2651204,2651205,2651206,2651207,2651208,2651209,2651210,2651211,2651212,2651213,2651214,2651215,2651216,2651217,2651218,2651219,2651220,2651221,2651222,2651223,2651224,2651225,2651226,2651227,2651228,2651229,2651230,2651231,2651232,2651233,2651234,2651235,2651236,2651237,2651238,2651239,2651240,2651241,2651242,2651243,2651244,2651245,2651246,2651247,2651248,2651249,2651250,2651251,2651252,2651253,2651254,2651255,2651256,2651257,2651258,2651259,2651260,2651261,2651262,2651263,2651300,2651312,2651313,2651314,2651315,2651316,2651317,2651318,2651319,2651320,2651321,2651322,2651323,2651324,2651325,2651326,2651327,2651328,2651329,2651330,2651331,2651332,2651333,2651334,2651335,2651336,2651337,2651338,2651339,2651340,2651341,2651342,2651343,2651344,2651345,2651346,2651347,2651348,2651349,2651350,2651351,2651352,2651353,2651354,2651355,2651356,2651357,2651358,2651359,2651360,2651361,2651362,2651363,2651364,2651365,2651366,2651367,2651368,2651369,2651370,2651371,2651372,2651373,2651374,2651375,2651376,2651377,2651378,2651379,2651380,2651381,2651382,2651383,2651384,2651385,2651386,2651387,2651388,2651389,2651390,2651391],"Mossy Stone Bricks":[2651509],"Mud":[2725526],"Mud Brick Slab":[2726040,2726041,2726042],"Mud Brick Stairs":[2726296,2726297,2726298,2726299,2726300,2726301,2726302,2726303],"Mud Brick Wall":[2726400,2726401,2726402,2726403,2726404,2726405,2726406,2726407,2726408,2726409,2726410,2726411,2726412,2726413,2726414,2726415,2726416,2726417,2726418,2726419,2726420,2726421,2726422,2726423,2726424,2726425,2726426,2726427,2726428,2726429,2726430,2726431,2726432,2726433,2726434,2726435,2726436,2726437,2726438,2726439,2726440,2726441,2726442,2726443,2726444,2726445,2726446,2726447,2726448,2726449,2726450,2726451,2726452,2726453,2726454,2726455,2726456,2726457,2726458,2726459,2726460,2726461,2726462,2726463,2726474,2726480,2726481,2726482,2726483,2726484,2726485,2726486,2726487,2726488,2726489,2726490,2726491,2726492,2726493,2726494,2726495,2726528,2726529,2726530,2726531,2726532,2726533,2726534,2726535,2726536,2726537,2726538,2726539,2726540,2726541,2726542,2726543,2726544,2726545,2726546,2726547,2726548,2726549,2726550,2726551,2726552,2726553,2726554,2726555,2726556,2726557,2726558,2726559,2726560,2726561,2726562,2726563,2726564,2726565,2726566,2726567,2726568,2726569,2726570,2726571,2726572,2726573,2726574,2726575,2726576,2726577,2726578,2726579,2726580,2726581,2726582,2726583,2726584,2726585,2726586,2726587,2726588,2726589,2726590,2726591,2726602,2726608,2726609,2726610,2726611,2726612,2726613,2726614,2726615,2726616,2726617,2726618,2726619,2726620,2726621,2726622,2726623],"Mud Bricks":[2725783],"Muddy Mangrove Roots":[2733748,2733750,2733751],"Mushroom Stem":[2651766],"Mycelium":[2652023],"Neodymium":[2610645],"Neon":[2610902],"Neptunium":[2611159],"Nether Brick Fence":[2652280],"Nether Brick Slab":[2652536,2652537,2652539],"Nether Brick Stairs":[2652792,2652793,2652794,2652795,2652796,2652797,2652798,2652799],"Nether Brick Wall":[2652971,2652976,2652977,2652978,2652979,2652980,2652981,2652982,2652983,2652984,2652985,2652986,2652987,2652988,2652989,2652990,2652991,2652992,2652993,2652994,2652995,2652996,2652997,2652998,2652999,2653000,2653001,2653002,2653003,2653004,2653005,2653006,2653007,2653008,2653009,2653010,2653011,2653012,2653013,2653014,2653015,2653016,2653017,2653018,2653019,2653020,2653021,2653022,2653023,2653024,2653025,2653026,2653027,2653028,2653029,2653030,2653031,2653032,2653033,2653034,2653035,2653036,2653037,2653038,2653039,2653040,2653041,2653042,2653043,2653044,2653045,2653046,2653047,2653048,2653049,2653050,2653051,2653052,2653053,2653054,2653055,2653099,2653104,2653105,2653106,2653107,2653108,2653109,2653110,2653111,2653112,2653113,2653114,2653115,2653116,2653117,2653118,2653119,2653120,2653121,2653122,2653123,2653124,2653125,2653126,2653127,2653128,2653129,2653130,2653131,2653132,2653133,2653134,2653135,2653136,2653137,2653138,2653139,2653140,2653141,2653142,2653143,2653144,2653145,2653146,2653147,2653148,2653149,2653150,2653151,2653152,2653153,2653154,2653155,2653156,2653157,2653158,2653159,2653160,2653161,2653162,2653163,2653164,2653165,2653166,2653167,2653168,2653169,2653170,2653171,2653172,2653173,2653174,2653175,2653176,2653177,2653178,2653179,2653180,2653181,2653182,2653183],"Nether Bricks":[2653308],"Nether Gold Ore":[2725269],"Nether Portal":[2653564,2653565],"Nether Quartz Ore":[2653822],"Nether Reactor Core":[2654079],"Nether Wart":[2654336,2654337,2654338,2654339],"Nether Wart Block":[2654593],"Netherite Block":[2731180],"Netherrack":[2654850],"Nickel":[2611416],"Nihonium":[2611673],"Niobium":[2611930],"Nitrogen":[2612187],"Nobelium":[2612444],"Note Block":[2655107],"Oak Button":[2655360,2655361,2655364,2655365,2655366,2655367,2655368,2655369,2655372,2655373,2655374,2655375],"Oak Door":[2655616,2655617,2655618,2655619,2655620,2655621,2655622,2655623,2655624,2655625,2655626,2655627,2655628,2655629,2655630,2655631,2655632,2655633,2655634,2655635,2655636,2655637,2655638,2655639,2655640,2655641,2655642,2655643,2655644,2655645,2655646,2655647],"Oak Fence":[2655878],"Oak Fence Gate":[2656128,2656129,2656130,2656131,2656132,2656133,2656134,2656135,2656136,2656137,2656138,2656139,2656140,2656141,2656142,2656143],"Oak Leaves":[2656392,2656393,2656394,2656395],"Oak Log":[2656648,2656649,2656650,2656651,2656652,2656653],"Oak Planks":[2656906],"Oak Pressure Plate":[2657162,2657163],"Oak Sapling":[2657420,2657421],"Oak Sign":[2657664,2657665,2657666,2657667,2657668,2657669,2657670,2657671,2657672,2657673,2657674,2657675,2657676,2657677,2657678,2657679],"Oak Slab":[2657932,2657934,2657935],"Oak Stairs":[2658184,2658185,2658186,2658187,2658188,2658189,2658190,2658191],"Oak Trapdoor":[2658448,2658449,2658450,2658451,2658452,2658453,2658454,2658455,2658456,2658457,2658458,2658459,2658460,2658461,2658462,2658463],"Oak Wall Sign":[2658704,2658705,2658706,2658707],"Oak Wood":[2658960,2658961,2658962,2658963,2658966,2658967],"Obsidian":[2659219],"Oganesson":[2612701],"Orange Tulip":[2659733],"Osmium":[2612958],"Oxeye Daisy":[2659990],"Oxygen":[2613215],"Packed Ice":[2660247],"Packed Mud":[2726811],"Palladium":[2613472],"Peony":[2660504,2660505],"Phosphorus":[2613729],"Pink Petals":[2741712,2741713,2741714,2741715,2741716,2741717,2741718,2741719,2741720,2741721,2741722,2741723,2741724,2741725,2741726,2741727],"Pink Tulip":[2661018],"Pitcher Crop":[2743516,2743517,2743518],"Pitcher Plant":[2743258,2743259],"Platinum":[2613986],"Plutonium":[2614243],"Podzol":[2661275],"Polished Andesite":[2661532],"Polished Andesite Slab":[2661788,2661789,2661791],"Polished Andesite Stairs":[2662040,2662041,2662042,2662043,2662044,2662045,2662046,2662047],"Polished Basalt":[2699053,2699054,2699055],"Polished Blackstone":[2700597],"Polished Blackstone Brick Slab":[2702652,2702653,2702655],"Polished Blackstone Brick Stairs":[2702904,2702905,2702906,2702907,2702908,2702909,2702910,2702911],"Polished Blackstone Brick Wall":[2703104,2703105,2703106,2703107,2703108,2703109,2703110,2703111,2703112,2703113,2703114,2703115,2703116,2703117,2703118,2703119,2703120,2703121,2703122,2703123,2703124,2703125,2703126,2703127,2703128,2703129,2703130,2703131,2703132,2703133,2703134,2703135,2703136,2703137,2703138,2703139,2703140,2703141,2703142,2703143,2703144,2703145,2703146,2703147,2703148,2703149,2703150,2703151,2703152,2703153,2703154,2703155,2703156,2703157,2703158,2703159,2703160,2703161,2703162,2703163,2703164,2703165,2703166,2703167,2703215,2703216,2703217,2703218,2703219,2703220,2703221,2703222,2703223,2703224,2703225,2703226,2703227,2703228,2703229,2703230,2703231,2703232,2703233,2703234,2703235,2703236,2703237,2703238,2703239,2703240,2703241,2703242,2703243,2703244,2703245,2703246,2703247,2703248,2703249,2703250,2703251,2703252,2703253,2703254,2703255,2703256,2703257,2703258,2703259,2703260,2703261,2703262,2703263,2703264,2703265,2703266,2703267,2703268,2703269,2703270,2703271,2703272,2703273,2703274,2703275,2703276,2703277,2703278,2703279,2703280,2703281,2703282,2703283,2703284,2703285,2703286,2703287,2703288,2703289,2703290,2703291,2703292,2703293,2703294,2703295,2703343,2703344,2703345,2703346,2703347,2703348,2703349,2703350,2703351,2703352,2703353,2703354,2703355,2703356,2703357,2703358,2703359],"Polished Blackstone Bricks":[2702396],"Polished Blackstone Button":[2700850,2700851,2700852,2700853,2700854,2700855,2700858,2700859,2700860,2700861,2700862,2700863],"Polished Blackstone Pressure Plate":[2701110,2701111],"Polished Blackstone Slab":[2701368,2701369,2701370],"Polished Blackstone Stairs":[2701624,2701625,2701626,2701627,2701628,2701629,2701630,2701631],"Polished Blackstone Wall":[2701824,2701825,2701826,2701827,2701828,2701829,2701830,2701831,2701832,2701833,2701834,2701835,2701836,2701837,2701838,2701839,2701840,2701841,2701842,2701843,2701844,2701845,2701846,2701847,2701848,2701849,2701850,2701851,2701852,2701853,2701854,2701855,2701856,2701857,2701858,2701859,2701860,2701861,2701862,2701863,2701864,2701865,2701866,2701867,2701868,2701869,2701870,2701871,2701872,2701873,2701874,2701875,2701876,2701877,2701878,2701879,2701880,2701881,2701882,2701883,2701884,2701885,2701886,2701887,2701930,2701936,2701937,2701938,2701939,2701940,2701941,2701942,2701943,2701944,2701945,2701946,2701947,2701948,2701949,2701950,2701951,2701952,2701953,2701954,2701955,2701956,2701957,2701958,2701959,2701960,2701961,2701962,2701963,2701964,2701965,2701966,2701967,2701968,2701969,2701970,2701971,2701972,2701973,2701974,2701975,2701976,2701977,2701978,2701979,2701980,2701981,2701982,2701983,2701984,2701985,2701986,2701987,2701988,2701989,2701990,2701991,2701992,2701993,2701994,2701995,2701996,2701997,2701998,2701999,2702000,2702001,2702002,2702003,2702004,2702005,2702006,2702007,2702008,2702009,2702010,2702011,2702012,2702013,2702014,2702015,2702058,2702064,2702065,2702066,2702067,2702068,2702069,2702070,2702071,2702072,2702073,2702074,2702075,2702076,2702077,2702078,2702079],"Polished Deepslate":[2708821],"Polished Deepslate Slab":[2709076,2709078,2709079],"Polished Deepslate Stairs":[2709328,2709329,2709330,2709331,2709332,2709333,2709334,2709335],"Polished Deepslate Wall":[2709512,2709520,2709521,2709522,2709523,2709524,2709525,2709526,2709527,2709528,2709529,2709530,2709531,2709532,2709533,2709534,2709535,2709568,2709569,2709570,2709571,2709572,2709573,2709574,2709575,2709576,2709577,2709578,2709579,2709580,2709581,2709582,2709583,2709584,2709585,2709586,2709587,2709588,2709589,2709590,2709591,2709592,2709593,2709594,2709595,2709596,2709597,2709598,2709599,2709600,2709601,2709602,2709603,2709604,2709605,2709606,2709607,2709608,2709609,2709610,2709611,2709612,2709613,2709614,2709615,2709616,2709617,2709618,2709619,2709620,2709621,2709622,2709623,2709624,2709625,2709626,2709627,2709628,2709629,2709630,2709631,2709640,2709648,2709649,2709650,2709651,2709652,2709653,2709654,2709655,2709656,2709657,2709658,2709659,2709660,2709661,2709662,2709663,2709696,2709697,2709698,2709699,2709700,2709701,2709702,2709703,2709704,2709705,2709706,2709707,2709708,2709709,2709710,2709711,2709712,2709713,2709714,2709715,2709716,2709717,2709718,2709719,2709720,2709721,2709722,2709723,2709724,2709725,2709726,2709727,2709728,2709729,2709730,2709731,2709732,2709733,2709734,2709735,2709736,2709737,2709738,2709739,2709740,2709741,2709742,2709743,2709744,2709745,2709746,2709747,2709748,2709749,2709750,2709751,2709752,2709753,2709754,2709755,2709756,2709757,2709758,2709759],"Polished Diorite":[2662303],"Polished Diorite Slab":[2662560,2662561,2662562],"Polished Diorite Stairs":[2662816,2662817,2662818,2662819,2662820,2662821,2662822,2662823],"Polished Granite":[2663074],"Polished Granite Slab":[2663329,2663330,2663331],"Polished Granite Stairs":[2663584,2663585,2663586,2663587,2663588,2663589,2663590,2663591],"Polonium":[2614500],"Poppy":[2663845],"Potassium":[2614757],"Potato Block":[2664096,2664097,2664098,2664099,2664100,2664101,2664102,2664103],"Potion Cauldron":[2732464,2732465,2732466,2732467,2732468,2732469],"Powered Rail":[2664354,2664355,2664356,2664357,2664358,2664359,2664362,2664363,2664364,2664365,2664366,2664367],"Praseodymium":[2615014],"Prismarine":[2664616],"Prismarine Bricks":[2664873],"Prismarine Bricks Slab":[2665128,2665130,2665131],"Prismarine Bricks Stairs":[2665384,2665385,2665386,2665387,2665388,2665389,2665390,2665391],"Prismarine Slab":[2665644,2665645,2665646],"Prismarine Stairs":[2665896,2665897,2665898,2665899,2665900,2665901,2665902,2665903],"Prismarine Wall":[2665984,2665985,2665986,2665987,2665988,2665989,2665990,2665991,2665992,2665993,2665994,2665995,2665996,2665997,2665998,2665999,2666000,2666001,2666002,2666003,2666004,2666005,2666006,2666007,2666008,2666009,2666010,2666011,2666012,2666013,2666014,2666015,2666016,2666017,2666018,2666019,2666020,2666021,2666022,2666023,2666024,2666025,2666026,2666027,2666028,2666029,2666030,2666031,2666032,2666033,2666034,2666035,2666036,2666037,2666038,2666039,2666040,2666041,2666042,2666043,2666044,2666045,2666046,2666047,2666080,2666081,2666082,2666083,2666084,2666085,2666086,2666087,2666088,2666089,2666090,2666091,2666092,2666093,2666094,2666095,2666110,2666112,2666113,2666114,2666115,2666116,2666117,2666118,2666119,2666120,2666121,2666122,2666123,2666124,2666125,2666126,2666127,2666128,2666129,2666130,2666131,2666132,2666133,2666134,2666135,2666136,2666137,2666138,2666139,2666140,2666141,2666142,2666143,2666144,2666145,2666146,2666147,2666148,2666149,2666150,2666151,2666152,2666153,2666154,2666155,2666156,2666157,2666158,2666159,2666160,2666161,2666162,2666163,2666164,2666165,2666166,2666167,2666168,2666169,2666170,2666171,2666172,2666173,2666174,2666175,2666208,2666209,2666210,2666211,2666212,2666213,2666214,2666215,2666216,2666217,2666218,2666219,2666220,2666221,2666222,2666223,2666238],"Promethium":[2615271],"Protactinium":[2615528],"Pumpkin":[2666415],"Pumpkin Stem":[2666640,2666641,2666642,2666643,2666644,2666645,2666646,2666647,2666648,2666649,2666650,2666651,2666652,2666653,2666654,2666655,2666656,2666657,2666658,2666659,2666660,2666661,2666662,2666663,2666664,2666665,2666666,2666667,2666668,2666669,2666670,2666671,2666680,2666681,2666682,2666683,2666684,2666685,2666686,2666687],"Purple Torch":[2667184,2667185,2667187,2667190,2667191],"Purpur Block":[2667443],"Purpur Pillar":[2667700,2667701,2667702],"Purpur Slab":[2667956,2667957,2667959],"Purpur Stairs":[2668208,2668209,2668210,2668211,2668212,2668213,2668214,2668215],"Quartz Block":[2668471],"Quartz Bricks":[2709849],"Quartz Pillar":[2668728,2668729,2668730],"Quartz Slab":[2668984,2668985,2668987],"Quartz Stairs":[2669240,2669241,2669242,2669243,2669244,2669245,2669246,2669247],"Radium":[2615785],"Radon":[2616042],"Rail":[2669490,2669491,2669496,2669497,2669498,2669499,2669500,2669501,2669502,2669503],"Raw Copper Block":[2703938],"Raw Gold Block":[2704195],"Raw Iron Block":[2704452],"Red Mushroom":[2670013],"Red Mushroom Block":[2670260,2670262,2670263,2670264,2670265,2670266,2670267,2670268,2670269,2670270,2670271],"Red Nether Brick Slab":[2670525,2670526,2670527],"Red Nether Brick Stairs":[2670784,2670785,2670786,2670787,2670788,2670789,2670790,2670791],"Red Nether Brick Wall":[2670848,2670849,2670850,2670851,2670852,2670853,2670854,2670855,2670856,2670857,2670858,2670859,2670860,2670861,2670862,2670863,2670865,2670912,2670913,2670914,2670915,2670916,2670917,2670918,2670919,2670920,2670921,2670922,2670923,2670924,2670925,2670926,2670927,2670928,2670929,2670930,2670931,2670932,2670933,2670934,2670935,2670936,2670937,2670938,2670939,2670940,2670941,2670942,2670943,2670944,2670945,2670946,2670947,2670948,2670949,2670950,2670951,2670952,2670953,2670954,2670955,2670956,2670957,2670958,2670959,2670960,2670961,2670962,2670963,2670964,2670965,2670966,2670967,2670968,2670969,2670970,2670971,2670972,2670973,2670974,2670975,2670976,2670977,2670978,2670979,2670980,2670981,2670982,2670983,2670984,2670985,2670986,2670987,2670988,2670989,2670990,2670991,2670993,2671040,2671041,2671042,2671043,2671044,2671045,2671046,2671047,2671048,2671049,2671050,2671051,2671052,2671053,2671054,2671055,2671056,2671057,2671058,2671059,2671060,2671061,2671062,2671063,2671064,2671065,2671066,2671067,2671068,2671069,2671070,2671071,2671072,2671073,2671074,2671075,2671076,2671077,2671078,2671079,2671080,2671081,2671082,2671083,2671084,2671085,2671086,2671087,2671088,2671089,2671090,2671091,2671092,2671093,2671094,2671095,2671096,2671097,2671098,2671099,2671100,2671101,2671102,2671103],"Red Nether Bricks":[2671298],"Red Sand":[2671555],"Red Sandstone":[2671812],"Red Sandstone Slab":[2672068,2672069,2672071],"Red Sandstone Stairs":[2672320,2672321,2672322,2672323,2672324,2672325,2672326,2672327],"Red Sandstone Wall":[2672384,2672385,2672386,2672387,2672388,2672389,2672390,2672391,2672392,2672393,2672394,2672395,2672396,2672397,2672398,2672399,2672407,2672448,2672449,2672450,2672451,2672452,2672453,2672454,2672455,2672456,2672457,2672458,2672459,2672460,2672461,2672462,2672463,2672464,2672465,2672466,2672467,2672468,2672469,2672470,2672471,2672472,2672473,2672474,2672475,2672476,2672477,2672478,2672479,2672480,2672481,2672482,2672483,2672484,2672485,2672486,2672487,2672488,2672489,2672490,2672491,2672492,2672493,2672494,2672495,2672496,2672497,2672498,2672499,2672500,2672501,2672502,2672503,2672504,2672505,2672506,2672507,2672508,2672509,2672510,2672511,2672512,2672513,2672514,2672515,2672516,2672517,2672518,2672519,2672520,2672521,2672522,2672523,2672524,2672525,2672526,2672527,2672535,2672576,2672577,2672578,2672579,2672580,2672581,2672582,2672583,2672584,2672585,2672586,2672587,2672588,2672589,2672590,2672591,2672592,2672593,2672594,2672595,2672596,2672597,2672598,2672599,2672600,2672601,2672602,2672603,2672604,2672605,2672606,2672607,2672608,2672609,2672610,2672611,2672612,2672613,2672614,2672615,2672616,2672617,2672618,2672619,2672620,2672621,2672622,2672623,2672624,2672625,2672626,2672627,2672628,2672629,2672630,2672631,2672632,2672633,2672634,2672635,2672636,2672637,2672638,2672639],"Red Torch":[2672841,2672842,2672843,2672844,2672845],"Red Tulip":[2673097],"Redstone":[2674896,2674897,2674898,2674899,2674900,2674901,2674902,2674903,2674904,2674905,2674906,2674907,2674908,2674909,2674910,2674911],"Redstone Block":[2673354],"Redstone Comparator":[2673600,2673601,2673602,2673603,2673604,2673605,2673606,2673607,2673608,2673609,2673610,2673611,2673612,2673613,2673614,2673615],"Redstone Lamp":[2673868,2673869],"Redstone Ore":[2674124,2674125],"Redstone Repeater":[2674368,2674369,2674370,2674371,2674372,2674373,2674374,2674375,2674376,2674377,2674378,2674379,2674380,2674381,2674382,2674383,2674384,2674385,2674386,2674387,2674388,2674389,2674390,2674391,2674392,2674393,2674394,2674395,2674396,2674397,2674398,2674399],"Redstone Torch":[2674626,2674627,2674628,2674629,2674630,2674634,2674635,2674636,2674637,2674638],"Reinforced Deepslate":[2736320],"Rhenium":[2616299],"Rhodium":[2616556],"Roentgenium":[2616813],"Rose Bush":[2675410,2675411],"Rubidium":[2617070],"Ruthenium":[2617327],"Rutherfordium":[2617584],"Samarium":[2617841],"Sand":[2675667],"Sandstone":[2675924],"Sandstone Slab":[2676180,2676181,2676183],"Sandstone Stairs":[2676432,2676433,2676434,2676435,2676436,2676437,2676438,2676439],"Sandstone Wall":[2676487,2676496,2676497,2676498,2676499,2676500,2676501,2676502,2676503,2676504,2676505,2676506,2676507,2676508,2676509,2676510,2676511,2676544,2676545,2676546,2676547,2676548,2676549,2676550,2676551,2676552,2676553,2676554,2676555,2676556,2676557,2676558,2676559,2676560,2676561,2676562,2676563,2676564,2676565,2676566,2676567,2676568,2676569,2676570,2676571,2676572,2676573,2676574,2676575,2676576,2676577,2676578,2676579,2676580,2676581,2676582,2676583,2676584,2676585,2676586,2676587,2676588,2676589,2676590,2676591,2676592,2676593,2676594,2676595,2676596,2676597,2676598,2676599,2676600,2676601,2676602,2676603,2676604,2676605,2676606,2676607,2676615,2676624,2676625,2676626,2676627,2676628,2676629,2676630,2676631,2676632,2676633,2676634,2676635,2676636,2676637,2676638,2676639,2676672,2676673,2676674,2676675,2676676,2676677,2676678,2676679,2676680,2676681,2676682,2676683,2676684,2676685,2676686,2676687,2676688,2676689,2676690,2676691,2676692,2676693,2676694,2676695,2676696,2676697,2676698,2676699,2676700,2676701,2676702,2676703,2676704,2676705,2676706,2676707,2676708,2676709,2676710,2676711,2676712,2676713,2676714,2676715,2676716,2676717,2676718,2676719,2676720,2676721,2676722,2676723,2676724,2676725,2676726,2676727,2676728,2676729,2676730,2676731,2676732,2676733,2676734,2676735],"Scandium":[2618098],"Sculk":[2735035],"Sea Lantern":[2676952],"Sea Pickle":[2677208,2677209,2677210,2677211,2677212,2677213,2677214,2677215],"Seaborgium":[2618355],"Selenium":[2618612],"Shroomlight":[2712162],"Shulker Box":[2677466],"Silicon":[2618869],"Silver":[2619126],"Slime Block":[2677723],"Small Dripleaf":[2740944,2740945,2740946,2740947,2740948,2740949,2740950,2740951],"Smithing Table":[2730923],"Smoker":[2677976,2677977,2677978,2677979,2677980,2677981,2677982,2677983],"Smooth Basalt":[2699312],"Smooth Quartz Block":[2678237],"Smooth Quartz Slab":[2678492,2678494,2678495],"Smooth Quartz Stairs":[2678744,2678745,2678746,2678747,2678748,2678749,2678750,2678751],"Smooth Red Sandstone":[2679008],"Smooth Red Sandstone Slab":[2679264,2679265,2679267],"Smooth Red Sandstone Stairs":[2679520,2679521,2679522,2679523,2679524,2679525,2679526,2679527],"Smooth Sandstone":[2679779],"Smooth Sandstone Slab":[2680036,2680037,2680038],"Smooth Sandstone Stairs":[2680288,2680289,2680290,2680291,2680292,2680293,2680294,2680295],"Smooth Stone":[2680550],"Smooth Stone Slab":[2680805,2680806,2680807],"Snow Block":[2681064],"Snow Layer":[2681320,2681321,2681322,2681323,2681324,2681325,2681326,2681327],"Sodium":[2619383],"Soul Fire":[2711905],"Soul Lantern":[2711390,2711391],"Soul Sand":[2681578],"Soul Soil":[2711648],"Soul Torch":[2711130,2711131,2711132,2711133,2711135],"Sponge":[2681834,2681835],"Spore Blossom":[2731437],"Spruce Button":[2682080,2682081,2682084,2682085,2682086,2682087,2682088,2682089,2682092,2682093,2682094,2682095],"Spruce Door":[2682336,2682337,2682338,2682339,2682340,2682341,2682342,2682343,2682344,2682345,2682346,2682347,2682348,2682349,2682350,2682351,2682352,2682353,2682354,2682355,2682356,2682357,2682358,2682359,2682360,2682361,2682362,2682363,2682364,2682365,2682366,2682367],"Spruce Fence":[2682606],"Spruce Fence Gate":[2682848,2682849,2682850,2682851,2682852,2682853,2682854,2682855,2682856,2682857,2682858,2682859,2682860,2682861,2682862,2682863],"Spruce Leaves":[2683120,2683121,2683122,2683123],"Spruce Log":[2683376,2683377,2683378,2683379,2683380,2683381],"Spruce Planks":[2683634],"Spruce Pressure Plate":[2683890,2683891],"Spruce Sapling":[2684148,2684149],"Spruce Sign":[2684400,2684401,2684402,2684403,2684404,2684405,2684406,2684407,2684408,2684409,2684410,2684411,2684412,2684413,2684414,2684415],"Spruce Slab":[2684660,2684662,2684663],"Spruce Stairs":[2684912,2684913,2684914,2684915,2684916,2684917,2684918,2684919],"Spruce Trapdoor":[2685168,2685169,2685170,2685171,2685172,2685173,2685174,2685175,2685176,2685177,2685178,2685179,2685180,2685181,2685182,2685183],"Spruce Wall Sign":[2685432,2685433,2685434,2685435],"Spruce Wood":[2685688,2685689,2685690,2685691,2685694,2685695],"Stained Clay":[2685936,2685937,2685938,2685939,2685940,2685941,2685942,2685943,2685944,2685945,2685946,2685947,2685948,2685949,2685950,2685951],"Stained Glass":[2686192,2686193,2686194,2686195,2686196,2686197,2686198,2686199,2686200,2686201,2686202,2686203,2686204,2686205,2686206,2686207],"Stained Glass Pane":[2686448,2686449,2686450,2686451,2686452,2686453,2686454,2686455,2686456,2686457,2686458,2686459,2686460,2686461,2686462,2686463],"Stained Hardened Glass":[2686704,2686705,2686706,2686707,2686708,2686709,2686710,2686711,2686712,2686713,2686714,2686715,2686716,2686717,2686718,2686719],"Stained Hardened Glass Pane":[2686960,2686961,2686962,2686963,2686964,2686965,2686966,2686967,2686968,2686969,2686970,2686971,2686972,2686973,2686974,2686975],"Stone":[2686976],"Stone Brick Slab":[2687232,2687233,2687235],"Stone Brick Stairs":[2687488,2687489,2687490,2687491,2687492,2687493,2687494,2687495],"Stone Brick Wall":[2687744,2687745,2687746,2687747,2687748,2687749,2687750,2687751,2687752,2687753,2687754,2687755,2687756,2687757,2687758,2687759,2687760,2687761,2687762,2687763,2687764,2687765,2687766,2687767,2687768,2687769,2687770,2687771,2687772,2687773,2687774,2687775,2687776,2687777,2687778,2687779,2687780,2687781,2687782,2687783,2687784,2687785,2687786,2687787,2687788,2687789,2687790,2687791,2687792,2687793,2687794,2687795,2687796,2687797,2687798,2687799,2687800,2687801,2687802,2687803,2687804,2687805,2687806,2687807,2687808,2687809,2687810,2687811,2687812,2687813,2687814,2687815,2687816,2687817,2687818,2687819,2687820,2687821,2687822,2687823,2687827,2687872,2687873,2687874,2687875,2687876,2687877,2687878,2687879,2687880,2687881,2687882,2687883,2687884,2687885,2687886,2687887,2687888,2687889,2687890,2687891,2687892,2687893,2687894,2687895,2687896,2687897,2687898,2687899,2687900,2687901,2687902,2687903,2687904,2687905,2687906,2687907,2687908,2687909,2687910,2687911,2687912,2687913,2687914,2687915,2687916,2687917,2687918,2687919,2687920,2687921,2687922,2687923,2687924,2687925,2687926,2687927,2687928,2687929,2687930,2687931,2687932,2687933,2687934,2687935,2687936,2687937,2687938,2687939,2687940,2687941,2687942,2687943,2687944,2687945,2687946,2687947,2687948,2687949,2687950,2687951,2687955],"Stone Bricks":[2688004],"Stone Button":[2688256,2688257,2688260,2688261,2688262,2688263,2688264,2688265,2688268,2688269,2688270,2688271],"Stone Pressure Plate":[2688518,2688519],"Stone Slab":[2688773,2688774,2688775],"Stone Stairs":[2689032,2689033,2689034,2689035,2689036,2689037,2689038,2689039],"Stonecutter":[2689288,2689289,2689290,2689291],"Strontium":[2619640],"Sugarcane":[2692624,2692625,2692626,2692627,2692628,2692629,2692630,2692631,2692632,2692633,2692634,2692635,2692636,2692637,2692638,2692639],"Sulfur":[2619897],"Sunflower":[2692886,2692887],"Sweet Berry Bush":[2693144,2693145,2693146,2693147],"TNT":[2693656,2693657,2693658,2693659],"Tall Grass":[2693401],"Tantalum":[2620154],"Technetium":[2620411],"Tellurium":[2620668],"Tennessine":[2620925],"Terbium":[2621182],"Thallium":[2621439],"Thorium":[2621440],"Thulium":[2621697],"Tin":[2621954],"Tinted Glass":[2722442],"Titanium":[2622211],"Torch":[2693912,2693913,2693914,2693918,2693919],"Torchflower":[2742745],"Torchflower Crop":[2743002,2743003],"Trapped Chest":[2694172,2694173,2694174,2694175],"Tripwire":[2694416,2694417,2694418,2694419,2694420,2694421,2694422,2694423,2694424,2694425,2694426,2694427,2694428,2694429,2694430,2694431],"Tripwire Hook":[2694672,2694673,2694674,2694675,2694676,2694677,2694678,2694679,2694680,2694681,2694682,2694683,2694684,2694685,2694686,2694687],"Tuff":[2710877],"Tungsten":[2622468],"Twisting Vines":[2734240,2734241,2734248,2734249,2734250,2734251,2734252,2734253,2734254,2734255,2734256,2734257,2734258,2734259,2734260,2734261,2734262,2734263,2734264,2734265,2734266,2734267,2734268,2734269,2734270,2734271],"Underwater Torch":[2694938,2694939,2694940,2694941,2694942],"Uranium":[2622725],"Vanadium":[2622982],"Vines":[2695200,2695201,2695202,2695203,2695204,2695205,2695206,2695207,2695208,2695209,2695210,2695211,2695212,2695213,2695214,2695215],"Wall Banner":[2695424,2695425,2695426,2695427,2695428,2695429,2695430,2695431,2695432,2695433,2695434,2695435,2695436,2695437,2695438,2695439,2695440,2695441,2695442,2695443,2695444,2695445,2695446,2695447,2695448,2695449,2695450,2695451,2695452,2695453,2695454,2695455,2695456,2695457,2695458,2695459,2695460,2695461,2695462,2695463,2695464,2695465,2695466,2695467,2695468,2695469,2695470,2695471,2695472,2695473,2695474,2695475,2695476,2695477,2695478,2695479,2695480,2695481,2695482,2695483,2695484,2695485,2695486,2695487],"Wall Coral Fan":[2695680,2695681,2695682,2695683,2695686,2695688,2695689,2695690,2695691,2695694,2695696,2695697,2695698,2695699,2695702,2695704,2695705,2695706,2695707,2695710,2695712,2695713,2695714,2695715,2695718,2695720,2695721,2695722,2695723,2695726,2695728,2695729,2695730,2695731,2695734,2695736,2695737,2695738,2695739,2695742],"Warped Button":[2717554,2717555,2717556,2717557,2717558,2717559,2717562,2717563,2717564,2717565,2717566,2717567],"Warped Door":[2719072,2719073,2719074,2719075,2719076,2719077,2719078,2719079,2719080,2719081,2719082,2719083,2719084,2719085,2719086,2719087,2719088,2719089,2719090,2719091,2719092,2719093,2719094,2719095,2719096,2719097,2719098,2719099,2719100,2719101,2719102,2719103],"Warped Fence":[2713704],"Warped Fence Gate":[2719872,2719873,2719874,2719875,2719876,2719877,2719878,2719879,2719880,2719881,2719882,2719883,2719884,2719885,2719886,2719887],"Warped Hyphae":[2716016,2716017,2716018,2716019,2716020,2716021],"Warped Planks":[2712933],"Warped Pressure Plate":[2718330,2718331],"Warped Roots":[2742231],"Warped Sign":[2721408,2721409,2721410,2721411,2721412,2721413,2721414,2721415,2721416,2721417,2721418,2721419,2721420,2721421,2721422,2721423],"Warped Slab":[2714473,2714474,2714475],"Warped Stairs":[2720640,2720641,2720642,2720643,2720644,2720645,2720646,2720647],"Warped Stem":[2715242,2715243,2715244,2715245,2715246,2715247],"Warped Trapdoor":[2716784,2716785,2716786,2716787,2716788,2716789,2716790,2716791,2716792,2716793,2716794,2716795,2716796,2716797,2716798,2716799],"Warped Wall Sign":[2722184,2722185,2722186,2722187],"Warped Wart Block":[2727068],"Water":[2695968,2695969,2695970,2695971,2695972,2695973,2695974,2695975,2695976,2695977,2695978,2695979,2695980,2695981,2695982,2695983,2695984,2695985,2695986,2695987,2695988,2695989,2695990,2695991,2695992,2695993,2695994,2695995,2695996,2695997,2695998,2695999],"Water Cauldron":[2731946,2731947,2731948,2731949,2731950,2731951],"Weeping Vines":[2734496,2734497,2734504,2734505,2734506,2734507,2734508,2734509,2734510,2734511,2734512,2734513,2734514,2734515,2734516,2734517,2734518,2734519,2734520,2734521,2734522,2734523,2734524,2734525,2734526,2734527],"Weighted Pressure Plate Heavy":[2696224,2696225,2696226,2696227,2696228,2696229,2696230,2696231,2696232,2696233,2696234,2696235,2696236,2696237,2696238,2696239],"Weighted Pressure Plate Light":[2696480,2696481,2696482,2696483,2696484,2696485,2696486,2696487,2696488,2696489,2696490,2696491,2696492,2696493,2696494,2696495],"Wheat Block":[2696736,2696737,2696738,2696739,2696740,2696741,2696742,2696743],"White Tulip":[2697256],"Wither Rose":[2730152],"Wool":[2697504,2697505,2697506,2697507,2697508,2697509,2697510,2697511,2697512,2697513,2697514,2697515,2697516,2697517,2697518,2697519],"Xenon":[2623239],"Ytterbium":[2623496],"Yttrium":[2623753],"Zinc":[2624267],"Zirconium":[2624524],"ate!upd":[2637117],"reserved6":[2675153],"update!":[2636860]},"stateDataBits":8} \ No newline at end of file +{"knownStates":{"???":[2624113],"Acacia Button":[2560272,2560273,2560276,2560277,2560278,2560279,2560280,2560281,2560284,2560285,2560286,2560287],"Acacia Door":[2560704,2560705,2560706,2560707,2560708,2560709,2560710,2560711,2560712,2560713,2560714,2560715,2560716,2560717,2560718,2560719,2560720,2560721,2560722,2560723,2560724,2560725,2560726,2560727,2560728,2560729,2560730,2560731,2560732,2560733,2560734,2560735],"Acacia Fence":[2561017],"Acacia Fence Gate":[2561136,2561137,2561138,2561139,2561140,2561141,2561142,2561143,2561144,2561145,2561146,2561147,2561148,2561149,2561150,2561151],"Acacia Leaves":[2561444,2561445,2561446,2561447],"Acacia Log":[2561576,2561577,2561578,2561579,2561582,2561583],"Acacia Planks":[2561834],"Acacia Pressure Plate":[2562296,2562297],"Acacia Sapling":[2562386,2562387],"Acacia Sign":[2562560,2562561,2562562,2562563,2562564,2562565,2562566,2562567,2562568,2562569,2562570,2562571,2562572,2562573,2562574,2562575],"Acacia Slab":[2562836,2562837,2562838],"Acacia Stairs":[2563176,2563177,2563178,2563179,2563180,2563181,2563182,2563183],"Acacia Trapdoor":[2563456,2563457,2563458,2563459,2563460,2563461,2563462,2563463,2563464,2563465,2563466,2563467,2563468,2563469,2563470,2563471],"Acacia Wall Sign":[2563768,2563769,2563770,2563771],"Acacia Wood":[2563984,2563985,2563986,2563987,2563988,2563989],"Actinium":[2594209],"Activator Rail":[2564338,2564339,2564340,2564341,2564342,2564343,2564346,2564347,2564348,2564349,2564350,2564351],"Air":[2560220],"All Sided Mushroom Stem":[2564457],"Allium":[2564668],"Aluminum":[2594489],"Americium":[2594724],"Amethyst":[2698349],"Amethyst Cluster":[2697760,2697761,2697762,2697763,2697764,2697765,2697766,2697767,2697768,2697769,2697770,2697771,2697772,2697773,2697774,2697775,2697776,2697777,2697778,2697779,2697780,2697781,2697782,2697783],"Ancient Debris":[2698682],"Andesite":[2564865],"Andesite Slab":[2565208,2565210,2565211],"Andesite Stairs":[2565528,2565529,2565530,2565531,2565532,2565533,2565534,2565535],"Andesite Wall":[2565632,2565633,2565634,2565635,2565636,2565637,2565638,2565639,2565640,2565641,2565642,2565643,2565644,2565645,2565646,2565647,2565654,2565696,2565697,2565698,2565699,2565700,2565701,2565702,2565703,2565704,2565705,2565706,2565707,2565708,2565709,2565710,2565711,2565712,2565713,2565714,2565715,2565716,2565717,2565718,2565719,2565720,2565721,2565722,2565723,2565724,2565725,2565726,2565727,2565728,2565729,2565730,2565731,2565732,2565733,2565734,2565735,2565736,2565737,2565738,2565739,2565740,2565741,2565742,2565743,2565744,2565745,2565746,2565747,2565748,2565749,2565750,2565751,2565752,2565753,2565754,2565755,2565756,2565757,2565758,2565759,2565760,2565761,2565762,2565763,2565764,2565765,2565766,2565767,2565768,2565769,2565770,2565771,2565772,2565773,2565774,2565775,2565782,2565824,2565825,2565826,2565827,2565828,2565829,2565830,2565831,2565832,2565833,2565834,2565835,2565836,2565837,2565838,2565839,2565840,2565841,2565842,2565843,2565844,2565845,2565846,2565847,2565848,2565849,2565850,2565851,2565852,2565853,2565854,2565855,2565856,2565857,2565858,2565859,2565860,2565861,2565862,2565863,2565864,2565865,2565866,2565867,2565868,2565869,2565870,2565871,2565872,2565873,2565874,2565875,2565876,2565877,2565878,2565879,2565880,2565881,2565882,2565883,2565884,2565885,2565886,2565887],"Antimony":[2595005],"Anvil":[2565936,2565937,2565939,2565940,2565941,2565943,2565944,2565945,2565947,2565948,2565949,2565951],"Argon":[2595322],"Arsenic":[2595370],"Astatine":[2595621],"Azalea Leaves":[2735748,2735749,2735750,2735751],"Azure Bluet":[2566231],"Bamboo":[2566465,2566466,2566467,2566469,2566470,2566471,2566473,2566474,2566475,2566477,2566478,2566479],"Bamboo Sapling":[2566668,2566669],"Banner":[2566912,2566913,2566914,2566915,2566916,2566917,2566918,2566919,2566920,2566921,2566922,2566923,2566924,2566925,2566926,2566927,2566928,2566929,2566930,2566931,2566932,2566933,2566934,2566935,2566936,2566937,2566938,2566939,2566940,2566941,2566942,2566943,2566944,2566945,2566946,2566947,2566948,2566949,2566950,2566951,2566952,2566953,2566954,2566955,2566956,2566957,2566958,2566959,2566960,2566961,2566962,2566963,2566964,2566965,2566966,2566967,2566968,2566969,2566970,2566971,2566972,2566973,2566974,2566975,2566976,2566977,2566978,2566979,2566980,2566981,2566982,2566983,2566984,2566985,2566986,2566987,2566988,2566989,2566990,2566991,2566992,2566993,2566994,2566995,2566996,2566997,2566998,2566999,2567000,2567001,2567002,2567003,2567004,2567005,2567006,2567007,2567008,2567009,2567010,2567011,2567012,2567013,2567014,2567015,2567016,2567017,2567018,2567019,2567020,2567021,2567022,2567023,2567024,2567025,2567026,2567027,2567028,2567029,2567030,2567031,2567032,2567033,2567034,2567035,2567036,2567037,2567038,2567039,2567040,2567041,2567042,2567043,2567044,2567045,2567046,2567047,2567048,2567049,2567050,2567051,2567052,2567053,2567054,2567055,2567056,2567057,2567058,2567059,2567060,2567061,2567062,2567063,2567064,2567065,2567066,2567067,2567068,2567069,2567070,2567071,2567072,2567073,2567074,2567075,2567076,2567077,2567078,2567079,2567080,2567081,2567082,2567083,2567084,2567085,2567086,2567087,2567088,2567089,2567090,2567091,2567092,2567093,2567094,2567095,2567096,2567097,2567098,2567099,2567100,2567101,2567102,2567103,2567104,2567105,2567106,2567107,2567108,2567109,2567110,2567111,2567112,2567113,2567114,2567115,2567116,2567117,2567118,2567119,2567120,2567121,2567122,2567123,2567124,2567125,2567126,2567127,2567128,2567129,2567130,2567131,2567132,2567133,2567134,2567135,2567136,2567137,2567138,2567139,2567140,2567141,2567142,2567143,2567144,2567145,2567146,2567147,2567148,2567149,2567150,2567151,2567152,2567153,2567154,2567155,2567156,2567157,2567158,2567159,2567160,2567161,2567162,2567163,2567164,2567165,2567166,2567167],"Barium":[2595884],"Barrel":[2567344,2567345,2567346,2567347,2567350,2567351,2567352,2567353,2567354,2567355,2567358,2567359],"Barrier":[2567542],"Basalt":[2698760,2698761,2698762],"Beacon":[2567785],"Bed Block":[2567936,2567937,2567938,2567939,2567940,2567941,2567942,2567943,2567944,2567945,2567946,2567947,2567948,2567949,2567950,2567951,2567952,2567953,2567954,2567955,2567956,2567957,2567958,2567959,2567960,2567961,2567962,2567963,2567964,2567965,2567966,2567967,2567968,2567969,2567970,2567971,2567972,2567973,2567974,2567975,2567976,2567977,2567978,2567979,2567980,2567981,2567982,2567983,2567984,2567985,2567986,2567987,2567988,2567989,2567990,2567991,2567992,2567993,2567994,2567995,2567996,2567997,2567998,2567999,2568000,2568001,2568002,2568003,2568004,2568005,2568006,2568007,2568008,2568009,2568010,2568011,2568012,2568013,2568014,2568015,2568016,2568017,2568018,2568019,2568020,2568021,2568022,2568023,2568024,2568025,2568026,2568027,2568028,2568029,2568030,2568031,2568032,2568033,2568034,2568035,2568036,2568037,2568038,2568039,2568040,2568041,2568042,2568043,2568044,2568045,2568046,2568047,2568048,2568049,2568050,2568051,2568052,2568053,2568054,2568055,2568056,2568057,2568058,2568059,2568060,2568061,2568062,2568063,2568064,2568065,2568066,2568067,2568068,2568069,2568070,2568071,2568072,2568073,2568074,2568075,2568076,2568077,2568078,2568079,2568080,2568081,2568082,2568083,2568084,2568085,2568086,2568087,2568088,2568089,2568090,2568091,2568092,2568093,2568094,2568095,2568096,2568097,2568098,2568099,2568100,2568101,2568102,2568103,2568104,2568105,2568106,2568107,2568108,2568109,2568110,2568111,2568112,2568113,2568114,2568115,2568116,2568117,2568118,2568119,2568120,2568121,2568122,2568123,2568124,2568125,2568126,2568127,2568128,2568129,2568130,2568131,2568132,2568133,2568134,2568135,2568136,2568137,2568138,2568139,2568140,2568141,2568142,2568143,2568144,2568145,2568146,2568147,2568148,2568149,2568150,2568151,2568152,2568153,2568154,2568155,2568156,2568157,2568158,2568159,2568160,2568161,2568162,2568163,2568164,2568165,2568166,2568167,2568168,2568169,2568170,2568171,2568172,2568173,2568174,2568175,2568176,2568177,2568178,2568179,2568180,2568181,2568182,2568183,2568184,2568185,2568186,2568187,2568188,2568189,2568190,2568191],"Bedrock":[2568196,2568197],"Beetroot Block":[2568656,2568657,2568658,2568659,2568660,2568661,2568662,2568663],"Bell":[2568768,2568769,2568770,2568771,2568772,2568773,2568774,2568775,2568776,2568777,2568778,2568779,2568780,2568781,2568782,2568783],"Berkelium":[2596102],"Beryllium":[2596419],"Big Dripleaf":[2741200,2741201,2741202,2741203,2741204,2741205,2741206,2741207,2741208,2741209,2741210,2741211,2741212,2741213,2741214,2741215],"Big Dripleaf Stem":[2741448,2741449,2741450,2741451],"Birch Button":[2568992,2568993,2568994,2568995,2568998,2568999,2569000,2569001,2569002,2569003,2569006,2569007],"Birch Door":[2569312,2569313,2569314,2569315,2569316,2569317,2569318,2569319,2569320,2569321,2569322,2569323,2569324,2569325,2569326,2569327,2569328,2569329,2569330,2569331,2569332,2569333,2569334,2569335,2569336,2569337,2569338,2569339,2569340,2569341,2569342,2569343],"Birch Fence":[2569526],"Birch Fence Gate":[2569904,2569905,2569906,2569907,2569908,2569909,2569910,2569911,2569912,2569913,2569914,2569915,2569916,2569917,2569918,2569919],"Birch Leaves":[2570200,2570201,2570202,2570203],"Birch Log":[2570432,2570433,2570436,2570437,2570438,2570439],"Birch Planks":[2570714],"Birch Pressure Plate":[2570946,2570947],"Birch Sapling":[2571148,2571149],"Birch Sign":[2571408,2571409,2571410,2571411,2571412,2571413,2571414,2571415,2571416,2571417,2571418,2571419,2571420,2571421,2571422,2571423],"Birch Slab":[2571532,2571533,2571534],"Birch Stairs":[2571880,2571881,2571882,2571883,2571884,2571885,2571886,2571887],"Birch Trapdoor":[2572272,2572273,2572274,2572275,2572276,2572277,2572278,2572279,2572280,2572281,2572282,2572283,2572284,2572285,2572286,2572287],"Birch Wall Sign":[2572492,2572493,2572494,2572495],"Birch Wood":[2572762,2572763,2572764,2572765,2572766,2572767],"Bismuth":[2596655],"Blackstone":[2699667],"Blackstone Slab":[2699812,2699814,2699815],"Blackstone Stairs":[2700040,2700041,2700042,2700043,2700044,2700045,2700046,2700047],"Blackstone Wall":[2700290,2700304,2700305,2700306,2700307,2700308,2700309,2700310,2700311,2700312,2700313,2700314,2700315,2700316,2700317,2700318,2700319,2700352,2700353,2700354,2700355,2700356,2700357,2700358,2700359,2700360,2700361,2700362,2700363,2700364,2700365,2700366,2700367,2700368,2700369,2700370,2700371,2700372,2700373,2700374,2700375,2700376,2700377,2700378,2700379,2700380,2700381,2700382,2700383,2700384,2700385,2700386,2700387,2700388,2700389,2700390,2700391,2700392,2700393,2700394,2700395,2700396,2700397,2700398,2700399,2700400,2700401,2700402,2700403,2700404,2700405,2700406,2700407,2700408,2700409,2700410,2700411,2700412,2700413,2700414,2700415,2700418,2700432,2700433,2700434,2700435,2700436,2700437,2700438,2700439,2700440,2700441,2700442,2700443,2700444,2700445,2700446,2700447,2700480,2700481,2700482,2700483,2700484,2700485,2700486,2700487,2700488,2700489,2700490,2700491,2700492,2700493,2700494,2700495,2700496,2700497,2700498,2700499,2700500,2700501,2700502,2700503,2700504,2700505,2700506,2700507,2700508,2700509,2700510,2700511,2700512,2700513,2700514,2700515,2700516,2700517,2700518,2700519,2700520,2700521,2700522,2700523,2700524,2700525,2700526,2700527,2700528,2700529,2700530,2700531,2700532,2700533,2700534,2700535,2700536,2700537,2700538,2700539,2700540,2700541,2700542,2700543],"Blast Furnace":[2573168,2573169,2573170,2573171,2573172,2573173,2573174,2573175],"Blue Ice":[2573619],"Blue Orchid":[2574037],"Blue Torch":[2574128,2574129,2574133,2574134,2574135],"Bohrium":[2596992],"Bone Block":[2574452,2574453,2574455],"Bookshelf":[2574696],"Boron":[2597121],"Brewing Stand":[2574960,2574961,2574962,2574963,2574964,2574965,2574966,2574967],"Brick Slab":[2575184,2575185,2575187],"Brick Stairs":[2575608,2575609,2575610,2575611,2575612,2575613,2575614,2575615],"Brick Wall":[2575616,2575617,2575618,2575619,2575620,2575621,2575622,2575623,2575624,2575625,2575626,2575627,2575628,2575629,2575630,2575631,2575632,2575633,2575634,2575635,2575636,2575637,2575638,2575639,2575640,2575641,2575642,2575643,2575644,2575645,2575646,2575647,2575648,2575649,2575650,2575651,2575652,2575653,2575654,2575655,2575656,2575657,2575658,2575659,2575660,2575661,2575662,2575663,2575664,2575665,2575666,2575667,2575668,2575669,2575670,2575671,2575672,2575673,2575674,2575675,2575676,2575677,2575678,2575679,2575717,2575728,2575729,2575730,2575731,2575732,2575733,2575734,2575735,2575736,2575737,2575738,2575739,2575740,2575741,2575742,2575743,2575744,2575745,2575746,2575747,2575748,2575749,2575750,2575751,2575752,2575753,2575754,2575755,2575756,2575757,2575758,2575759,2575760,2575761,2575762,2575763,2575764,2575765,2575766,2575767,2575768,2575769,2575770,2575771,2575772,2575773,2575774,2575775,2575776,2575777,2575778,2575779,2575780,2575781,2575782,2575783,2575784,2575785,2575786,2575787,2575788,2575789,2575790,2575791,2575792,2575793,2575794,2575795,2575796,2575797,2575798,2575799,2575800,2575801,2575802,2575803,2575804,2575805,2575806,2575807,2575845,2575856,2575857,2575858,2575859,2575860,2575861,2575862,2575863,2575864,2575865,2575866,2575867,2575868,2575869,2575870,2575871],"Bricks":[2575954],"Bromine":[2597549],"Brown Mushroom":[2576600],"Brown Mushroom Block":[2576784,2576785,2576786,2576787,2576788,2576789,2576790,2576791,2576796,2576797,2576799],"Budding Amethyst":[2697080],"Cactus":[2577088,2577089,2577090,2577091,2577092,2577093,2577094,2577095,2577096,2577097,2577098,2577099,2577100,2577101,2577102,2577103],"Cadmium":[2597701],"Cake":[2577240,2577241,2577242,2577243,2577244,2577245,2577246],"Cake With Candle":[2729638,2729639],"Cake With Dyed Candle":[2729856,2729857,2729858,2729859,2729860,2729861,2729862,2729863,2729864,2729865,2729866,2729867,2729868,2729869,2729870,2729871,2729872,2729873,2729874,2729875,2729876,2729877,2729878,2729879,2729880,2729881,2729882,2729883,2729884,2729885,2729886,2729887],"Calcite":[2704877],"Calcium":[2597941],"Californium":[2598331],"Candle":[2729200,2729201,2729202,2729203,2729204,2729205,2729206,2729207],"Carbon":[2598640],"Carpet":[2577424,2577425,2577426,2577427,2577428,2577429,2577430,2577431,2577432,2577433,2577434,2577435,2577436,2577437,2577438,2577439],"Carrot Block":[2577824,2577825,2577826,2577827,2577828,2577829,2577830,2577831],"Cartography Table":[2730733],"Carved Pumpkin":[2578164,2578165,2578166,2578167],"Cauldron":[2731561],"Cave Vines":[2736512,2736513,2736514,2736515,2736516,2736517,2736518,2736519,2736520,2736521,2736522,2736523,2736524,2736525,2736526,2736527,2736532,2736533,2736536,2736537,2736538,2736539,2736540,2736541,2736542,2736543,2736544,2736545,2736546,2736547,2736548,2736549,2736550,2736551,2736552,2736553,2736554,2736555,2736556,2736557,2736558,2736559,2736564,2736565,2736568,2736569,2736570,2736571,2736572,2736573,2736574,2736575,2736576,2736577,2736578,2736579,2736580,2736581,2736582,2736583,2736584,2736585,2736586,2736587,2736588,2736589,2736590,2736591,2736596,2736597,2736600,2736601,2736602,2736603,2736604,2736605,2736606,2736607,2736608,2736609,2736610,2736611,2736612,2736613,2736614,2736615,2736616,2736617,2736618,2736619,2736620,2736621,2736622,2736623,2736628,2736629,2736632,2736633,2736634,2736635,2736636,2736637,2736638,2736639],"Cerium":[2598839],"Cesium":[2599158],"Chain":[2734637,2734638,2734639],"Cherry Button":[2737042,2737043,2737044,2737045,2737046,2737047,2737050,2737051,2737052,2737053,2737054,2737055],"Cherry Door":[2737216,2737217,2737218,2737219,2737220,2737221,2737222,2737223,2737224,2737225,2737226,2737227,2737228,2737229,2737230,2737231,2737232,2737233,2737234,2737235,2737236,2737237,2737238,2737239,2737240,2737241,2737242,2737243,2737244,2737245,2737246,2737247],"Cherry Fence":[2737525],"Cherry Fence Gate":[2737744,2737745,2737746,2737747,2737748,2737749,2737750,2737751,2737752,2737753,2737754,2737755,2737756,2737757,2737758,2737759],"Cherry Leaves":[2737948,2737949,2737950,2737951],"Cherry Log":[2738296,2738297,2738298,2738299,2738302,2738303],"Cherry Planks":[2738452],"Cherry Pressure Plate":[2738928,2738929],"Cherry Sign":[2739264,2739265,2739266,2739267,2739268,2739269,2739270,2739271,2739272,2739273,2739274,2739275,2739276,2739277,2739278,2739279],"Cherry Slab":[2739648,2739649,2739651],"Cherry Stairs":[2739904,2739905,2739906,2739907,2739908,2739909,2739910,2739911],"Cherry Trapdoor":[2740192,2740193,2740194,2740195,2740196,2740197,2740198,2740199,2740200,2740201,2740202,2740203,2740204,2740205,2740206,2740207],"Cherry Wall Sign":[2740252,2740253,2740254,2740255],"Cherry Wood":[2740648,2740649,2740652,2740653,2740654,2740655],"Chest":[2578568,2578569,2578570,2578571],"Chiseled Bookshelf":[2742272,2742273,2742274,2742275,2742276,2742277,2742278,2742279,2742280,2742281,2742282,2742283,2742284,2742285,2742286,2742287,2742288,2742289,2742290,2742291,2742292,2742293,2742294,2742295,2742296,2742297,2742298,2742299,2742300,2742301,2742302,2742303,2742304,2742305,2742306,2742307,2742308,2742309,2742310,2742311,2742312,2742313,2742314,2742315,2742316,2742317,2742318,2742319,2742320,2742321,2742322,2742323,2742324,2742325,2742326,2742327,2742328,2742329,2742330,2742331,2742332,2742333,2742334,2742335,2742336,2742337,2742338,2742339,2742340,2742341,2742342,2742343,2742344,2742345,2742346,2742347,2742348,2742349,2742350,2742351,2742352,2742353,2742354,2742355,2742356,2742357,2742358,2742359,2742360,2742361,2742362,2742363,2742364,2742365,2742366,2742367,2742368,2742369,2742370,2742371,2742372,2742373,2742374,2742375,2742376,2742377,2742378,2742379,2742380,2742381,2742382,2742383,2742384,2742385,2742386,2742387,2742388,2742389,2742390,2742391,2742392,2742393,2742394,2742395,2742396,2742397,2742398,2742399,2742400,2742401,2742402,2742403,2742404,2742405,2742406,2742407,2742408,2742409,2742410,2742411,2742412,2742413,2742414,2742415,2742416,2742417,2742418,2742419,2742420,2742421,2742422,2742423,2742424,2742425,2742426,2742427,2742428,2742429,2742430,2742431,2742432,2742433,2742434,2742435,2742436,2742437,2742438,2742439,2742440,2742441,2742442,2742443,2742444,2742445,2742446,2742447,2742448,2742449,2742450,2742451,2742452,2742453,2742454,2742455,2742456,2742457,2742458,2742459,2742460,2742461,2742462,2742463,2742464,2742465,2742466,2742467,2742468,2742469,2742470,2742471,2742472,2742473,2742474,2742475,2742476,2742477,2742478,2742479,2742480,2742481,2742482,2742483,2742484,2742485,2742486,2742487,2742488,2742489,2742490,2742491,2742492,2742493,2742494,2742495,2742496,2742497,2742498,2742499,2742500,2742501,2742502,2742503,2742504,2742505,2742506,2742507,2742508,2742509,2742510,2742511,2742512,2742513,2742514,2742515,2742516,2742517,2742518,2742519,2742520,2742521,2742522,2742523,2742524,2742525,2742526,2742527],"Chiseled Deepslate":[2710178],"Chiseled Nether Bricks":[2710490],"Chiseled Polished Blackstone":[2702198],"Chiseled Quartz Block":[2578820,2578822,2578823],"Chiseled Red Sandstone":[2579100],"Chiseled Sandstone":[2579423],"Chiseled Stone Bricks":[2579586],"Chlorine":[2599314],"Chorus Flower":[2732968,2732969,2732972,2732973,2732974,2732975],"Chorus Plant":[2733195],"Chromium":[2599618],"Clay Block":[2579928],"Coal Block":[2580113],"Coal Ore":[2580456],"Cobalt":[2599759],"Cobbled Deepslate":[2707954],"Cobbled Deepslate Slab":[2708012,2708014,2708015],"Cobbled Deepslate Stairs":[2708408,2708409,2708410,2708411,2708412,2708413,2708414,2708415],"Cobbled Deepslate Wall":[2708517,2708528,2708529,2708530,2708531,2708532,2708533,2708534,2708535,2708536,2708537,2708538,2708539,2708540,2708541,2708542,2708543,2708544,2708545,2708546,2708547,2708548,2708549,2708550,2708551,2708552,2708553,2708554,2708555,2708556,2708557,2708558,2708559,2708560,2708561,2708562,2708563,2708564,2708565,2708566,2708567,2708568,2708569,2708570,2708571,2708572,2708573,2708574,2708575,2708576,2708577,2708578,2708579,2708580,2708581,2708582,2708583,2708584,2708585,2708586,2708587,2708588,2708589,2708590,2708591,2708592,2708593,2708594,2708595,2708596,2708597,2708598,2708599,2708600,2708601,2708602,2708603,2708604,2708605,2708606,2708607,2708645,2708656,2708657,2708658,2708659,2708660,2708661,2708662,2708663,2708664,2708665,2708666,2708667,2708668,2708669,2708670,2708671,2708672,2708673,2708674,2708675,2708676,2708677,2708678,2708679,2708680,2708681,2708682,2708683,2708684,2708685,2708686,2708687,2708688,2708689,2708690,2708691,2708692,2708693,2708694,2708695,2708696,2708697,2708698,2708699,2708700,2708701,2708702,2708703,2708704,2708705,2708706,2708707,2708708,2708709,2708710,2708711,2708712,2708713,2708714,2708715,2708716,2708717,2708718,2708719,2708720,2708721,2708722,2708723,2708724,2708725,2708726,2708727,2708728,2708729,2708730,2708731,2708732,2708733,2708734,2708735],"Cobblestone":[2580494],"Cobblestone Slab":[2580816,2580818,2580819],"Cobblestone Stairs":[2581008,2581009,2581010,2581011,2581012,2581013,2581014,2581015],"Cobblestone Wall":[2581248,2581249,2581250,2581251,2581252,2581253,2581254,2581255,2581256,2581257,2581258,2581259,2581260,2581261,2581262,2581263,2581264,2581265,2581266,2581267,2581268,2581269,2581270,2581271,2581272,2581273,2581274,2581275,2581276,2581277,2581278,2581279,2581280,2581281,2581282,2581283,2581284,2581285,2581286,2581287,2581288,2581289,2581290,2581291,2581292,2581293,2581294,2581295,2581296,2581297,2581298,2581299,2581300,2581301,2581302,2581303,2581304,2581305,2581306,2581307,2581308,2581309,2581310,2581311,2581344,2581345,2581346,2581347,2581348,2581349,2581350,2581351,2581352,2581353,2581354,2581355,2581356,2581357,2581358,2581359,2581363,2581376,2581377,2581378,2581379,2581380,2581381,2581382,2581383,2581384,2581385,2581386,2581387,2581388,2581389,2581390,2581391,2581392,2581393,2581394,2581395,2581396,2581397,2581398,2581399,2581400,2581401,2581402,2581403,2581404,2581405,2581406,2581407,2581408,2581409,2581410,2581411,2581412,2581413,2581414,2581415,2581416,2581417,2581418,2581419,2581420,2581421,2581422,2581423,2581424,2581425,2581426,2581427,2581428,2581429,2581430,2581431,2581432,2581433,2581434,2581435,2581436,2581437,2581438,2581439,2581472,2581473,2581474,2581475,2581476,2581477,2581478,2581479,2581480,2581481,2581482,2581483,2581484,2581485,2581486,2581487,2581491],"Cobweb":[2581680],"Cocoa Block":[2581936,2581937,2581938,2581939,2581940,2581941,2581942,2581943,2581944,2581945,2581946,2581947],"Compound Creator":[2582064,2582065,2582066,2582067],"Concrete":[2582272,2582273,2582274,2582275,2582276,2582277,2582278,2582279,2582280,2582281,2582282,2582283,2582284,2582285,2582286,2582287],"Concrete Powder":[2582576,2582577,2582578,2582579,2582580,2582581,2582582,2582583,2582584,2582585,2582586,2582587,2582588,2582589,2582590,2582591],"Copernicium":[2600444],"Copper":[2600600],"Copper Block":[2727976,2727977,2727978,2727979,2727980,2727981,2727982,2727983],"Copper Ore":[2724945],"Coral":[2582850,2582852,2582853,2582854,2582855,2582858,2582860,2582861,2582862,2582863],"Coral Block":[2583185,2583188,2583189,2583190,2583191,2583193,2583196,2583197,2583198,2583199],"Coral Fan":[2583523,2583524,2583525,2583526,2583527,2583531,2583532,2583533,2583534,2583535,2583539,2583540,2583541,2583542,2583543,2583547,2583548,2583549,2583550,2583551],"Cornflower":[2583696],"Cracked Deepslate Bricks":[2706413],"Cracked Deepslate Tiles":[2707692],"Cracked Nether Bricks":[2710722],"Cracked Polished Blackstone Bricks":[2703370],"Cracked Stone Bricks":[2584050],"Crafting Table":[2584268],"Crimson Button":[2717232,2717233,2717234,2717235,2717238,2717239,2717240,2717241,2717242,2717243,2717246,2717247],"Crimson Door":[2718784,2718785,2718786,2718787,2718788,2718789,2718790,2718791,2718792,2718793,2718794,2718795,2718796,2718797,2718798,2718799,2718800,2718801,2718802,2718803,2718804,2718805,2718806,2718807,2718808,2718809,2718810,2718811,2718812,2718813,2718814,2718815],"Crimson Fence":[2713497],"Crimson Fence Gate":[2719536,2719537,2719538,2719539,2719540,2719541,2719542,2719543,2719544,2719545,2719546,2719547,2719548,2719549,2719550,2719551],"Crimson Hyphae":[2715840,2715841,2715844,2715845,2715846,2715847],"Crimson Planks":[2712775],"Crimson Pressure Plate":[2717972,2717973],"Crimson Roots":[2741901],"Crimson Sign":[2721120,2721121,2721122,2721123,2721124,2721125,2721126,2721127,2721128,2721129,2721130,2721131,2721132,2721133,2721134,2721135],"Crimson Slab":[2714352,2714353,2714354],"Crimson Stairs":[2720312,2720313,2720314,2720315,2720316,2720317,2720318,2720319],"Crimson Stem":[2714970,2714971,2714972,2714973,2714974,2714975],"Crimson Trapdoor":[2716640,2716641,2716642,2716643,2716644,2716645,2716646,2716647,2716648,2716649,2716650,2716651,2716652,2716653,2716654,2716655],"Crimson Wall Sign":[2721840,2721841,2721842,2721843],"Crying Obsidian":[2727325],"Curium":[2600713],"Cut Copper Block":[2728328,2728329,2728330,2728331,2728332,2728333,2728334,2728335],"Cut Copper Slab Slab":[2728584,2728585,2728586,2728587,2728588,2728589,2728590,2728591,2728592,2728593,2728594,2728595,2728596,2728597,2728598,2728599,2728600,2728601,2728602,2728603,2728604,2728605,2728606,2728607],"Cut Copper Stairs":[2728896,2728897,2728898,2728899,2728900,2728901,2728902,2728903,2728904,2728905,2728906,2728907,2728908,2728909,2728910,2728911,2728912,2728913,2728914,2728915,2728916,2728917,2728918,2728919,2728920,2728921,2728922,2728923,2728924,2728925,2728926,2728927,2728928,2728929,2728930,2728931,2728932,2728933,2728934,2728935,2728936,2728937,2728938,2728939,2728940,2728941,2728942,2728943,2728944,2728945,2728946,2728947,2728948,2728949,2728950,2728951,2728952,2728953,2728954,2728955,2728956,2728957,2728958,2728959],"Cut Red Sandstone":[2584380],"Cut Red Sandstone Slab":[2584708,2584709,2584711],"Cut Sandstone":[2585059],"Cut Sandstone Slab":[2585332,2585333,2585334],"Dandelion":[2585688],"Dark Oak Button":[2586096,2586097,2586098,2586099,2586102,2586103,2586104,2586105,2586106,2586107,2586110,2586111],"Dark Oak Door":[2586336,2586337,2586338,2586339,2586340,2586341,2586342,2586343,2586344,2586345,2586346,2586347,2586348,2586349,2586350,2586351,2586352,2586353,2586354,2586355,2586356,2586357,2586358,2586359,2586360,2586361,2586362,2586363,2586364,2586365,2586366,2586367],"Dark Oak Fence":[2586561],"Dark Oak Fence Gate":[2586816,2586817,2586818,2586819,2586820,2586821,2586822,2586823,2586824,2586825,2586826,2586827,2586828,2586829,2586830,2586831],"Dark Oak Leaves":[2587056,2587057,2587058,2587059],"Dark Oak Log":[2587344,2587345,2587348,2587349,2587350,2587351],"Dark Oak Planks":[2587602],"Dark Oak Pressure Plate":[2587678,2587679],"Dark Oak Sapling":[2587910,2587911],"Dark Oak Sign":[2588384,2588385,2588386,2588387,2588388,2588389,2588390,2588391,2588392,2588393,2588394,2588395,2588396,2588397,2588398,2588399],"Dark Oak Slab":[2588624,2588625,2588626],"Dark Oak Stairs":[2588848,2588849,2588850,2588851,2588852,2588853,2588854,2588855],"Dark Oak Trapdoor":[2588992,2588993,2588994,2588995,2588996,2588997,2588998,2588999,2589000,2589001,2589002,2589003,2589004,2589005,2589006,2589007],"Dark Oak Wall Sign":[2589400,2589401,2589402,2589403],"Dark Oak Wood":[2589634,2589635,2589636,2589637,2589638,2589639],"Dark Prismarine":[2589812],"Dark Prismarine Slab":[2590000,2590002,2590003],"Dark Prismarine Stairs":[2590368,2590369,2590370,2590371,2590372,2590373,2590374,2590375],"Darmstadtium":[2601036],"Daylight Sensor":[2590656,2590657,2590658,2590659,2590660,2590661,2590662,2590663,2590664,2590665,2590666,2590667,2590668,2590669,2590670,2590671,2590672,2590673,2590674,2590675,2590676,2590677,2590678,2590679,2590680,2590681,2590682,2590683,2590684,2590685,2590686,2590687],"Dead Bush":[2590793],"Deepslate":[2705088,2705089,2705091],"Deepslate Brick Slab":[2705500,2705501,2705502],"Deepslate Brick Stairs":[2705720,2705721,2705722,2705723,2705724,2705725,2705726,2705727],"Deepslate Brick Wall":[2705920,2705921,2705922,2705923,2705924,2705925,2705926,2705927,2705928,2705929,2705930,2705931,2705932,2705933,2705934,2705935,2705936,2705937,2705938,2705939,2705940,2705941,2705942,2705943,2705944,2705945,2705946,2705947,2705948,2705949,2705950,2705951,2705952,2705953,2705954,2705955,2705956,2705957,2705958,2705959,2705960,2705961,2705962,2705963,2705964,2705965,2705966,2705967,2705968,2705969,2705970,2705971,2705972,2705973,2705974,2705975,2705976,2705977,2705978,2705979,2705980,2705981,2705982,2705983,2705985,2706000,2706001,2706002,2706003,2706004,2706005,2706006,2706007,2706008,2706009,2706010,2706011,2706012,2706013,2706014,2706015,2706048,2706049,2706050,2706051,2706052,2706053,2706054,2706055,2706056,2706057,2706058,2706059,2706060,2706061,2706062,2706063,2706064,2706065,2706066,2706067,2706068,2706069,2706070,2706071,2706072,2706073,2706074,2706075,2706076,2706077,2706078,2706079,2706080,2706081,2706082,2706083,2706084,2706085,2706086,2706087,2706088,2706089,2706090,2706091,2706092,2706093,2706094,2706095,2706096,2706097,2706098,2706099,2706100,2706101,2706102,2706103,2706104,2706105,2706106,2706107,2706108,2706109,2706110,2706111,2706113,2706128,2706129,2706130,2706131,2706132,2706133,2706134,2706135,2706136,2706137,2706138,2706139,2706140,2706141,2706142,2706143],"Deepslate Bricks":[2705385],"Deepslate Coal Ore":[2722829],"Deepslate Copper Ore":[2724725],"Deepslate Diamond Ore":[2723295],"Deepslate Emerald Ore":[2723497],"Deepslate Gold Ore":[2724424],"Deepslate Iron Ore":[2724301],"Deepslate Lapis Lazuli Ore":[2723822],"Deepslate Redstone Ore":[2723924,2723925],"Deepslate Tile Slab":[2706876,2706877,2706879],"Deepslate Tile Stairs":[2707184,2707185,2707186,2707187,2707188,2707189,2707190,2707191],"Deepslate Tile Wall":[2707232,2707233,2707234,2707235,2707236,2707237,2707238,2707239,2707240,2707241,2707242,2707243,2707244,2707245,2707246,2707247,2707250,2707264,2707265,2707266,2707267,2707268,2707269,2707270,2707271,2707272,2707273,2707274,2707275,2707276,2707277,2707278,2707279,2707280,2707281,2707282,2707283,2707284,2707285,2707286,2707287,2707288,2707289,2707290,2707291,2707292,2707293,2707294,2707295,2707296,2707297,2707298,2707299,2707300,2707301,2707302,2707303,2707304,2707305,2707306,2707307,2707308,2707309,2707310,2707311,2707312,2707313,2707314,2707315,2707316,2707317,2707318,2707319,2707320,2707321,2707322,2707323,2707324,2707325,2707326,2707327,2707360,2707361,2707362,2707363,2707364,2707365,2707366,2707367,2707368,2707369,2707370,2707371,2707372,2707373,2707374,2707375,2707378,2707392,2707393,2707394,2707395,2707396,2707397,2707398,2707399,2707400,2707401,2707402,2707403,2707404,2707405,2707406,2707407,2707408,2707409,2707410,2707411,2707412,2707413,2707414,2707415,2707416,2707417,2707418,2707419,2707420,2707421,2707422,2707423,2707424,2707425,2707426,2707427,2707428,2707429,2707430,2707431,2707432,2707433,2707434,2707435,2707436,2707437,2707438,2707439,2707440,2707441,2707442,2707443,2707444,2707445,2707446,2707447,2707448,2707449,2707450,2707451,2707452,2707453,2707454,2707455],"Deepslate Tiles":[2706669],"Detector Rail":[2591152,2591153,2591154,2591155,2591158,2591159,2591160,2591161,2591162,2591163,2591166,2591167],"Diamond Block":[2591282],"Diamond Ore":[2591690],"Diorite":[2591871],"Diorite Slab":[2592189,2592190,2592191],"Diorite Stairs":[2592432,2592433,2592434,2592435,2592436,2592437,2592438,2592439],"Diorite Wall":[2592544,2592545,2592546,2592547,2592548,2592549,2592550,2592551,2592552,2592553,2592554,2592555,2592556,2592557,2592558,2592559,2592561,2592576,2592577,2592578,2592579,2592580,2592581,2592582,2592583,2592584,2592585,2592586,2592587,2592588,2592589,2592590,2592591,2592592,2592593,2592594,2592595,2592596,2592597,2592598,2592599,2592600,2592601,2592602,2592603,2592604,2592605,2592606,2592607,2592608,2592609,2592610,2592611,2592612,2592613,2592614,2592615,2592616,2592617,2592618,2592619,2592620,2592621,2592622,2592623,2592624,2592625,2592626,2592627,2592628,2592629,2592630,2592631,2592632,2592633,2592634,2592635,2592636,2592637,2592638,2592639,2592672,2592673,2592674,2592675,2592676,2592677,2592678,2592679,2592680,2592681,2592682,2592683,2592684,2592685,2592686,2592687,2592689,2592704,2592705,2592706,2592707,2592708,2592709,2592710,2592711,2592712,2592713,2592714,2592715,2592716,2592717,2592718,2592719,2592720,2592721,2592722,2592723,2592724,2592725,2592726,2592727,2592728,2592729,2592730,2592731,2592732,2592733,2592734,2592735,2592736,2592737,2592738,2592739,2592740,2592741,2592742,2592743,2592744,2592745,2592746,2592747,2592748,2592749,2592750,2592751,2592752,2592753,2592754,2592755,2592756,2592757,2592758,2592759,2592760,2592761,2592762,2592763,2592764,2592765,2592766,2592767],"Dirt":[2592872,2592873,2592875],"Double Pitcher Crop":[2743664,2743665,2743666,2743667],"Double Tallgrass":[2593222,2593223],"Dragon Egg":[2593308],"Dried Kelp Block":[2593640],"Dubnium":[2601238],"Dyed Candle":[2729216,2729217,2729218,2729219,2729220,2729221,2729222,2729223,2729224,2729225,2729226,2729227,2729228,2729229,2729230,2729231,2729232,2729233,2729234,2729235,2729236,2729237,2729238,2729239,2729240,2729241,2729242,2729243,2729244,2729245,2729246,2729247,2729248,2729249,2729250,2729251,2729252,2729253,2729254,2729255,2729256,2729257,2729258,2729259,2729260,2729261,2729262,2729263,2729264,2729265,2729266,2729267,2729268,2729269,2729270,2729271,2729272,2729273,2729274,2729275,2729276,2729277,2729278,2729279,2729280,2729281,2729282,2729283,2729284,2729285,2729286,2729287,2729288,2729289,2729290,2729291,2729292,2729293,2729294,2729295,2729296,2729297,2729298,2729299,2729300,2729301,2729302,2729303,2729304,2729305,2729306,2729307,2729308,2729309,2729310,2729311,2729312,2729313,2729314,2729315,2729316,2729317,2729318,2729319,2729320,2729321,2729322,2729323,2729324,2729325,2729326,2729327,2729328,2729329,2729330,2729331,2729332,2729333,2729334,2729335,2729336,2729337,2729338,2729339,2729340,2729341,2729342,2729343],"Dyed Shulker Box":[2594016,2594017,2594018,2594019,2594020,2594021,2594022,2594023,2594024,2594025,2594026,2594027,2594028,2594029,2594030,2594031],"Dysprosium":[2601517],"Einsteinium":[2601881],"Element Constructor":[2600032,2600033,2600034,2600035],"Emerald Block":[2624812],"Emerald Ore":[2625136],"Enchanting Table":[2625512],"End Portal Frame":[2625616,2625617,2625618,2625619,2625620,2625621,2625622,2625623],"End Rod":[2625944,2625945,2625946,2625947,2625950,2625951],"End Stone":[2626067],"End Stone Brick Slab":[2626456,2626457,2626459],"End Stone Brick Stairs":[2626744,2626745,2626746,2626747,2626748,2626749,2626750,2626751],"End Stone Brick Wall":[2626853,2626864,2626865,2626866,2626867,2626868,2626869,2626870,2626871,2626872,2626873,2626874,2626875,2626876,2626877,2626878,2626879,2626880,2626881,2626882,2626883,2626884,2626885,2626886,2626887,2626888,2626889,2626890,2626891,2626892,2626893,2626894,2626895,2626896,2626897,2626898,2626899,2626900,2626901,2626902,2626903,2626904,2626905,2626906,2626907,2626908,2626909,2626910,2626911,2626912,2626913,2626914,2626915,2626916,2626917,2626918,2626919,2626920,2626921,2626922,2626923,2626924,2626925,2626926,2626927,2626928,2626929,2626930,2626931,2626932,2626933,2626934,2626935,2626936,2626937,2626938,2626939,2626940,2626941,2626942,2626943,2626981,2626992,2626993,2626994,2626995,2626996,2626997,2626998,2626999,2627000,2627001,2627002,2627003,2627004,2627005,2627006,2627007,2627008,2627009,2627010,2627011,2627012,2627013,2627014,2627015,2627016,2627017,2627018,2627019,2627020,2627021,2627022,2627023,2627024,2627025,2627026,2627027,2627028,2627029,2627030,2627031,2627032,2627033,2627034,2627035,2627036,2627037,2627038,2627039,2627040,2627041,2627042,2627043,2627044,2627045,2627046,2627047,2627048,2627049,2627050,2627051,2627052,2627053,2627054,2627055,2627056,2627057,2627058,2627059,2627060,2627061,2627062,2627063,2627064,2627065,2627066,2627067,2627068,2627069,2627070,2627071],"End Stone Bricks":[2627290],"Ender Chest":[2627340,2627341,2627342,2627343],"Erbium":[2602113],"Europium":[2602268],"Fake Wooden Slab":[2627665,2627666,2627667],"Farmland":[2627976,2627977,2627978,2627979,2627980,2627981,2627982,2627983],"Fermium":[2602504],"Fern":[2628125],"Fire Block":[2628464,2628465,2628466,2628467,2628468,2628469,2628470,2628471,2628472,2628473,2628474,2628475,2628476,2628477,2628478,2628479],"Flerovium":[2602826],"Fletching Table":[2628783],"Flower Pot":[2628913],"Flowering Azalea Leaves":[2736040,2736041,2736042,2736043],"Fluorine":[2603060],"Francium":[2603433],"Froglight":[2733953,2733954,2733955,2733957,2733958,2733959,2733961,2733962,2733963],"Frosted Ice":[2629188,2629189,2629190,2629191],"Furnace":[2629600,2629601,2629602,2629603,2629604,2629605,2629606,2629607],"Gadolinium":[2603633],"Gallium":[2603945],"Germanium":[2604261],"Gilded Blackstone":[2727654],"Glass":[2629881],"Glass Pane":[2630089],"Glazed Terracotta":[2697984,2697985,2697986,2697987,2697988,2697989,2697990,2697991,2697992,2697993,2697994,2697995,2697996,2697997,2697998,2697999,2698000,2698001,2698002,2698003,2698004,2698005,2698006,2698007,2698008,2698009,2698010,2698011,2698012,2698013,2698014,2698015,2698016,2698017,2698018,2698019,2698020,2698021,2698022,2698023,2698024,2698025,2698026,2698027,2698028,2698029,2698030,2698031,2698032,2698033,2698034,2698035,2698036,2698037,2698038,2698039,2698040,2698041,2698042,2698043,2698044,2698045,2698046,2698047],"Glow Item Frame":[2735312,2735313,2735316,2735317,2735318,2735319,2735320,2735321,2735324,2735325,2735326,2735327],"Glow Lichen":[2736768,2736769,2736770,2736771,2736772,2736773,2736774,2736775,2736776,2736777,2736778,2736779,2736780,2736781,2736782,2736783,2736784,2736785,2736786,2736787,2736788,2736789,2736790,2736791,2736792,2736793,2736794,2736795,2736796,2736797,2736798,2736799,2736800,2736801,2736802,2736803,2736804,2736805,2736806,2736807,2736808,2736809,2736810,2736811,2736812,2736813,2736814,2736815,2736816,2736817,2736818,2736819,2736820,2736821,2736822,2736823,2736824,2736825,2736826,2736827,2736828,2736829,2736830,2736831],"Glowing Obsidian":[2630228],"Glowstone":[2630568],"Gold":[2604408],"Gold Block":[2630824],"Gold Ore":[2631090],"Granite":[2631318],"Granite Slab":[2631496,2631497,2631498],"Granite Stairs":[2631752,2631753,2631754,2631755,2631756,2631757,2631758,2631759],"Granite Wall":[2631936,2631937,2631938,2631939,2631940,2631941,2631942,2631943,2631944,2631945,2631946,2631947,2631948,2631949,2631950,2631951,2631952,2631953,2631954,2631955,2631956,2631957,2631958,2631959,2631960,2631961,2631962,2631963,2631964,2631965,2631966,2631967,2631968,2631969,2631970,2631971,2631972,2631973,2631974,2631975,2631976,2631977,2631978,2631979,2631980,2631981,2631982,2631983,2631984,2631985,2631986,2631987,2631988,2631989,2631990,2631991,2631992,2631993,2631994,2631995,2631996,2631997,2631998,2631999,2632032,2632033,2632034,2632035,2632036,2632037,2632038,2632039,2632040,2632041,2632042,2632043,2632044,2632045,2632046,2632047,2632063,2632064,2632065,2632066,2632067,2632068,2632069,2632070,2632071,2632072,2632073,2632074,2632075,2632076,2632077,2632078,2632079,2632080,2632081,2632082,2632083,2632084,2632085,2632086,2632087,2632088,2632089,2632090,2632091,2632092,2632093,2632094,2632095,2632096,2632097,2632098,2632099,2632100,2632101,2632102,2632103,2632104,2632105,2632106,2632107,2632108,2632109,2632110,2632111,2632112,2632113,2632114,2632115,2632116,2632117,2632118,2632119,2632120,2632121,2632122,2632123,2632124,2632125,2632126,2632127,2632160,2632161,2632162,2632163,2632164,2632165,2632166,2632167,2632168,2632169,2632170,2632171,2632172,2632173,2632174,2632175,2632191],"Grass":[2632262],"Grass Path":[2632655],"Gravel":[2632760],"Green Torch":[2633657,2633658,2633659,2633660,2633661],"Hafnium":[2604728],"Hanging Roots":[2730490],"Hardened Clay":[2633814],"Hardened Glass":[2634187],"Hardened Glass Pane":[2634294],"Hassium":[2604858],"Hay Bale":[2634740,2634741,2634742],"Heat Block":[2578246],"Helium":[2605056],"Holmium":[2605555],"Honeycomb Block":[2722683],"Hopper":[2634976,2634977,2634981,2634982,2634983,2634984,2634985,2634989,2634990,2634991],"Hydrogen":[2605678],"Ice":[2635248],"Indium":[2606007],"Infested Chiseled Stone Brick":[2635303],"Infested Cobblestone":[2635729],"Infested Cracked Stone Brick":[2635915],"Infested Mossy Stone Brick":[2636099],"Infested Stone":[2636356],"Infested Stone Brick":[2636550],"Invisible Bedrock":[2637471],"Iodine":[2606214],"Iridium":[2606518],"Iron":[2606636],"Iron Bars":[2637842],"Iron Block":[2637750],"Iron Door":[2638208,2638209,2638210,2638211,2638212,2638213,2638214,2638215,2638216,2638217,2638218,2638219,2638220,2638221,2638222,2638223,2638224,2638225,2638226,2638227,2638228,2638229,2638230,2638231,2638232,2638233,2638234,2638235,2638236,2638237,2638238,2638239],"Iron Ore":[2638449],"Iron Trapdoor":[2638608,2638609,2638610,2638611,2638612,2638613,2638614,2638615,2638616,2638617,2638618,2638619,2638620,2638621,2638622,2638623],"Item Frame":[2638992,2638993,2638994,2638995,2638996,2638997,2639000,2639001,2639002,2639003,2639004,2639005],"Jack o'Lantern":[2647344,2647345,2647346,2647347],"Jukebox":[2639329],"Jungle Button":[2639456,2639457,2639458,2639459,2639460,2639461,2639464,2639465,2639466,2639467,2639468,2639469],"Jungle Door":[2639744,2639745,2639746,2639747,2639748,2639749,2639750,2639751,2639752,2639753,2639754,2639755,2639756,2639757,2639758,2639759,2639760,2639761,2639762,2639763,2639764,2639765,2639766,2639767,2639768,2639769,2639770,2639771,2639772,2639773,2639774,2639775],"Jungle Fence":[2639966],"Jungle Fence Gate":[2640224,2640225,2640226,2640227,2640228,2640229,2640230,2640231,2640232,2640233,2640234,2640235,2640236,2640237,2640238,2640239],"Jungle Leaves":[2640436,2640437,2640438,2640439],"Jungle Log":[2640640,2640641,2640642,2640643,2640646,2640647],"Jungle Planks":[2641093],"Jungle Pressure Plate":[2641284,2641285],"Jungle Sapling":[2641438,2641439],"Jungle Sign":[2641728,2641729,2641730,2641731,2641732,2641733,2641734,2641735,2641736,2641737,2641738,2641739,2641740,2641741,2641742,2641743],"Jungle Slab":[2642024,2642025,2642026],"Jungle Stairs":[2642424,2642425,2642426,2642427,2642428,2642429,2642430,2642431],"Jungle Trapdoor":[2642448,2642449,2642450,2642451,2642452,2642453,2642454,2642455,2642456,2642457,2642458,2642459,2642460,2642461,2642462,2642463],"Jungle Wall Sign":[2642740,2642741,2642742,2642743],"Jungle Wood":[2643080,2643081,2643084,2643085,2643086,2643087],"Krypton":[2606951],"Lab Table":[2643440,2643441,2643442,2643443],"Ladder":[2643512,2643513,2643514,2643515],"Lantern":[2643756,2643757],"Lanthanum":[2607257],"Lapis Lazuli Block":[2644008],"Lapis Lazuli Ore":[2644357],"Large Fern":[2644516,2644517],"Lava":[2644960,2644961,2644962,2644963,2644964,2644965,2644966,2644967,2644968,2644969,2644970,2644971,2644972,2644973,2644974,2644975,2644976,2644977,2644978,2644979,2644980,2644981,2644982,2644983,2644984,2644985,2644986,2644987,2644988,2644989,2644990,2644991],"Lava Cauldron":[2732152,2732153,2732154,2732155,2732156,2732157],"Lawrencium":[2607523],"Lead":[2607716],"Lectern":[2645160,2645161,2645162,2645163,2645164,2645165,2645166,2645167],"Legacy Stonecutter":[2645272],"Lever":[2645712,2645713,2645714,2645715,2645716,2645717,2645718,2645719,2645720,2645721,2645722,2645723,2645724,2645725,2645726,2645727],"Light Block":[2703840,2703841,2703842,2703843,2703844,2703845,2703846,2703847,2703848,2703849,2703850,2703851,2703852,2703853,2703854,2703855],"Lightning Rod":[2727810,2727811,2727812,2727813,2727814,2727815],"Lilac":[2646394,2646395],"Lily Pad":[2646943],"Lily of the Valley":[2646752],"Lithium":[2608039],"Livermorium":[2608214],"Loom":[2647644,2647645,2647646,2647647],"Lutetium":[2608593],"Magma Block":[2648248],"Magnesium":[2608675],"Manganese":[2608998],"Mangrove Button":[2717056,2717057,2717058,2717059,2717062,2717063,2717064,2717065,2717066,2717067,2717070,2717071],"Mangrove Door":[2718464,2718465,2718466,2718467,2718468,2718469,2718470,2718471,2718472,2718473,2718474,2718475,2718476,2718477,2718478,2718479,2718480,2718481,2718482,2718483,2718484,2718485,2718486,2718487,2718488,2718489,2718490,2718491,2718492,2718493,2718494,2718495],"Mangrove Fence":[2713251],"Mangrove Fence Gate":[2719264,2719265,2719266,2719267,2719268,2719269,2719270,2719271,2719272,2719273,2719274,2719275,2719276,2719277,2719278,2719279],"Mangrove Leaves":[2735556,2735557,2735558,2735559],"Mangrove Log":[2714648,2714649,2714650,2714651,2714654,2714655],"Mangrove Planks":[2712331],"Mangrove Pressure Plate":[2717754,2717755],"Mangrove Roots":[2733326],"Mangrove Sign":[2720800,2720801,2720802,2720803,2720804,2720805,2720806,2720807,2720808,2720809,2720810,2720811,2720812,2720813,2720814,2720815],"Mangrove Slab":[2713985,2713986,2713987],"Mangrove Stairs":[2720112,2720113,2720114,2720115,2720116,2720117,2720118,2720119],"Mangrove Trapdoor":[2716208,2716209,2716210,2716211,2716212,2716213,2716214,2716215,2716216,2716217,2716218,2716219,2716220,2716221,2716222,2716223],"Mangrove Wall Sign":[2721696,2721697,2721698,2721699],"Mangrove Wood":[2715402,2715403,2715404,2715405,2715406,2715407],"Material Reducer":[2648480,2648481,2648482,2648483],"Meitnerium":[2609245],"Melon Block":[2648739],"Melon Stem":[2648832,2648833,2648834,2648835,2648836,2648837,2648838,2648839,2648840,2648841,2648842,2648843,2648844,2648845,2648846,2648847,2648864,2648865,2648866,2648867,2648868,2648869,2648870,2648871,2648880,2648881,2648882,2648883,2648884,2648885,2648886,2648887,2648888,2648889,2648890,2648891,2648892,2648893,2648894,2648895],"Mendelevium":[2609489],"Mercury":[2609777],"Mob Head":[2649216,2649217,2649218,2649219,2649221,2649222,2649223,2649224,2649225,2649226,2649227,2649229,2649230,2649231,2649248,2649249,2649250,2649251,2649253,2649254,2649255,2649264,2649265,2649266,2649267,2649269,2649270,2649271,2649272,2649273,2649274,2649275,2649277,2649278,2649279],"Molybdenum":[2610097],"Monster Spawner":[2649402],"Moscovium":[2610378],"Mossy Cobblestone":[2649741],"Mossy Cobblestone Slab":[2650036,2650038,2650039],"Mossy Cobblestone Stairs":[2650248,2650249,2650250,2650251,2650252,2650253,2650254,2650255],"Mossy Cobblestone Wall":[2650368,2650369,2650370,2650371,2650372,2650373,2650374,2650375,2650376,2650377,2650378,2650379,2650380,2650381,2650382,2650383,2650384,2650385,2650386,2650387,2650388,2650389,2650390,2650391,2650392,2650393,2650394,2650395,2650396,2650397,2650398,2650399,2650400,2650401,2650402,2650403,2650404,2650405,2650406,2650407,2650408,2650409,2650410,2650411,2650412,2650413,2650414,2650415,2650416,2650417,2650418,2650419,2650420,2650421,2650422,2650423,2650424,2650425,2650426,2650427,2650428,2650429,2650430,2650431,2650432,2650433,2650434,2650435,2650436,2650437,2650438,2650439,2650440,2650441,2650442,2650443,2650444,2650445,2650446,2650447,2650450,2650496,2650497,2650498,2650499,2650500,2650501,2650502,2650503,2650504,2650505,2650506,2650507,2650508,2650509,2650510,2650511,2650512,2650513,2650514,2650515,2650516,2650517,2650518,2650519,2650520,2650521,2650522,2650523,2650524,2650525,2650526,2650527,2650528,2650529,2650530,2650531,2650532,2650533,2650534,2650535,2650536,2650537,2650538,2650539,2650540,2650541,2650542,2650543,2650544,2650545,2650546,2650547,2650548,2650549,2650550,2650551,2650552,2650553,2650554,2650555,2650556,2650557,2650558,2650559,2650560,2650561,2650562,2650563,2650564,2650565,2650566,2650567,2650568,2650569,2650570,2650571,2650572,2650573,2650574,2650575,2650578],"Mossy Stone Brick Slab":[2650856,2650857,2650859],"Mossy Stone Brick Stairs":[2650912,2650913,2650914,2650915,2650916,2650917,2650918,2650919],"Mossy Stone Brick Wall":[2651171,2651184,2651185,2651186,2651187,2651188,2651189,2651190,2651191,2651192,2651193,2651194,2651195,2651196,2651197,2651198,2651199,2651200,2651201,2651202,2651203,2651204,2651205,2651206,2651207,2651208,2651209,2651210,2651211,2651212,2651213,2651214,2651215,2651216,2651217,2651218,2651219,2651220,2651221,2651222,2651223,2651224,2651225,2651226,2651227,2651228,2651229,2651230,2651231,2651232,2651233,2651234,2651235,2651236,2651237,2651238,2651239,2651240,2651241,2651242,2651243,2651244,2651245,2651246,2651247,2651248,2651249,2651250,2651251,2651252,2651253,2651254,2651255,2651256,2651257,2651258,2651259,2651260,2651261,2651262,2651263,2651299,2651312,2651313,2651314,2651315,2651316,2651317,2651318,2651319,2651320,2651321,2651322,2651323,2651324,2651325,2651326,2651327,2651328,2651329,2651330,2651331,2651332,2651333,2651334,2651335,2651336,2651337,2651338,2651339,2651340,2651341,2651342,2651343,2651344,2651345,2651346,2651347,2651348,2651349,2651350,2651351,2651352,2651353,2651354,2651355,2651356,2651357,2651358,2651359,2651360,2651361,2651362,2651363,2651364,2651365,2651366,2651367,2651368,2651369,2651370,2651371,2651372,2651373,2651374,2651375,2651376,2651377,2651378,2651379,2651380,2651381,2651382,2651383,2651384,2651385,2651386,2651387,2651388,2651389,2651390,2651391],"Mossy Stone Bricks":[2651617],"Mud":[2725428],"Mud Brick Slab":[2726120,2726122,2726123],"Mud Brick Stairs":[2726152,2726153,2726154,2726155,2726156,2726157,2726158,2726159],"Mud Brick Wall":[2726414,2726416,2726417,2726418,2726419,2726420,2726421,2726422,2726423,2726424,2726425,2726426,2726427,2726428,2726429,2726430,2726431,2726464,2726465,2726466,2726467,2726468,2726469,2726470,2726471,2726472,2726473,2726474,2726475,2726476,2726477,2726478,2726479,2726480,2726481,2726482,2726483,2726484,2726485,2726486,2726487,2726488,2726489,2726490,2726491,2726492,2726493,2726494,2726495,2726496,2726497,2726498,2726499,2726500,2726501,2726502,2726503,2726504,2726505,2726506,2726507,2726508,2726509,2726510,2726511,2726512,2726513,2726514,2726515,2726516,2726517,2726518,2726519,2726520,2726521,2726522,2726523,2726524,2726525,2726526,2726527,2726542,2726544,2726545,2726546,2726547,2726548,2726549,2726550,2726551,2726552,2726553,2726554,2726555,2726556,2726557,2726558,2726559,2726592,2726593,2726594,2726595,2726596,2726597,2726598,2726599,2726600,2726601,2726602,2726603,2726604,2726605,2726606,2726607,2726608,2726609,2726610,2726611,2726612,2726613,2726614,2726615,2726616,2726617,2726618,2726619,2726620,2726621,2726622,2726623,2726624,2726625,2726626,2726627,2726628,2726629,2726630,2726631,2726632,2726633,2726634,2726635,2726636,2726637,2726638,2726639,2726640,2726641,2726642,2726643,2726644,2726645,2726646,2726647,2726648,2726649,2726650,2726651,2726652,2726653,2726654,2726655],"Mud Bricks":[2725644],"Muddy Mangrove Roots":[2733661,2733662,2733663],"Mushroom Stem":[2651775],"Mycelium":[2651923],"Neodymium":[2610514],"Neon":[2610826],"Neptunium":[2610990],"Nether Brick Fence":[2652231],"Nether Brick Slab":[2652416,2652417,2652419],"Nether Brick Stairs":[2652728,2652729,2652730,2652731,2652732,2652733,2652734,2652735],"Nether Brick Wall":[2652960,2652961,2652962,2652963,2652964,2652965,2652966,2652967,2652968,2652969,2652970,2652971,2652972,2652973,2652974,2652975,2652976,2652992,2652993,2652994,2652995,2652996,2652997,2652998,2652999,2653000,2653001,2653002,2653003,2653004,2653005,2653006,2653007,2653008,2653009,2653010,2653011,2653012,2653013,2653014,2653015,2653016,2653017,2653018,2653019,2653020,2653021,2653022,2653023,2653024,2653025,2653026,2653027,2653028,2653029,2653030,2653031,2653032,2653033,2653034,2653035,2653036,2653037,2653038,2653039,2653040,2653041,2653042,2653043,2653044,2653045,2653046,2653047,2653048,2653049,2653050,2653051,2653052,2653053,2653054,2653055,2653088,2653089,2653090,2653091,2653092,2653093,2653094,2653095,2653096,2653097,2653098,2653099,2653100,2653101,2653102,2653103,2653104,2653120,2653121,2653122,2653123,2653124,2653125,2653126,2653127,2653128,2653129,2653130,2653131,2653132,2653133,2653134,2653135,2653136,2653137,2653138,2653139,2653140,2653141,2653142,2653143,2653144,2653145,2653146,2653147,2653148,2653149,2653150,2653151,2653152,2653153,2653154,2653155,2653156,2653157,2653158,2653159,2653160,2653161,2653162,2653163,2653164,2653165,2653166,2653167,2653168,2653169,2653170,2653171,2653172,2653173,2653174,2653175,2653176,2653177,2653178,2653179,2653180,2653181,2653182,2653183],"Nether Bricks":[2653384],"Nether Gold Ore":[2725267],"Nether Portal":[2653688,2653689],"Nether Quartz Ore":[2653911],"Nether Reactor Core":[2654168],"Nether Wart":[2654340,2654341,2654342,2654343],"Nether Wart Block":[2654551],"Netherite Block":[2731038],"Netherrack":[2654902],"Nickel":[2611380],"Nihonium":[2611595],"Niobium":[2611854],"Nitrogen":[2612104],"Nobelium":[2612380],"Note Block":[2655190],"Oak Button":[2655248,2655249,2655252,2655253,2655254,2655255,2655256,2655257,2655260,2655261,2655262,2655263],"Oak Door":[2655488,2655489,2655490,2655491,2655492,2655493,2655494,2655495,2655496,2655497,2655498,2655499,2655500,2655501,2655502,2655503,2655504,2655505,2655506,2655507,2655508,2655509,2655510,2655511,2655512,2655513,2655514,2655515,2655516,2655517,2655518,2655519],"Oak Fence":[2655762],"Oak Fence Gate":[2656048,2656049,2656050,2656051,2656052,2656053,2656054,2656055,2656056,2656057,2656058,2656059,2656060,2656061,2656062,2656063],"Oak Leaves":[2656456,2656457,2656458,2656459],"Oak Log":[2656744,2656745,2656748,2656749,2656750,2656751],"Oak Planks":[2656848],"Oak Pressure Plate":[2657232,2657233],"Oak Sapling":[2657502,2657503],"Oak Sign":[2657664,2657665,2657666,2657667,2657668,2657669,2657670,2657671,2657672,2657673,2657674,2657675,2657676,2657677,2657678,2657679],"Oak Slab":[2658037,2658038,2658039],"Oak Stairs":[2658136,2658137,2658138,2658139,2658140,2658141,2658142,2658143],"Oak Trapdoor":[2658352,2658353,2658354,2658355,2658356,2658357,2658358,2658359,2658360,2658361,2658362,2658363,2658364,2658365,2658366,2658367],"Oak Wall Sign":[2658632,2658633,2658634,2658635],"Oak Wood":[2658906,2658907,2658908,2658909,2658910,2658911],"Obsidian":[2659231],"Oganesson":[2612732],"Orange Tulip":[2659739],"Osmium":[2612890],"Oxeye Daisy":[2659907],"Oxygen":[2613005],"Packed Ice":[2660280],"Packed Mud":[2726845],"Palladium":[2613267],"Peony":[2660372,2660373],"Phosphorus":[2613733],"Pink Petals":[2741648,2741649,2741650,2741651,2741652,2741653,2741654,2741655,2741656,2741657,2741658,2741659,2741660,2741661,2741662,2741663],"Pink Tulip":[2660949],"Pitcher Crop":[2743389,2743390,2743391],"Pitcher Plant":[2743082,2743083],"Platinum":[2613891],"Plutonium":[2614020],"Podzol":[2661333],"Polished Andesite":[2661619],"Polished Andesite Slab":[2661708,2661709,2661711],"Polished Andesite Stairs":[2661936,2661937,2661938,2661939,2661940,2661941,2661942,2661943],"Polished Basalt":[2699104,2699106,2699107],"Polished Blackstone":[2700544],"Polished Blackstone Brick Slab":[2702664,2702665,2702666],"Polished Blackstone Brick Stairs":[2703056,2703057,2703058,2703059,2703060,2703061,2703062,2703063],"Polished Blackstone Brick Wall":[2703104,2703105,2703106,2703107,2703108,2703109,2703110,2703111,2703112,2703113,2703114,2703115,2703116,2703117,2703118,2703119,2703120,2703121,2703122,2703123,2703124,2703125,2703126,2703127,2703128,2703129,2703130,2703131,2703132,2703133,2703134,2703135,2703136,2703137,2703138,2703139,2703140,2703141,2703142,2703143,2703144,2703145,2703146,2703147,2703148,2703149,2703150,2703151,2703152,2703153,2703154,2703155,2703156,2703157,2703158,2703159,2703160,2703161,2703162,2703163,2703164,2703165,2703166,2703167,2703168,2703184,2703185,2703186,2703187,2703188,2703189,2703190,2703191,2703192,2703193,2703194,2703195,2703196,2703197,2703198,2703199,2703232,2703233,2703234,2703235,2703236,2703237,2703238,2703239,2703240,2703241,2703242,2703243,2703244,2703245,2703246,2703247,2703248,2703249,2703250,2703251,2703252,2703253,2703254,2703255,2703256,2703257,2703258,2703259,2703260,2703261,2703262,2703263,2703264,2703265,2703266,2703267,2703268,2703269,2703270,2703271,2703272,2703273,2703274,2703275,2703276,2703277,2703278,2703279,2703280,2703281,2703282,2703283,2703284,2703285,2703286,2703287,2703288,2703289,2703290,2703291,2703292,2703293,2703294,2703295,2703296,2703312,2703313,2703314,2703315,2703316,2703317,2703318,2703319,2703320,2703321,2703322,2703323,2703324,2703325,2703326,2703327],"Polished Blackstone Bricks":[2702454],"Polished Blackstone Button":[2701040,2701041,2701042,2701043,2701044,2701045,2701048,2701049,2701050,2701051,2701052,2701053],"Polished Blackstone Pressure Plate":[2701220,2701221],"Polished Blackstone Slab":[2701428,2701429,2701430],"Polished Blackstone Stairs":[2701744,2701745,2701746,2701747,2701748,2701749,2701750,2701751],"Polished Blackstone Wall":[2701824,2701825,2701826,2701827,2701828,2701829,2701830,2701831,2701832,2701833,2701834,2701835,2701836,2701837,2701838,2701839,2701840,2701841,2701842,2701843,2701844,2701845,2701846,2701847,2701848,2701849,2701850,2701851,2701852,2701853,2701854,2701855,2701856,2701857,2701858,2701859,2701860,2701861,2701862,2701863,2701864,2701865,2701866,2701867,2701868,2701869,2701870,2701871,2701872,2701873,2701874,2701875,2701876,2701877,2701878,2701879,2701880,2701881,2701882,2701883,2701884,2701885,2701886,2701887,2701893,2701904,2701905,2701906,2701907,2701908,2701909,2701910,2701911,2701912,2701913,2701914,2701915,2701916,2701917,2701918,2701919,2701952,2701953,2701954,2701955,2701956,2701957,2701958,2701959,2701960,2701961,2701962,2701963,2701964,2701965,2701966,2701967,2701968,2701969,2701970,2701971,2701972,2701973,2701974,2701975,2701976,2701977,2701978,2701979,2701980,2701981,2701982,2701983,2701984,2701985,2701986,2701987,2701988,2701989,2701990,2701991,2701992,2701993,2701994,2701995,2701996,2701997,2701998,2701999,2702000,2702001,2702002,2702003,2702004,2702005,2702006,2702007,2702008,2702009,2702010,2702011,2702012,2702013,2702014,2702015,2702021,2702032,2702033,2702034,2702035,2702036,2702037,2702038,2702039,2702040,2702041,2702042,2702043,2702044,2702045,2702046,2702047],"Polished Deepslate":[2708955],"Polished Deepslate Slab":[2709068,2709070,2709071],"Polished Deepslate Stairs":[2709296,2709297,2709298,2709299,2709300,2709301,2709302,2709303],"Polished Deepslate Wall":[2709548,2709552,2709553,2709554,2709555,2709556,2709557,2709558,2709559,2709560,2709561,2709562,2709563,2709564,2709565,2709566,2709567,2709568,2709569,2709570,2709571,2709572,2709573,2709574,2709575,2709576,2709577,2709578,2709579,2709580,2709581,2709582,2709583,2709584,2709585,2709586,2709587,2709588,2709589,2709590,2709591,2709592,2709593,2709594,2709595,2709596,2709597,2709598,2709599,2709600,2709601,2709602,2709603,2709604,2709605,2709606,2709607,2709608,2709609,2709610,2709611,2709612,2709613,2709614,2709615,2709616,2709617,2709618,2709619,2709620,2709621,2709622,2709623,2709624,2709625,2709626,2709627,2709628,2709629,2709630,2709631,2709676,2709680,2709681,2709682,2709683,2709684,2709685,2709686,2709687,2709688,2709689,2709690,2709691,2709692,2709693,2709694,2709695,2709696,2709697,2709698,2709699,2709700,2709701,2709702,2709703,2709704,2709705,2709706,2709707,2709708,2709709,2709710,2709711,2709712,2709713,2709714,2709715,2709716,2709717,2709718,2709719,2709720,2709721,2709722,2709723,2709724,2709725,2709726,2709727,2709728,2709729,2709730,2709731,2709732,2709733,2709734,2709735,2709736,2709737,2709738,2709739,2709740,2709741,2709742,2709743,2709744,2709745,2709746,2709747,2709748,2709749,2709750,2709751,2709752,2709753,2709754,2709755,2709756,2709757,2709758,2709759],"Polished Diorite":[2662301],"Polished Diorite Slab":[2662512,2662514,2662515],"Polished Diorite Stairs":[2662736,2662737,2662738,2662739,2662740,2662741,2662742,2662743],"Polished Granite":[2663058],"Polished Granite Slab":[2663312,2663313,2663315],"Polished Granite Stairs":[2663568,2663569,2663570,2663571,2663572,2663573,2663574,2663575],"Polonium":[2614482],"Poppy":[2663844],"Potassium":[2614731],"Potato Block":[2664136,2664137,2664138,2664139,2664140,2664141,2664142,2664143],"Potion Cauldron":[2732432,2732433,2732434,2732435,2732436,2732437],"Powered Rail":[2664336,2664337,2664338,2664339,2664342,2664343,2664344,2664345,2664346,2664347,2664350,2664351],"Praseodymium":[2614802],"Prismarine":[2664586],"Prismarine Bricks":[2664928],"Prismarine Bricks Slab":[2665044,2665046,2665047],"Prismarine Bricks Stairs":[2665456,2665457,2665458,2665459,2665460,2665461,2665462,2665463],"Prismarine Slab":[2665496,2665497,2665499],"Prismarine Stairs":[2665944,2665945,2665946,2665947,2665948,2665949,2665950,2665951],"Prismarine Wall":[2665984,2665985,2665986,2665987,2665988,2665989,2665990,2665991,2665992,2665993,2665994,2665995,2665996,2665997,2665998,2665999,2666000,2666001,2666002,2666003,2666004,2666005,2666006,2666007,2666008,2666009,2666010,2666011,2666012,2666013,2666014,2666015,2666016,2666017,2666018,2666019,2666020,2666021,2666022,2666023,2666024,2666025,2666026,2666027,2666028,2666029,2666030,2666031,2666032,2666033,2666034,2666035,2666036,2666037,2666038,2666039,2666040,2666041,2666042,2666043,2666044,2666045,2666046,2666047,2666086,2666096,2666097,2666098,2666099,2666100,2666101,2666102,2666103,2666104,2666105,2666106,2666107,2666108,2666109,2666110,2666111,2666112,2666113,2666114,2666115,2666116,2666117,2666118,2666119,2666120,2666121,2666122,2666123,2666124,2666125,2666126,2666127,2666128,2666129,2666130,2666131,2666132,2666133,2666134,2666135,2666136,2666137,2666138,2666139,2666140,2666141,2666142,2666143,2666144,2666145,2666146,2666147,2666148,2666149,2666150,2666151,2666152,2666153,2666154,2666155,2666156,2666157,2666158,2666159,2666160,2666161,2666162,2666163,2666164,2666165,2666166,2666167,2666168,2666169,2666170,2666171,2666172,2666173,2666174,2666175,2666214,2666224,2666225,2666226,2666227,2666228,2666229,2666230,2666231,2666232,2666233,2666234,2666235,2666236,2666237,2666238,2666239],"Promethium":[2615041],"Protactinium":[2615321],"Pumpkin":[2666408],"Pumpkin Stem":[2666704,2666705,2666706,2666707,2666708,2666709,2666710,2666711,2666712,2666713,2666714,2666715,2666716,2666717,2666718,2666719,2666720,2666721,2666722,2666723,2666724,2666725,2666726,2666727,2666728,2666729,2666730,2666731,2666732,2666733,2666734,2666735,2666736,2666737,2666738,2666739,2666740,2666741,2666742,2666743],"Purple Torch":[2667018,2667019,2667020,2667021,2667022],"Purpur Block":[2667467],"Purpur Pillar":[2667649,2667650,2667651],"Purpur Slab":[2667944,2667945,2667946],"Purpur Stairs":[2668208,2668209,2668210,2668211,2668212,2668213,2668214,2668215],"Quartz Block":[2668351],"Quartz Bricks":[2709837],"Quartz Pillar":[2668756,2668757,2668759],"Quartz Slab":[2668896,2668897,2668899],"Quartz Stairs":[2669256,2669257,2669258,2669259,2669260,2669261,2669262,2669263],"Radium":[2615578],"Radon":[2615978],"Rail":[2669510,2669511,2669512,2669513,2669514,2669515,2669516,2669517,2669518,2669519],"Raw Copper Block":[2703999],"Raw Gold Block":[2704169],"Raw Iron Block":[2704423],"Red Mushroom":[2670074],"Red Mushroom Block":[2670289,2670290,2670291,2670296,2670297,2670298,2670299,2670300,2670301,2670302,2670303],"Red Nether Brick Slab":[2670564,2670566,2670567],"Red Nether Brick Stairs":[2670728,2670729,2670730,2670731,2670732,2670733,2670734,2670735],"Red Nether Brick Wall":[2670848,2670849,2670850,2670851,2670852,2670853,2670854,2670855,2670856,2670857,2670858,2670859,2670860,2670861,2670862,2670863,2670864,2670865,2670866,2670867,2670868,2670869,2670870,2670871,2670872,2670873,2670874,2670875,2670876,2670877,2670878,2670879,2670880,2670881,2670882,2670883,2670884,2670885,2670886,2670887,2670888,2670889,2670890,2670891,2670892,2670893,2670894,2670895,2670896,2670897,2670898,2670899,2670900,2670901,2670902,2670903,2670904,2670905,2670906,2670907,2670908,2670909,2670910,2670911,2670912,2670928,2670929,2670930,2670931,2670932,2670933,2670934,2670935,2670936,2670937,2670938,2670939,2670940,2670941,2670942,2670943,2670976,2670977,2670978,2670979,2670980,2670981,2670982,2670983,2670984,2670985,2670986,2670987,2670988,2670989,2670990,2670991,2670992,2670993,2670994,2670995,2670996,2670997,2670998,2670999,2671000,2671001,2671002,2671003,2671004,2671005,2671006,2671007,2671008,2671009,2671010,2671011,2671012,2671013,2671014,2671015,2671016,2671017,2671018,2671019,2671020,2671021,2671022,2671023,2671024,2671025,2671026,2671027,2671028,2671029,2671030,2671031,2671032,2671033,2671034,2671035,2671036,2671037,2671038,2671039,2671040,2671056,2671057,2671058,2671059,2671060,2671061,2671062,2671063,2671064,2671065,2671066,2671067,2671068,2671069,2671070,2671071],"Red Nether Bricks":[2671192],"Red Sand":[2671467],"Red Sandstone":[2671858],"Red Sandstone Slab":[2671948,2671949,2671950],"Red Sandstone Stairs":[2672360,2672361,2672362,2672363,2672364,2672365,2672366,2672367],"Red Sandstone Wall":[2672384,2672385,2672386,2672387,2672388,2672389,2672390,2672391,2672392,2672393,2672394,2672395,2672396,2672397,2672398,2672399,2672415,2672448,2672449,2672450,2672451,2672452,2672453,2672454,2672455,2672456,2672457,2672458,2672459,2672460,2672461,2672462,2672463,2672464,2672465,2672466,2672467,2672468,2672469,2672470,2672471,2672472,2672473,2672474,2672475,2672476,2672477,2672478,2672479,2672480,2672481,2672482,2672483,2672484,2672485,2672486,2672487,2672488,2672489,2672490,2672491,2672492,2672493,2672494,2672495,2672496,2672497,2672498,2672499,2672500,2672501,2672502,2672503,2672504,2672505,2672506,2672507,2672508,2672509,2672510,2672511,2672512,2672513,2672514,2672515,2672516,2672517,2672518,2672519,2672520,2672521,2672522,2672523,2672524,2672525,2672526,2672527,2672543,2672576,2672577,2672578,2672579,2672580,2672581,2672582,2672583,2672584,2672585,2672586,2672587,2672588,2672589,2672590,2672591,2672592,2672593,2672594,2672595,2672596,2672597,2672598,2672599,2672600,2672601,2672602,2672603,2672604,2672605,2672606,2672607,2672608,2672609,2672610,2672611,2672612,2672613,2672614,2672615,2672616,2672617,2672618,2672619,2672620,2672621,2672622,2672623,2672624,2672625,2672626,2672627,2672628,2672629,2672630,2672631,2672632,2672633,2672634,2672635,2672636,2672637,2672638,2672639],"Red Torch":[2672754,2672755,2672756,2672757,2672759],"Red Tulip":[2673099],"Redstone":[2674800,2674801,2674802,2674803,2674804,2674805,2674806,2674807,2674808,2674809,2674810,2674811,2674812,2674813,2674814,2674815],"Redstone Block":[2673334],"Redstone Comparator":[2673536,2673537,2673538,2673539,2673540,2673541,2673542,2673543,2673544,2673545,2673546,2673547,2673548,2673549,2673550,2673551],"Redstone Lamp":[2673716,2673717],"Redstone Ore":[2674064,2674065],"Redstone Repeater":[2674208,2674209,2674210,2674211,2674212,2674213,2674214,2674215,2674216,2674217,2674218,2674219,2674220,2674221,2674222,2674223,2674224,2674225,2674226,2674227,2674228,2674229,2674230,2674231,2674232,2674233,2674234,2674235,2674236,2674237,2674238,2674239],"Redstone Torch":[2674449,2674450,2674451,2674452,2674453,2674457,2674458,2674459,2674460,2674461],"Reinforced Deepslate":[2736204],"Rhenium":[2616206],"Rhodium":[2616344],"Roentgenium":[2616649],"Rose Bush":[2675240,2675241],"Rubidium":[2617054],"Ruthenium":[2617239],"Rutherfordium":[2617506],"Samarium":[2617838],"Sand":[2675615],"Sandstone":[2675846],"Sandstone Slab":[2676069,2676070,2676071],"Sandstone Stairs":[2676280,2676281,2676282,2676283,2676284,2676285,2676286,2676287],"Sandstone Wall":[2676480,2676481,2676482,2676483,2676484,2676485,2676486,2676487,2676488,2676489,2676490,2676491,2676492,2676493,2676494,2676495,2676496,2676497,2676498,2676499,2676500,2676501,2676502,2676503,2676504,2676505,2676506,2676507,2676508,2676509,2676510,2676511,2676512,2676513,2676514,2676515,2676516,2676517,2676518,2676519,2676520,2676521,2676522,2676523,2676524,2676525,2676526,2676527,2676528,2676529,2676530,2676531,2676532,2676533,2676534,2676535,2676536,2676537,2676538,2676539,2676540,2676541,2676542,2676543,2676544,2676545,2676546,2676547,2676548,2676549,2676550,2676551,2676552,2676553,2676554,2676555,2676556,2676557,2676558,2676559,2676567,2676608,2676609,2676610,2676611,2676612,2676613,2676614,2676615,2676616,2676617,2676618,2676619,2676620,2676621,2676622,2676623,2676624,2676625,2676626,2676627,2676628,2676629,2676630,2676631,2676632,2676633,2676634,2676635,2676636,2676637,2676638,2676639,2676640,2676641,2676642,2676643,2676644,2676645,2676646,2676647,2676648,2676649,2676650,2676651,2676652,2676653,2676654,2676655,2676656,2676657,2676658,2676659,2676660,2676661,2676662,2676663,2676664,2676665,2676666,2676667,2676668,2676669,2676670,2676671,2676672,2676673,2676674,2676675,2676676,2676677,2676678,2676679,2676680,2676681,2676682,2676683,2676684,2676685,2676686,2676687,2676695],"Scandium":[2618051],"Sculk":[2735063],"Sea Lantern":[2676975],"Sea Pickle":[2677120,2677121,2677122,2677123,2677124,2677125,2677126,2677127],"Seaborgium":[2618158],"Selenium":[2618595],"Shroomlight":[2712156],"Shulker Box":[2677267],"Silicon":[2618823],"Silver":[2618883],"Slime Block":[2677570],"Small Dripleaf":[2740888,2740889,2740890,2740891,2740892,2740893,2740894,2740895],"Smithing Table":[2730807],"Smoker":[2677856,2677857,2677858,2677859,2677860,2677861,2677862,2677863],"Smooth Basalt":[2699389],"Smooth Quartz Block":[2678217],"Smooth Quartz Slab":[2678360,2678361,2678362],"Smooth Quartz Stairs":[2678528,2678529,2678530,2678531,2678532,2678533,2678534,2678535],"Smooth Red Sandstone":[2678812],"Smooth Red Sandstone Slab":[2679085,2679086,2679087],"Smooth Red Sandstone Stairs":[2679320,2679321,2679322,2679323,2679324,2679325,2679326,2679327],"Smooth Sandstone":[2679586],"Smooth Sandstone Slab":[2679961,2679962,2679963],"Smooth Sandstone Stairs":[2680304,2680305,2680306,2680307,2680308,2680309,2680310,2680311],"Smooth Stone":[2680534],"Smooth Stone Slab":[2680648,2680649,2680651],"Snow Block":[2681036],"Snow Layer":[2681096,2681097,2681098,2681099,2681100,2681101,2681102,2681103],"Sodium":[2619314],"Soul Fire":[2711944],"Soul Lantern":[2711536,2711537],"Soul Sand":[2681478],"Soul Soil":[2711638],"Soul Torch":[2711144,2711145,2711148,2711150,2711151],"Sponge":[2681812,2681813],"Spore Blossom":[2731516],"Spruce Button":[2681904,2681905,2681906,2681907,2681908,2681909,2681912,2681913,2681914,2681915,2681916,2681917],"Spruce Door":[2682336,2682337,2682338,2682339,2682340,2682341,2682342,2682343,2682344,2682345,2682346,2682347,2682348,2682349,2682350,2682351,2682352,2682353,2682354,2682355,2682356,2682357,2682358,2682359,2682360,2682361,2682362,2682363,2682364,2682365,2682366,2682367],"Spruce Fence":[2682543],"Spruce Fence Gate":[2682864,2682865,2682866,2682867,2682868,2682869,2682870,2682871,2682872,2682873,2682874,2682875,2682876,2682877,2682878,2682879],"Spruce Leaves":[2682984,2682985,2682986,2682987],"Spruce Log":[2683256,2683257,2683260,2683261,2683262,2683263],"Spruce Planks":[2683538],"Spruce Pressure Plate":[2683658,2683659],"Spruce Sapling":[2683996,2683997],"Spruce Sign":[2684304,2684305,2684306,2684307,2684308,2684309,2684310,2684311,2684312,2684313,2684314,2684315,2684316,2684317,2684318,2684319],"Spruce Slab":[2684648,2684649,2684650],"Spruce Stairs":[2684752,2684753,2684754,2684755,2684756,2684757,2684758,2684759],"Spruce Trapdoor":[2684976,2684977,2684978,2684979,2684980,2684981,2684982,2684983,2684984,2684985,2684986,2684987,2684988,2684989,2684990,2684991],"Spruce Wall Sign":[2685424,2685425,2685426,2685427],"Spruce Wood":[2685552,2685553,2685554,2685555,2685558,2685559],"Stained Clay":[2685760,2685761,2685762,2685763,2685764,2685765,2685766,2685767,2685768,2685769,2685770,2685771,2685772,2685773,2685774,2685775],"Stained Glass":[2686128,2686129,2686130,2686131,2686132,2686133,2686134,2686135,2686136,2686137,2686138,2686139,2686140,2686141,2686142,2686143],"Stained Glass Pane":[2686336,2686337,2686338,2686339,2686340,2686341,2686342,2686343,2686344,2686345,2686346,2686347,2686348,2686349,2686350,2686351],"Stained Hardened Glass":[2686480,2686481,2686482,2686483,2686484,2686485,2686486,2686487,2686488,2686489,2686490,2686491,2686492,2686493,2686494,2686495],"Stained Hardened Glass Pane":[2686816,2686817,2686818,2686819,2686820,2686821,2686822,2686823,2686824,2686825,2686826,2686827,2686828,2686829,2686830,2686831],"Stone":[2687220],"Stone Brick Slab":[2687324,2687325,2687326],"Stone Brick Stairs":[2687576,2687577,2687578,2687579,2687580,2687581,2687582,2687583],"Stone Brick Wall":[2687744,2687745,2687746,2687747,2687748,2687749,2687750,2687751,2687752,2687753,2687754,2687755,2687756,2687757,2687758,2687759,2687773,2687808,2687809,2687810,2687811,2687812,2687813,2687814,2687815,2687816,2687817,2687818,2687819,2687820,2687821,2687822,2687823,2687824,2687825,2687826,2687827,2687828,2687829,2687830,2687831,2687832,2687833,2687834,2687835,2687836,2687837,2687838,2687839,2687840,2687841,2687842,2687843,2687844,2687845,2687846,2687847,2687848,2687849,2687850,2687851,2687852,2687853,2687854,2687855,2687856,2687857,2687858,2687859,2687860,2687861,2687862,2687863,2687864,2687865,2687866,2687867,2687868,2687869,2687870,2687871,2687872,2687873,2687874,2687875,2687876,2687877,2687878,2687879,2687880,2687881,2687882,2687883,2687884,2687885,2687886,2687887,2687901,2687936,2687937,2687938,2687939,2687940,2687941,2687942,2687943,2687944,2687945,2687946,2687947,2687948,2687949,2687950,2687951,2687952,2687953,2687954,2687955,2687956,2687957,2687958,2687959,2687960,2687961,2687962,2687963,2687964,2687965,2687966,2687967,2687968,2687969,2687970,2687971,2687972,2687973,2687974,2687975,2687976,2687977,2687978,2687979,2687980,2687981,2687982,2687983,2687984,2687985,2687986,2687987,2687988,2687989,2687990,2687991,2687992,2687993,2687994,2687995,2687996,2687997,2687998,2687999],"Stone Bricks":[2688134],"Stone Button":[2688384,2688385,2688386,2688387,2688390,2688391,2688392,2688393,2688394,2688395,2688398,2688399],"Stone Pressure Plate":[2688516,2688517],"Stone Slab":[2688849,2688850,2688851],"Stone Stairs":[2689024,2689025,2689026,2689027,2689028,2689029,2689030,2689031],"Stonecutter":[2689512,2689513,2689514,2689515],"Strontium":[2619420],"Sugarcane":[2692608,2692609,2692610,2692611,2692612,2692613,2692614,2692615,2692616,2692617,2692618,2692619,2692620,2692621,2692622,2692623],"Sulfur":[2619764],"Sunflower":[2692922,2692923],"Sweet Berry Bush":[2693156,2693157,2693158,2693159],"TNT":[2693812,2693813,2693814,2693815],"Tall Grass":[2693586],"Tantalum":[2620091],"Technetium":[2620391],"Tellurium":[2620512],"Tennessine":[2620797],"Terbium":[2621111],"Thallium":[2621248],"Thorium":[2621635],"Thulium":[2621706],"Tin":[2621963],"Tinted Glass":[2722326],"Titanium":[2622431],"Torch":[2694042,2694043,2694044,2694045,2694047],"Torchflower":[2742639],"Torchflower Crop":[2743028,2743029],"Trapped Chest":[2694232,2694233,2694234,2694235],"Tripwire":[2694640,2694641,2694642,2694643,2694644,2694645,2694646,2694647,2694648,2694649,2694650,2694651,2694652,2694653,2694654,2694655],"Tripwire Hook":[2694880,2694881,2694882,2694883,2694884,2694885,2694886,2694887,2694888,2694889,2694890,2694891,2694892,2694893,2694894,2694895],"Tuff":[2710882],"Tungsten":[2622683],"Twisting Vines":[2734080,2734081,2734082,2734083,2734084,2734085,2734086,2734087,2734088,2734089,2734090,2734091,2734092,2734093,2734094,2734095,2734096,2734097,2734104,2734105,2734106,2734107,2734108,2734109,2734110,2734111],"Underwater Torch":[2695096,2695097,2695100,2695102,2695103],"Uranium":[2622970],"Vanadium":[2623035],"Vines":[2695168,2695169,2695170,2695171,2695172,2695173,2695174,2695175,2695176,2695177,2695178,2695179,2695180,2695181,2695182,2695183],"Wall Banner":[2695424,2695425,2695426,2695427,2695428,2695429,2695430,2695431,2695432,2695433,2695434,2695435,2695436,2695437,2695438,2695439,2695440,2695441,2695442,2695443,2695444,2695445,2695446,2695447,2695448,2695449,2695450,2695451,2695452,2695453,2695454,2695455,2695456,2695457,2695458,2695459,2695460,2695461,2695462,2695463,2695464,2695465,2695466,2695467,2695468,2695469,2695470,2695471,2695472,2695473,2695474,2695475,2695476,2695477,2695478,2695479,2695480,2695481,2695482,2695483,2695484,2695485,2695486,2695487],"Wall Coral Fan":[2695744,2695748,2695749,2695750,2695751,2695752,2695756,2695757,2695758,2695759,2695760,2695764,2695765,2695766,2695767,2695768,2695772,2695773,2695774,2695775,2695776,2695780,2695781,2695782,2695783,2695784,2695788,2695789,2695790,2695791,2695792,2695796,2695797,2695798,2695799,2695800,2695804,2695805,2695806,2695807],"Warped Button":[2717680,2717681,2717684,2717685,2717686,2717687,2717688,2717689,2717692,2717693,2717694,2717695],"Warped Door":[2719072,2719073,2719074,2719075,2719076,2719077,2719078,2719079,2719080,2719081,2719082,2719083,2719084,2719085,2719086,2719087,2719088,2719089,2719090,2719091,2719092,2719093,2719094,2719095,2719096,2719097,2719098,2719099,2719100,2719101,2719102,2719103],"Warped Fence":[2713754],"Warped Fence Gate":[2719872,2719873,2719874,2719875,2719876,2719877,2719878,2719879,2719880,2719881,2719882,2719883,2719884,2719885,2719886,2719887],"Warped Hyphae":[2716136,2716137,2716140,2716141,2716142,2716143],"Warped Planks":[2712965],"Warped Pressure Plate":[2718280,2718281],"Warped Roots":[2742193],"Warped Sign":[2721328,2721329,2721330,2721331,2721332,2721333,2721334,2721335,2721336,2721337,2721338,2721339,2721340,2721341,2721342,2721343],"Warped Slab":[2714460,2714462,2714463],"Warped Stairs":[2720552,2720553,2720554,2720555,2720556,2720557,2720558,2720559],"Warped Stem":[2715288,2715289,2715292,2715293,2715294,2715295],"Warped Trapdoor":[2716816,2716817,2716818,2716819,2716820,2716821,2716822,2716823,2716824,2716825,2716826,2716827,2716828,2716829,2716830,2716831],"Warped Wall Sign":[2722096,2722097,2722098,2722099],"Warped Wart Block":[2726917],"Water":[2696032,2696033,2696034,2696035,2696036,2696037,2696038,2696039,2696040,2696041,2696042,2696043,2696044,2696045,2696046,2696047,2696048,2696049,2696050,2696051,2696052,2696053,2696054,2696055,2696056,2696057,2696058,2696059,2696060,2696061,2696062,2696063],"Water Cauldron":[2731792,2731793,2731794,2731795,2731798,2731799],"Weeping Vines":[2734464,2734465,2734466,2734467,2734468,2734469,2734470,2734471,2734472,2734473,2734474,2734475,2734476,2734477,2734478,2734479,2734480,2734481,2734482,2734483,2734484,2734485,2734486,2734487,2734494,2734495],"Weighted Pressure Plate Heavy":[2696432,2696433,2696434,2696435,2696436,2696437,2696438,2696439,2696440,2696441,2696442,2696443,2696444,2696445,2696446,2696447],"Weighted Pressure Plate Light":[2696512,2696513,2696514,2696515,2696516,2696517,2696518,2696519,2696520,2696521,2696522,2696523,2696524,2696525,2696526,2696527],"Wheat Block":[2696832,2696833,2696834,2696835,2696836,2696837,2696838,2696839],"White Tulip":[2697468],"Wither Rose":[2730127],"Wool":[2697712,2697713,2697714,2697715,2697716,2697717,2697718,2697719,2697720,2697721,2697722,2697723,2697724,2697725,2697726,2697727],"Xenon":[2623487],"Ytterbium":[2623729],"Yttrium":[2623770],"Zinc":[2624344],"Zirconium":[2624538],"ate!upd":[2637070],"reserved6":[2675188],"update!":[2636948]},"stateDataBits":8} \ No newline at end of file From 7f3de835e4c53faf11cbfce4ead42cbbfbe4bb03 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 17 Oct 2023 15:23:39 +0100 Subject: [PATCH 07/39] Block: private internal function --- src/block/Block.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/block/Block.php b/src/block/Block.php index a81b15211..a8b370cc7 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -95,7 +95,7 @@ class Block{ * The type ID is included in the XOR mask. This is not necessary to improve distribution, but it reduces the number * of operations required to compute the state ID (micro optimization). */ - public static function computeStateIdXorMask(int $typeId) : int{ + private static function computeStateIdXorMask(int $typeId) : int{ return $typeId << self::INTERNAL_STATE_DATA_BITS | (Binary::readLong(hash('xxh3', Binary::writeLLong($typeId), binary: true)) & self::INTERNAL_STATE_DATA_MASK); From 48dcf0e32c75067b187864de372b9a76548f46c4 Mon Sep 17 00:00:00 2001 From: Dylan T Date: Tue, 17 Oct 2023 16:25:13 +0100 Subject: [PATCH 08/39] Farmland: Remember relative location of nearby water in blockstate data (#6090) Farmland can end up scanning up to 162 blocks looking for water in the worst case. This is obviously not great for huge farms where there are thousands of blocks of the stuff. In most farms, the water won't be moved, and nor will the farmland. This means that we can avoid this costly search on random updates. This PR implements a cache using blockstate data (only possible in PM5) which stores an index mapping to a coordinate offset where water was previously found by this farmland block. This allows the farmland to avoid water searching entirely in most cases. This is a colossal improvement as compared to scanning the whole 9x2x9 area every time, which, on average, scans about 40 blocks to find water if the water is at the same Y coordinate. In real terms this translates into about a 8x performance improvement for farmland (see timings below). --- src/block/Block.php | 2 +- src/block/Farmland.php | 88 +++++++++++++++++-- .../block_factory_consistency_check.json | 2 +- .../BlockSerializerDeserializerTest.php | 3 + 4 files changed, 86 insertions(+), 9 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index a8b370cc7..189c0419d 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -61,7 +61,7 @@ use function hash; use const PHP_INT_MAX; class Block{ - public const INTERNAL_STATE_DATA_BITS = 8; + public const INTERNAL_STATE_DATA_BITS = 11; public const INTERNAL_STATE_DATA_MASK = ~(~0 << self::INTERNAL_STATE_DATA_BITS); /** diff --git a/src/block/Farmland.php b/src/block/Farmland.php index 70a6eeba7..c2694dd83 100644 --- a/src/block/Farmland.php +++ b/src/block/Farmland.php @@ -31,15 +31,40 @@ use pocketmine\event\entity\EntityTrampleFarmlandEvent; use pocketmine\item\Item; use pocketmine\math\AxisAlignedBB; use pocketmine\math\Facing; +use function intdiv; use function lcg_value; class Farmland extends Transparent{ public const MAX_WETNESS = 7; + private const WATER_SEARCH_HORIZONTAL_LENGTH = 9; + + private const WATER_SEARCH_VERTICAL_LENGTH = 2; + + private const WATER_POSITION_INDEX_UNKNOWN = -1; + /** Total possible options for water X/Z indexes */ + private const WATER_POSITION_INDICES_TOTAL = (self::WATER_SEARCH_HORIZONTAL_LENGTH ** 2) * 2; + protected int $wetness = 0; //"moisture" blockstate property in PC + /** + * Cached value indicating the relative coordinates of the most recently found water block. + * + * If this is set to a non-unknown value, the farmland block will check the relative coordinates indicated by + * this value for water, before searching the entire 9x2x9 grid around the farmland. This significantly benefits + * hydrating or fully hydrated farmland, avoiding the need for costly searches on every random tick. + * + * If the coordinates indicated don't contain water, the full 9x2x9 volume will be searched as before. A new index + * will be recorded if water is found, otherwise it will be set to unknown and future searches will search the full + * 9x2x9 volume again. + * + * This property is not exposed to the API or saved on disk. It is only used by PocketMine-MP at runtime as a cache. + */ + private int $waterPositionIndex = self::WATER_POSITION_INDEX_UNKNOWN; + protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{ $w->boundedIntAuto(0, self::MAX_WETNESS, $this->wetness); + $w->boundedIntAuto(-1, self::WATER_POSITION_INDICES_TOTAL - 1, $this->waterPositionIndex); } public function getWetness() : int{ return $this->wetness; } @@ -53,6 +78,22 @@ class Farmland extends Transparent{ return $this; } + /** + * @internal + */ + public function getWaterPositionIndex() : int{ return $this->waterPositionIndex; } + + /** + * @internal + */ + public function setWaterPositionIndex(int $waterPositionIndex) : self{ + if($waterPositionIndex < -1 || $waterPositionIndex >= self::WATER_POSITION_INDICES_TOTAL){ + throw new \InvalidArgumentException("Water XZ index must be in range -1 ... " . (self::WATER_POSITION_INDICES_TOTAL - 1)); + } + $this->waterPositionIndex = $waterPositionIndex; + return $this; + } + /** * @return AxisAlignedBB[] */ @@ -72,6 +113,11 @@ class Farmland extends Transparent{ public function onRandomTick() : void{ $world = $this->position->getWorld(); + + //this property may be updated by canHydrate() - track this so we know if we need to set the block again + $oldWaterPositionIndex = $this->waterPositionIndex; + $changed = false; + if(!$this->canHydrate()){ if($this->wetness > 0){ $event = new FarmlandHydrationChangeEvent($this, $this->wetness, $this->wetness - 1); @@ -79,9 +125,11 @@ class Farmland extends Transparent{ if(!$event->isCancelled()){ $this->wetness = $event->getNewHydration(); $world->setBlock($this->position, $this, false); + $changed = true; } }else{ $world->setBlock($this->position, VanillaBlocks::DIRT()); + $changed = true; } }elseif($this->wetness < self::MAX_WETNESS){ $event = new FarmlandHydrationChangeEvent($this, $this->wetness, self::MAX_WETNESS); @@ -89,8 +137,14 @@ class Farmland extends Transparent{ if(!$event->isCancelled()){ $this->wetness = $event->getNewHydration(); $world->setBlock($this->position, $this, false); + $changed = true; } } + + if(!$changed && $oldWaterPositionIndex !== $this->waterPositionIndex){ + //ensure the water square index is saved regardless of whether anything else happened + $world->setBlock($this->position, $this, false); + } } public function onEntityLand(Entity $entity) : ?float{ @@ -105,19 +159,39 @@ class Farmland extends Transparent{ } protected function canHydrate() : bool{ - //TODO: check rain - $start = $this->position->add(-4, 0, -4); - $end = $this->position->add(4, 1, 4); - for($y = $start->y; $y <= $end->y; ++$y){ - for($z = $start->z; $z <= $end->z; ++$z){ - for($x = $start->x; $x <= $end->x; ++$x){ - if($this->position->getWorld()->getBlockAt($x, $y, $z) instanceof Water){ + $world = $this->position->getWorld(); + + $startX = $this->position->getFloorX() - (int) (self::WATER_SEARCH_HORIZONTAL_LENGTH / 2); + $startY = $this->position->getFloorY(); + $startZ = $this->position->getFloorZ() - (int) (self::WATER_SEARCH_HORIZONTAL_LENGTH / 2); + + if($this->waterPositionIndex !== self::WATER_POSITION_INDEX_UNKNOWN){ + $raw = $this->waterPositionIndex; + $x = $raw % self::WATER_SEARCH_HORIZONTAL_LENGTH; + $raw = intdiv($raw, self::WATER_SEARCH_HORIZONTAL_LENGTH); + $z = $raw % self::WATER_SEARCH_HORIZONTAL_LENGTH; + $raw = intdiv($raw, self::WATER_SEARCH_HORIZONTAL_LENGTH); + $y = $raw % self::WATER_SEARCH_VERTICAL_LENGTH; + + if($world->getBlockAt($startX + $x, $startY + $y, $startZ + $z) instanceof Water){ + return true; + } + } + + //no water found at cached position - search the whole area + //y will increment after x/z have been exhausted, as usually water will be at the same Y as the farmland + for($y = 0; $y < self::WATER_SEARCH_VERTICAL_LENGTH; $y++){ + for($x = 0; $x < self::WATER_SEARCH_HORIZONTAL_LENGTH; $x++){ + for($z = 0; $z < self::WATER_SEARCH_HORIZONTAL_LENGTH; $z++){ + if($world->getBlockAt($startX + $x, $startY + $y, $startZ + $z) instanceof Water){ + $this->waterPositionIndex = $x + ($z * self::WATER_SEARCH_HORIZONTAL_LENGTH) + ($y * self::WATER_SEARCH_HORIZONTAL_LENGTH ** 2); return true; } } } } + $this->waterPositionIndex = self::WATER_POSITION_INDEX_UNKNOWN; return false; } diff --git a/tests/phpunit/block/block_factory_consistency_check.json b/tests/phpunit/block/block_factory_consistency_check.json index 4a4c82b1e..9e68daf0c 100644 --- a/tests/phpunit/block/block_factory_consistency_check.json +++ b/tests/phpunit/block/block_factory_consistency_check.json @@ -1 +1 @@ -{"knownStates":{"???":[2624113],"Acacia Button":[2560272,2560273,2560276,2560277,2560278,2560279,2560280,2560281,2560284,2560285,2560286,2560287],"Acacia Door":[2560704,2560705,2560706,2560707,2560708,2560709,2560710,2560711,2560712,2560713,2560714,2560715,2560716,2560717,2560718,2560719,2560720,2560721,2560722,2560723,2560724,2560725,2560726,2560727,2560728,2560729,2560730,2560731,2560732,2560733,2560734,2560735],"Acacia Fence":[2561017],"Acacia Fence Gate":[2561136,2561137,2561138,2561139,2561140,2561141,2561142,2561143,2561144,2561145,2561146,2561147,2561148,2561149,2561150,2561151],"Acacia Leaves":[2561444,2561445,2561446,2561447],"Acacia Log":[2561576,2561577,2561578,2561579,2561582,2561583],"Acacia Planks":[2561834],"Acacia Pressure Plate":[2562296,2562297],"Acacia Sapling":[2562386,2562387],"Acacia Sign":[2562560,2562561,2562562,2562563,2562564,2562565,2562566,2562567,2562568,2562569,2562570,2562571,2562572,2562573,2562574,2562575],"Acacia Slab":[2562836,2562837,2562838],"Acacia Stairs":[2563176,2563177,2563178,2563179,2563180,2563181,2563182,2563183],"Acacia Trapdoor":[2563456,2563457,2563458,2563459,2563460,2563461,2563462,2563463,2563464,2563465,2563466,2563467,2563468,2563469,2563470,2563471],"Acacia Wall Sign":[2563768,2563769,2563770,2563771],"Acacia Wood":[2563984,2563985,2563986,2563987,2563988,2563989],"Actinium":[2594209],"Activator Rail":[2564338,2564339,2564340,2564341,2564342,2564343,2564346,2564347,2564348,2564349,2564350,2564351],"Air":[2560220],"All Sided Mushroom Stem":[2564457],"Allium":[2564668],"Aluminum":[2594489],"Americium":[2594724],"Amethyst":[2698349],"Amethyst Cluster":[2697760,2697761,2697762,2697763,2697764,2697765,2697766,2697767,2697768,2697769,2697770,2697771,2697772,2697773,2697774,2697775,2697776,2697777,2697778,2697779,2697780,2697781,2697782,2697783],"Ancient Debris":[2698682],"Andesite":[2564865],"Andesite Slab":[2565208,2565210,2565211],"Andesite Stairs":[2565528,2565529,2565530,2565531,2565532,2565533,2565534,2565535],"Andesite Wall":[2565632,2565633,2565634,2565635,2565636,2565637,2565638,2565639,2565640,2565641,2565642,2565643,2565644,2565645,2565646,2565647,2565654,2565696,2565697,2565698,2565699,2565700,2565701,2565702,2565703,2565704,2565705,2565706,2565707,2565708,2565709,2565710,2565711,2565712,2565713,2565714,2565715,2565716,2565717,2565718,2565719,2565720,2565721,2565722,2565723,2565724,2565725,2565726,2565727,2565728,2565729,2565730,2565731,2565732,2565733,2565734,2565735,2565736,2565737,2565738,2565739,2565740,2565741,2565742,2565743,2565744,2565745,2565746,2565747,2565748,2565749,2565750,2565751,2565752,2565753,2565754,2565755,2565756,2565757,2565758,2565759,2565760,2565761,2565762,2565763,2565764,2565765,2565766,2565767,2565768,2565769,2565770,2565771,2565772,2565773,2565774,2565775,2565782,2565824,2565825,2565826,2565827,2565828,2565829,2565830,2565831,2565832,2565833,2565834,2565835,2565836,2565837,2565838,2565839,2565840,2565841,2565842,2565843,2565844,2565845,2565846,2565847,2565848,2565849,2565850,2565851,2565852,2565853,2565854,2565855,2565856,2565857,2565858,2565859,2565860,2565861,2565862,2565863,2565864,2565865,2565866,2565867,2565868,2565869,2565870,2565871,2565872,2565873,2565874,2565875,2565876,2565877,2565878,2565879,2565880,2565881,2565882,2565883,2565884,2565885,2565886,2565887],"Antimony":[2595005],"Anvil":[2565936,2565937,2565939,2565940,2565941,2565943,2565944,2565945,2565947,2565948,2565949,2565951],"Argon":[2595322],"Arsenic":[2595370],"Astatine":[2595621],"Azalea Leaves":[2735748,2735749,2735750,2735751],"Azure Bluet":[2566231],"Bamboo":[2566465,2566466,2566467,2566469,2566470,2566471,2566473,2566474,2566475,2566477,2566478,2566479],"Bamboo Sapling":[2566668,2566669],"Banner":[2566912,2566913,2566914,2566915,2566916,2566917,2566918,2566919,2566920,2566921,2566922,2566923,2566924,2566925,2566926,2566927,2566928,2566929,2566930,2566931,2566932,2566933,2566934,2566935,2566936,2566937,2566938,2566939,2566940,2566941,2566942,2566943,2566944,2566945,2566946,2566947,2566948,2566949,2566950,2566951,2566952,2566953,2566954,2566955,2566956,2566957,2566958,2566959,2566960,2566961,2566962,2566963,2566964,2566965,2566966,2566967,2566968,2566969,2566970,2566971,2566972,2566973,2566974,2566975,2566976,2566977,2566978,2566979,2566980,2566981,2566982,2566983,2566984,2566985,2566986,2566987,2566988,2566989,2566990,2566991,2566992,2566993,2566994,2566995,2566996,2566997,2566998,2566999,2567000,2567001,2567002,2567003,2567004,2567005,2567006,2567007,2567008,2567009,2567010,2567011,2567012,2567013,2567014,2567015,2567016,2567017,2567018,2567019,2567020,2567021,2567022,2567023,2567024,2567025,2567026,2567027,2567028,2567029,2567030,2567031,2567032,2567033,2567034,2567035,2567036,2567037,2567038,2567039,2567040,2567041,2567042,2567043,2567044,2567045,2567046,2567047,2567048,2567049,2567050,2567051,2567052,2567053,2567054,2567055,2567056,2567057,2567058,2567059,2567060,2567061,2567062,2567063,2567064,2567065,2567066,2567067,2567068,2567069,2567070,2567071,2567072,2567073,2567074,2567075,2567076,2567077,2567078,2567079,2567080,2567081,2567082,2567083,2567084,2567085,2567086,2567087,2567088,2567089,2567090,2567091,2567092,2567093,2567094,2567095,2567096,2567097,2567098,2567099,2567100,2567101,2567102,2567103,2567104,2567105,2567106,2567107,2567108,2567109,2567110,2567111,2567112,2567113,2567114,2567115,2567116,2567117,2567118,2567119,2567120,2567121,2567122,2567123,2567124,2567125,2567126,2567127,2567128,2567129,2567130,2567131,2567132,2567133,2567134,2567135,2567136,2567137,2567138,2567139,2567140,2567141,2567142,2567143,2567144,2567145,2567146,2567147,2567148,2567149,2567150,2567151,2567152,2567153,2567154,2567155,2567156,2567157,2567158,2567159,2567160,2567161,2567162,2567163,2567164,2567165,2567166,2567167],"Barium":[2595884],"Barrel":[2567344,2567345,2567346,2567347,2567350,2567351,2567352,2567353,2567354,2567355,2567358,2567359],"Barrier":[2567542],"Basalt":[2698760,2698761,2698762],"Beacon":[2567785],"Bed Block":[2567936,2567937,2567938,2567939,2567940,2567941,2567942,2567943,2567944,2567945,2567946,2567947,2567948,2567949,2567950,2567951,2567952,2567953,2567954,2567955,2567956,2567957,2567958,2567959,2567960,2567961,2567962,2567963,2567964,2567965,2567966,2567967,2567968,2567969,2567970,2567971,2567972,2567973,2567974,2567975,2567976,2567977,2567978,2567979,2567980,2567981,2567982,2567983,2567984,2567985,2567986,2567987,2567988,2567989,2567990,2567991,2567992,2567993,2567994,2567995,2567996,2567997,2567998,2567999,2568000,2568001,2568002,2568003,2568004,2568005,2568006,2568007,2568008,2568009,2568010,2568011,2568012,2568013,2568014,2568015,2568016,2568017,2568018,2568019,2568020,2568021,2568022,2568023,2568024,2568025,2568026,2568027,2568028,2568029,2568030,2568031,2568032,2568033,2568034,2568035,2568036,2568037,2568038,2568039,2568040,2568041,2568042,2568043,2568044,2568045,2568046,2568047,2568048,2568049,2568050,2568051,2568052,2568053,2568054,2568055,2568056,2568057,2568058,2568059,2568060,2568061,2568062,2568063,2568064,2568065,2568066,2568067,2568068,2568069,2568070,2568071,2568072,2568073,2568074,2568075,2568076,2568077,2568078,2568079,2568080,2568081,2568082,2568083,2568084,2568085,2568086,2568087,2568088,2568089,2568090,2568091,2568092,2568093,2568094,2568095,2568096,2568097,2568098,2568099,2568100,2568101,2568102,2568103,2568104,2568105,2568106,2568107,2568108,2568109,2568110,2568111,2568112,2568113,2568114,2568115,2568116,2568117,2568118,2568119,2568120,2568121,2568122,2568123,2568124,2568125,2568126,2568127,2568128,2568129,2568130,2568131,2568132,2568133,2568134,2568135,2568136,2568137,2568138,2568139,2568140,2568141,2568142,2568143,2568144,2568145,2568146,2568147,2568148,2568149,2568150,2568151,2568152,2568153,2568154,2568155,2568156,2568157,2568158,2568159,2568160,2568161,2568162,2568163,2568164,2568165,2568166,2568167,2568168,2568169,2568170,2568171,2568172,2568173,2568174,2568175,2568176,2568177,2568178,2568179,2568180,2568181,2568182,2568183,2568184,2568185,2568186,2568187,2568188,2568189,2568190,2568191],"Bedrock":[2568196,2568197],"Beetroot Block":[2568656,2568657,2568658,2568659,2568660,2568661,2568662,2568663],"Bell":[2568768,2568769,2568770,2568771,2568772,2568773,2568774,2568775,2568776,2568777,2568778,2568779,2568780,2568781,2568782,2568783],"Berkelium":[2596102],"Beryllium":[2596419],"Big Dripleaf":[2741200,2741201,2741202,2741203,2741204,2741205,2741206,2741207,2741208,2741209,2741210,2741211,2741212,2741213,2741214,2741215],"Big Dripleaf Stem":[2741448,2741449,2741450,2741451],"Birch Button":[2568992,2568993,2568994,2568995,2568998,2568999,2569000,2569001,2569002,2569003,2569006,2569007],"Birch Door":[2569312,2569313,2569314,2569315,2569316,2569317,2569318,2569319,2569320,2569321,2569322,2569323,2569324,2569325,2569326,2569327,2569328,2569329,2569330,2569331,2569332,2569333,2569334,2569335,2569336,2569337,2569338,2569339,2569340,2569341,2569342,2569343],"Birch Fence":[2569526],"Birch Fence Gate":[2569904,2569905,2569906,2569907,2569908,2569909,2569910,2569911,2569912,2569913,2569914,2569915,2569916,2569917,2569918,2569919],"Birch Leaves":[2570200,2570201,2570202,2570203],"Birch Log":[2570432,2570433,2570436,2570437,2570438,2570439],"Birch Planks":[2570714],"Birch Pressure Plate":[2570946,2570947],"Birch Sapling":[2571148,2571149],"Birch Sign":[2571408,2571409,2571410,2571411,2571412,2571413,2571414,2571415,2571416,2571417,2571418,2571419,2571420,2571421,2571422,2571423],"Birch Slab":[2571532,2571533,2571534],"Birch Stairs":[2571880,2571881,2571882,2571883,2571884,2571885,2571886,2571887],"Birch Trapdoor":[2572272,2572273,2572274,2572275,2572276,2572277,2572278,2572279,2572280,2572281,2572282,2572283,2572284,2572285,2572286,2572287],"Birch Wall Sign":[2572492,2572493,2572494,2572495],"Birch Wood":[2572762,2572763,2572764,2572765,2572766,2572767],"Bismuth":[2596655],"Blackstone":[2699667],"Blackstone Slab":[2699812,2699814,2699815],"Blackstone Stairs":[2700040,2700041,2700042,2700043,2700044,2700045,2700046,2700047],"Blackstone Wall":[2700290,2700304,2700305,2700306,2700307,2700308,2700309,2700310,2700311,2700312,2700313,2700314,2700315,2700316,2700317,2700318,2700319,2700352,2700353,2700354,2700355,2700356,2700357,2700358,2700359,2700360,2700361,2700362,2700363,2700364,2700365,2700366,2700367,2700368,2700369,2700370,2700371,2700372,2700373,2700374,2700375,2700376,2700377,2700378,2700379,2700380,2700381,2700382,2700383,2700384,2700385,2700386,2700387,2700388,2700389,2700390,2700391,2700392,2700393,2700394,2700395,2700396,2700397,2700398,2700399,2700400,2700401,2700402,2700403,2700404,2700405,2700406,2700407,2700408,2700409,2700410,2700411,2700412,2700413,2700414,2700415,2700418,2700432,2700433,2700434,2700435,2700436,2700437,2700438,2700439,2700440,2700441,2700442,2700443,2700444,2700445,2700446,2700447,2700480,2700481,2700482,2700483,2700484,2700485,2700486,2700487,2700488,2700489,2700490,2700491,2700492,2700493,2700494,2700495,2700496,2700497,2700498,2700499,2700500,2700501,2700502,2700503,2700504,2700505,2700506,2700507,2700508,2700509,2700510,2700511,2700512,2700513,2700514,2700515,2700516,2700517,2700518,2700519,2700520,2700521,2700522,2700523,2700524,2700525,2700526,2700527,2700528,2700529,2700530,2700531,2700532,2700533,2700534,2700535,2700536,2700537,2700538,2700539,2700540,2700541,2700542,2700543],"Blast Furnace":[2573168,2573169,2573170,2573171,2573172,2573173,2573174,2573175],"Blue Ice":[2573619],"Blue Orchid":[2574037],"Blue Torch":[2574128,2574129,2574133,2574134,2574135],"Bohrium":[2596992],"Bone Block":[2574452,2574453,2574455],"Bookshelf":[2574696],"Boron":[2597121],"Brewing Stand":[2574960,2574961,2574962,2574963,2574964,2574965,2574966,2574967],"Brick Slab":[2575184,2575185,2575187],"Brick Stairs":[2575608,2575609,2575610,2575611,2575612,2575613,2575614,2575615],"Brick Wall":[2575616,2575617,2575618,2575619,2575620,2575621,2575622,2575623,2575624,2575625,2575626,2575627,2575628,2575629,2575630,2575631,2575632,2575633,2575634,2575635,2575636,2575637,2575638,2575639,2575640,2575641,2575642,2575643,2575644,2575645,2575646,2575647,2575648,2575649,2575650,2575651,2575652,2575653,2575654,2575655,2575656,2575657,2575658,2575659,2575660,2575661,2575662,2575663,2575664,2575665,2575666,2575667,2575668,2575669,2575670,2575671,2575672,2575673,2575674,2575675,2575676,2575677,2575678,2575679,2575717,2575728,2575729,2575730,2575731,2575732,2575733,2575734,2575735,2575736,2575737,2575738,2575739,2575740,2575741,2575742,2575743,2575744,2575745,2575746,2575747,2575748,2575749,2575750,2575751,2575752,2575753,2575754,2575755,2575756,2575757,2575758,2575759,2575760,2575761,2575762,2575763,2575764,2575765,2575766,2575767,2575768,2575769,2575770,2575771,2575772,2575773,2575774,2575775,2575776,2575777,2575778,2575779,2575780,2575781,2575782,2575783,2575784,2575785,2575786,2575787,2575788,2575789,2575790,2575791,2575792,2575793,2575794,2575795,2575796,2575797,2575798,2575799,2575800,2575801,2575802,2575803,2575804,2575805,2575806,2575807,2575845,2575856,2575857,2575858,2575859,2575860,2575861,2575862,2575863,2575864,2575865,2575866,2575867,2575868,2575869,2575870,2575871],"Bricks":[2575954],"Bromine":[2597549],"Brown Mushroom":[2576600],"Brown Mushroom Block":[2576784,2576785,2576786,2576787,2576788,2576789,2576790,2576791,2576796,2576797,2576799],"Budding Amethyst":[2697080],"Cactus":[2577088,2577089,2577090,2577091,2577092,2577093,2577094,2577095,2577096,2577097,2577098,2577099,2577100,2577101,2577102,2577103],"Cadmium":[2597701],"Cake":[2577240,2577241,2577242,2577243,2577244,2577245,2577246],"Cake With Candle":[2729638,2729639],"Cake With Dyed Candle":[2729856,2729857,2729858,2729859,2729860,2729861,2729862,2729863,2729864,2729865,2729866,2729867,2729868,2729869,2729870,2729871,2729872,2729873,2729874,2729875,2729876,2729877,2729878,2729879,2729880,2729881,2729882,2729883,2729884,2729885,2729886,2729887],"Calcite":[2704877],"Calcium":[2597941],"Californium":[2598331],"Candle":[2729200,2729201,2729202,2729203,2729204,2729205,2729206,2729207],"Carbon":[2598640],"Carpet":[2577424,2577425,2577426,2577427,2577428,2577429,2577430,2577431,2577432,2577433,2577434,2577435,2577436,2577437,2577438,2577439],"Carrot Block":[2577824,2577825,2577826,2577827,2577828,2577829,2577830,2577831],"Cartography Table":[2730733],"Carved Pumpkin":[2578164,2578165,2578166,2578167],"Cauldron":[2731561],"Cave Vines":[2736512,2736513,2736514,2736515,2736516,2736517,2736518,2736519,2736520,2736521,2736522,2736523,2736524,2736525,2736526,2736527,2736532,2736533,2736536,2736537,2736538,2736539,2736540,2736541,2736542,2736543,2736544,2736545,2736546,2736547,2736548,2736549,2736550,2736551,2736552,2736553,2736554,2736555,2736556,2736557,2736558,2736559,2736564,2736565,2736568,2736569,2736570,2736571,2736572,2736573,2736574,2736575,2736576,2736577,2736578,2736579,2736580,2736581,2736582,2736583,2736584,2736585,2736586,2736587,2736588,2736589,2736590,2736591,2736596,2736597,2736600,2736601,2736602,2736603,2736604,2736605,2736606,2736607,2736608,2736609,2736610,2736611,2736612,2736613,2736614,2736615,2736616,2736617,2736618,2736619,2736620,2736621,2736622,2736623,2736628,2736629,2736632,2736633,2736634,2736635,2736636,2736637,2736638,2736639],"Cerium":[2598839],"Cesium":[2599158],"Chain":[2734637,2734638,2734639],"Cherry Button":[2737042,2737043,2737044,2737045,2737046,2737047,2737050,2737051,2737052,2737053,2737054,2737055],"Cherry Door":[2737216,2737217,2737218,2737219,2737220,2737221,2737222,2737223,2737224,2737225,2737226,2737227,2737228,2737229,2737230,2737231,2737232,2737233,2737234,2737235,2737236,2737237,2737238,2737239,2737240,2737241,2737242,2737243,2737244,2737245,2737246,2737247],"Cherry Fence":[2737525],"Cherry Fence Gate":[2737744,2737745,2737746,2737747,2737748,2737749,2737750,2737751,2737752,2737753,2737754,2737755,2737756,2737757,2737758,2737759],"Cherry Leaves":[2737948,2737949,2737950,2737951],"Cherry Log":[2738296,2738297,2738298,2738299,2738302,2738303],"Cherry Planks":[2738452],"Cherry Pressure Plate":[2738928,2738929],"Cherry Sign":[2739264,2739265,2739266,2739267,2739268,2739269,2739270,2739271,2739272,2739273,2739274,2739275,2739276,2739277,2739278,2739279],"Cherry Slab":[2739648,2739649,2739651],"Cherry Stairs":[2739904,2739905,2739906,2739907,2739908,2739909,2739910,2739911],"Cherry Trapdoor":[2740192,2740193,2740194,2740195,2740196,2740197,2740198,2740199,2740200,2740201,2740202,2740203,2740204,2740205,2740206,2740207],"Cherry Wall Sign":[2740252,2740253,2740254,2740255],"Cherry Wood":[2740648,2740649,2740652,2740653,2740654,2740655],"Chest":[2578568,2578569,2578570,2578571],"Chiseled Bookshelf":[2742272,2742273,2742274,2742275,2742276,2742277,2742278,2742279,2742280,2742281,2742282,2742283,2742284,2742285,2742286,2742287,2742288,2742289,2742290,2742291,2742292,2742293,2742294,2742295,2742296,2742297,2742298,2742299,2742300,2742301,2742302,2742303,2742304,2742305,2742306,2742307,2742308,2742309,2742310,2742311,2742312,2742313,2742314,2742315,2742316,2742317,2742318,2742319,2742320,2742321,2742322,2742323,2742324,2742325,2742326,2742327,2742328,2742329,2742330,2742331,2742332,2742333,2742334,2742335,2742336,2742337,2742338,2742339,2742340,2742341,2742342,2742343,2742344,2742345,2742346,2742347,2742348,2742349,2742350,2742351,2742352,2742353,2742354,2742355,2742356,2742357,2742358,2742359,2742360,2742361,2742362,2742363,2742364,2742365,2742366,2742367,2742368,2742369,2742370,2742371,2742372,2742373,2742374,2742375,2742376,2742377,2742378,2742379,2742380,2742381,2742382,2742383,2742384,2742385,2742386,2742387,2742388,2742389,2742390,2742391,2742392,2742393,2742394,2742395,2742396,2742397,2742398,2742399,2742400,2742401,2742402,2742403,2742404,2742405,2742406,2742407,2742408,2742409,2742410,2742411,2742412,2742413,2742414,2742415,2742416,2742417,2742418,2742419,2742420,2742421,2742422,2742423,2742424,2742425,2742426,2742427,2742428,2742429,2742430,2742431,2742432,2742433,2742434,2742435,2742436,2742437,2742438,2742439,2742440,2742441,2742442,2742443,2742444,2742445,2742446,2742447,2742448,2742449,2742450,2742451,2742452,2742453,2742454,2742455,2742456,2742457,2742458,2742459,2742460,2742461,2742462,2742463,2742464,2742465,2742466,2742467,2742468,2742469,2742470,2742471,2742472,2742473,2742474,2742475,2742476,2742477,2742478,2742479,2742480,2742481,2742482,2742483,2742484,2742485,2742486,2742487,2742488,2742489,2742490,2742491,2742492,2742493,2742494,2742495,2742496,2742497,2742498,2742499,2742500,2742501,2742502,2742503,2742504,2742505,2742506,2742507,2742508,2742509,2742510,2742511,2742512,2742513,2742514,2742515,2742516,2742517,2742518,2742519,2742520,2742521,2742522,2742523,2742524,2742525,2742526,2742527],"Chiseled Deepslate":[2710178],"Chiseled Nether Bricks":[2710490],"Chiseled Polished Blackstone":[2702198],"Chiseled Quartz Block":[2578820,2578822,2578823],"Chiseled Red Sandstone":[2579100],"Chiseled Sandstone":[2579423],"Chiseled Stone Bricks":[2579586],"Chlorine":[2599314],"Chorus Flower":[2732968,2732969,2732972,2732973,2732974,2732975],"Chorus Plant":[2733195],"Chromium":[2599618],"Clay Block":[2579928],"Coal Block":[2580113],"Coal Ore":[2580456],"Cobalt":[2599759],"Cobbled Deepslate":[2707954],"Cobbled Deepslate Slab":[2708012,2708014,2708015],"Cobbled Deepslate Stairs":[2708408,2708409,2708410,2708411,2708412,2708413,2708414,2708415],"Cobbled Deepslate Wall":[2708517,2708528,2708529,2708530,2708531,2708532,2708533,2708534,2708535,2708536,2708537,2708538,2708539,2708540,2708541,2708542,2708543,2708544,2708545,2708546,2708547,2708548,2708549,2708550,2708551,2708552,2708553,2708554,2708555,2708556,2708557,2708558,2708559,2708560,2708561,2708562,2708563,2708564,2708565,2708566,2708567,2708568,2708569,2708570,2708571,2708572,2708573,2708574,2708575,2708576,2708577,2708578,2708579,2708580,2708581,2708582,2708583,2708584,2708585,2708586,2708587,2708588,2708589,2708590,2708591,2708592,2708593,2708594,2708595,2708596,2708597,2708598,2708599,2708600,2708601,2708602,2708603,2708604,2708605,2708606,2708607,2708645,2708656,2708657,2708658,2708659,2708660,2708661,2708662,2708663,2708664,2708665,2708666,2708667,2708668,2708669,2708670,2708671,2708672,2708673,2708674,2708675,2708676,2708677,2708678,2708679,2708680,2708681,2708682,2708683,2708684,2708685,2708686,2708687,2708688,2708689,2708690,2708691,2708692,2708693,2708694,2708695,2708696,2708697,2708698,2708699,2708700,2708701,2708702,2708703,2708704,2708705,2708706,2708707,2708708,2708709,2708710,2708711,2708712,2708713,2708714,2708715,2708716,2708717,2708718,2708719,2708720,2708721,2708722,2708723,2708724,2708725,2708726,2708727,2708728,2708729,2708730,2708731,2708732,2708733,2708734,2708735],"Cobblestone":[2580494],"Cobblestone Slab":[2580816,2580818,2580819],"Cobblestone Stairs":[2581008,2581009,2581010,2581011,2581012,2581013,2581014,2581015],"Cobblestone Wall":[2581248,2581249,2581250,2581251,2581252,2581253,2581254,2581255,2581256,2581257,2581258,2581259,2581260,2581261,2581262,2581263,2581264,2581265,2581266,2581267,2581268,2581269,2581270,2581271,2581272,2581273,2581274,2581275,2581276,2581277,2581278,2581279,2581280,2581281,2581282,2581283,2581284,2581285,2581286,2581287,2581288,2581289,2581290,2581291,2581292,2581293,2581294,2581295,2581296,2581297,2581298,2581299,2581300,2581301,2581302,2581303,2581304,2581305,2581306,2581307,2581308,2581309,2581310,2581311,2581344,2581345,2581346,2581347,2581348,2581349,2581350,2581351,2581352,2581353,2581354,2581355,2581356,2581357,2581358,2581359,2581363,2581376,2581377,2581378,2581379,2581380,2581381,2581382,2581383,2581384,2581385,2581386,2581387,2581388,2581389,2581390,2581391,2581392,2581393,2581394,2581395,2581396,2581397,2581398,2581399,2581400,2581401,2581402,2581403,2581404,2581405,2581406,2581407,2581408,2581409,2581410,2581411,2581412,2581413,2581414,2581415,2581416,2581417,2581418,2581419,2581420,2581421,2581422,2581423,2581424,2581425,2581426,2581427,2581428,2581429,2581430,2581431,2581432,2581433,2581434,2581435,2581436,2581437,2581438,2581439,2581472,2581473,2581474,2581475,2581476,2581477,2581478,2581479,2581480,2581481,2581482,2581483,2581484,2581485,2581486,2581487,2581491],"Cobweb":[2581680],"Cocoa Block":[2581936,2581937,2581938,2581939,2581940,2581941,2581942,2581943,2581944,2581945,2581946,2581947],"Compound Creator":[2582064,2582065,2582066,2582067],"Concrete":[2582272,2582273,2582274,2582275,2582276,2582277,2582278,2582279,2582280,2582281,2582282,2582283,2582284,2582285,2582286,2582287],"Concrete Powder":[2582576,2582577,2582578,2582579,2582580,2582581,2582582,2582583,2582584,2582585,2582586,2582587,2582588,2582589,2582590,2582591],"Copernicium":[2600444],"Copper":[2600600],"Copper Block":[2727976,2727977,2727978,2727979,2727980,2727981,2727982,2727983],"Copper Ore":[2724945],"Coral":[2582850,2582852,2582853,2582854,2582855,2582858,2582860,2582861,2582862,2582863],"Coral Block":[2583185,2583188,2583189,2583190,2583191,2583193,2583196,2583197,2583198,2583199],"Coral Fan":[2583523,2583524,2583525,2583526,2583527,2583531,2583532,2583533,2583534,2583535,2583539,2583540,2583541,2583542,2583543,2583547,2583548,2583549,2583550,2583551],"Cornflower":[2583696],"Cracked Deepslate Bricks":[2706413],"Cracked Deepslate Tiles":[2707692],"Cracked Nether Bricks":[2710722],"Cracked Polished Blackstone Bricks":[2703370],"Cracked Stone Bricks":[2584050],"Crafting Table":[2584268],"Crimson Button":[2717232,2717233,2717234,2717235,2717238,2717239,2717240,2717241,2717242,2717243,2717246,2717247],"Crimson Door":[2718784,2718785,2718786,2718787,2718788,2718789,2718790,2718791,2718792,2718793,2718794,2718795,2718796,2718797,2718798,2718799,2718800,2718801,2718802,2718803,2718804,2718805,2718806,2718807,2718808,2718809,2718810,2718811,2718812,2718813,2718814,2718815],"Crimson Fence":[2713497],"Crimson Fence Gate":[2719536,2719537,2719538,2719539,2719540,2719541,2719542,2719543,2719544,2719545,2719546,2719547,2719548,2719549,2719550,2719551],"Crimson Hyphae":[2715840,2715841,2715844,2715845,2715846,2715847],"Crimson Planks":[2712775],"Crimson Pressure Plate":[2717972,2717973],"Crimson Roots":[2741901],"Crimson Sign":[2721120,2721121,2721122,2721123,2721124,2721125,2721126,2721127,2721128,2721129,2721130,2721131,2721132,2721133,2721134,2721135],"Crimson Slab":[2714352,2714353,2714354],"Crimson Stairs":[2720312,2720313,2720314,2720315,2720316,2720317,2720318,2720319],"Crimson Stem":[2714970,2714971,2714972,2714973,2714974,2714975],"Crimson Trapdoor":[2716640,2716641,2716642,2716643,2716644,2716645,2716646,2716647,2716648,2716649,2716650,2716651,2716652,2716653,2716654,2716655],"Crimson Wall Sign":[2721840,2721841,2721842,2721843],"Crying Obsidian":[2727325],"Curium":[2600713],"Cut Copper Block":[2728328,2728329,2728330,2728331,2728332,2728333,2728334,2728335],"Cut Copper Slab Slab":[2728584,2728585,2728586,2728587,2728588,2728589,2728590,2728591,2728592,2728593,2728594,2728595,2728596,2728597,2728598,2728599,2728600,2728601,2728602,2728603,2728604,2728605,2728606,2728607],"Cut Copper Stairs":[2728896,2728897,2728898,2728899,2728900,2728901,2728902,2728903,2728904,2728905,2728906,2728907,2728908,2728909,2728910,2728911,2728912,2728913,2728914,2728915,2728916,2728917,2728918,2728919,2728920,2728921,2728922,2728923,2728924,2728925,2728926,2728927,2728928,2728929,2728930,2728931,2728932,2728933,2728934,2728935,2728936,2728937,2728938,2728939,2728940,2728941,2728942,2728943,2728944,2728945,2728946,2728947,2728948,2728949,2728950,2728951,2728952,2728953,2728954,2728955,2728956,2728957,2728958,2728959],"Cut Red Sandstone":[2584380],"Cut Red Sandstone Slab":[2584708,2584709,2584711],"Cut Sandstone":[2585059],"Cut Sandstone Slab":[2585332,2585333,2585334],"Dandelion":[2585688],"Dark Oak Button":[2586096,2586097,2586098,2586099,2586102,2586103,2586104,2586105,2586106,2586107,2586110,2586111],"Dark Oak Door":[2586336,2586337,2586338,2586339,2586340,2586341,2586342,2586343,2586344,2586345,2586346,2586347,2586348,2586349,2586350,2586351,2586352,2586353,2586354,2586355,2586356,2586357,2586358,2586359,2586360,2586361,2586362,2586363,2586364,2586365,2586366,2586367],"Dark Oak Fence":[2586561],"Dark Oak Fence Gate":[2586816,2586817,2586818,2586819,2586820,2586821,2586822,2586823,2586824,2586825,2586826,2586827,2586828,2586829,2586830,2586831],"Dark Oak Leaves":[2587056,2587057,2587058,2587059],"Dark Oak Log":[2587344,2587345,2587348,2587349,2587350,2587351],"Dark Oak Planks":[2587602],"Dark Oak Pressure Plate":[2587678,2587679],"Dark Oak Sapling":[2587910,2587911],"Dark Oak Sign":[2588384,2588385,2588386,2588387,2588388,2588389,2588390,2588391,2588392,2588393,2588394,2588395,2588396,2588397,2588398,2588399],"Dark Oak Slab":[2588624,2588625,2588626],"Dark Oak Stairs":[2588848,2588849,2588850,2588851,2588852,2588853,2588854,2588855],"Dark Oak Trapdoor":[2588992,2588993,2588994,2588995,2588996,2588997,2588998,2588999,2589000,2589001,2589002,2589003,2589004,2589005,2589006,2589007],"Dark Oak Wall Sign":[2589400,2589401,2589402,2589403],"Dark Oak Wood":[2589634,2589635,2589636,2589637,2589638,2589639],"Dark Prismarine":[2589812],"Dark Prismarine Slab":[2590000,2590002,2590003],"Dark Prismarine Stairs":[2590368,2590369,2590370,2590371,2590372,2590373,2590374,2590375],"Darmstadtium":[2601036],"Daylight Sensor":[2590656,2590657,2590658,2590659,2590660,2590661,2590662,2590663,2590664,2590665,2590666,2590667,2590668,2590669,2590670,2590671,2590672,2590673,2590674,2590675,2590676,2590677,2590678,2590679,2590680,2590681,2590682,2590683,2590684,2590685,2590686,2590687],"Dead Bush":[2590793],"Deepslate":[2705088,2705089,2705091],"Deepslate Brick Slab":[2705500,2705501,2705502],"Deepslate Brick Stairs":[2705720,2705721,2705722,2705723,2705724,2705725,2705726,2705727],"Deepslate Brick Wall":[2705920,2705921,2705922,2705923,2705924,2705925,2705926,2705927,2705928,2705929,2705930,2705931,2705932,2705933,2705934,2705935,2705936,2705937,2705938,2705939,2705940,2705941,2705942,2705943,2705944,2705945,2705946,2705947,2705948,2705949,2705950,2705951,2705952,2705953,2705954,2705955,2705956,2705957,2705958,2705959,2705960,2705961,2705962,2705963,2705964,2705965,2705966,2705967,2705968,2705969,2705970,2705971,2705972,2705973,2705974,2705975,2705976,2705977,2705978,2705979,2705980,2705981,2705982,2705983,2705985,2706000,2706001,2706002,2706003,2706004,2706005,2706006,2706007,2706008,2706009,2706010,2706011,2706012,2706013,2706014,2706015,2706048,2706049,2706050,2706051,2706052,2706053,2706054,2706055,2706056,2706057,2706058,2706059,2706060,2706061,2706062,2706063,2706064,2706065,2706066,2706067,2706068,2706069,2706070,2706071,2706072,2706073,2706074,2706075,2706076,2706077,2706078,2706079,2706080,2706081,2706082,2706083,2706084,2706085,2706086,2706087,2706088,2706089,2706090,2706091,2706092,2706093,2706094,2706095,2706096,2706097,2706098,2706099,2706100,2706101,2706102,2706103,2706104,2706105,2706106,2706107,2706108,2706109,2706110,2706111,2706113,2706128,2706129,2706130,2706131,2706132,2706133,2706134,2706135,2706136,2706137,2706138,2706139,2706140,2706141,2706142,2706143],"Deepslate Bricks":[2705385],"Deepslate Coal Ore":[2722829],"Deepslate Copper Ore":[2724725],"Deepslate Diamond Ore":[2723295],"Deepslate Emerald Ore":[2723497],"Deepslate Gold Ore":[2724424],"Deepslate Iron Ore":[2724301],"Deepslate Lapis Lazuli Ore":[2723822],"Deepslate Redstone Ore":[2723924,2723925],"Deepslate Tile Slab":[2706876,2706877,2706879],"Deepslate Tile Stairs":[2707184,2707185,2707186,2707187,2707188,2707189,2707190,2707191],"Deepslate Tile Wall":[2707232,2707233,2707234,2707235,2707236,2707237,2707238,2707239,2707240,2707241,2707242,2707243,2707244,2707245,2707246,2707247,2707250,2707264,2707265,2707266,2707267,2707268,2707269,2707270,2707271,2707272,2707273,2707274,2707275,2707276,2707277,2707278,2707279,2707280,2707281,2707282,2707283,2707284,2707285,2707286,2707287,2707288,2707289,2707290,2707291,2707292,2707293,2707294,2707295,2707296,2707297,2707298,2707299,2707300,2707301,2707302,2707303,2707304,2707305,2707306,2707307,2707308,2707309,2707310,2707311,2707312,2707313,2707314,2707315,2707316,2707317,2707318,2707319,2707320,2707321,2707322,2707323,2707324,2707325,2707326,2707327,2707360,2707361,2707362,2707363,2707364,2707365,2707366,2707367,2707368,2707369,2707370,2707371,2707372,2707373,2707374,2707375,2707378,2707392,2707393,2707394,2707395,2707396,2707397,2707398,2707399,2707400,2707401,2707402,2707403,2707404,2707405,2707406,2707407,2707408,2707409,2707410,2707411,2707412,2707413,2707414,2707415,2707416,2707417,2707418,2707419,2707420,2707421,2707422,2707423,2707424,2707425,2707426,2707427,2707428,2707429,2707430,2707431,2707432,2707433,2707434,2707435,2707436,2707437,2707438,2707439,2707440,2707441,2707442,2707443,2707444,2707445,2707446,2707447,2707448,2707449,2707450,2707451,2707452,2707453,2707454,2707455],"Deepslate Tiles":[2706669],"Detector Rail":[2591152,2591153,2591154,2591155,2591158,2591159,2591160,2591161,2591162,2591163,2591166,2591167],"Diamond Block":[2591282],"Diamond Ore":[2591690],"Diorite":[2591871],"Diorite Slab":[2592189,2592190,2592191],"Diorite Stairs":[2592432,2592433,2592434,2592435,2592436,2592437,2592438,2592439],"Diorite Wall":[2592544,2592545,2592546,2592547,2592548,2592549,2592550,2592551,2592552,2592553,2592554,2592555,2592556,2592557,2592558,2592559,2592561,2592576,2592577,2592578,2592579,2592580,2592581,2592582,2592583,2592584,2592585,2592586,2592587,2592588,2592589,2592590,2592591,2592592,2592593,2592594,2592595,2592596,2592597,2592598,2592599,2592600,2592601,2592602,2592603,2592604,2592605,2592606,2592607,2592608,2592609,2592610,2592611,2592612,2592613,2592614,2592615,2592616,2592617,2592618,2592619,2592620,2592621,2592622,2592623,2592624,2592625,2592626,2592627,2592628,2592629,2592630,2592631,2592632,2592633,2592634,2592635,2592636,2592637,2592638,2592639,2592672,2592673,2592674,2592675,2592676,2592677,2592678,2592679,2592680,2592681,2592682,2592683,2592684,2592685,2592686,2592687,2592689,2592704,2592705,2592706,2592707,2592708,2592709,2592710,2592711,2592712,2592713,2592714,2592715,2592716,2592717,2592718,2592719,2592720,2592721,2592722,2592723,2592724,2592725,2592726,2592727,2592728,2592729,2592730,2592731,2592732,2592733,2592734,2592735,2592736,2592737,2592738,2592739,2592740,2592741,2592742,2592743,2592744,2592745,2592746,2592747,2592748,2592749,2592750,2592751,2592752,2592753,2592754,2592755,2592756,2592757,2592758,2592759,2592760,2592761,2592762,2592763,2592764,2592765,2592766,2592767],"Dirt":[2592872,2592873,2592875],"Double Pitcher Crop":[2743664,2743665,2743666,2743667],"Double Tallgrass":[2593222,2593223],"Dragon Egg":[2593308],"Dried Kelp Block":[2593640],"Dubnium":[2601238],"Dyed Candle":[2729216,2729217,2729218,2729219,2729220,2729221,2729222,2729223,2729224,2729225,2729226,2729227,2729228,2729229,2729230,2729231,2729232,2729233,2729234,2729235,2729236,2729237,2729238,2729239,2729240,2729241,2729242,2729243,2729244,2729245,2729246,2729247,2729248,2729249,2729250,2729251,2729252,2729253,2729254,2729255,2729256,2729257,2729258,2729259,2729260,2729261,2729262,2729263,2729264,2729265,2729266,2729267,2729268,2729269,2729270,2729271,2729272,2729273,2729274,2729275,2729276,2729277,2729278,2729279,2729280,2729281,2729282,2729283,2729284,2729285,2729286,2729287,2729288,2729289,2729290,2729291,2729292,2729293,2729294,2729295,2729296,2729297,2729298,2729299,2729300,2729301,2729302,2729303,2729304,2729305,2729306,2729307,2729308,2729309,2729310,2729311,2729312,2729313,2729314,2729315,2729316,2729317,2729318,2729319,2729320,2729321,2729322,2729323,2729324,2729325,2729326,2729327,2729328,2729329,2729330,2729331,2729332,2729333,2729334,2729335,2729336,2729337,2729338,2729339,2729340,2729341,2729342,2729343],"Dyed Shulker Box":[2594016,2594017,2594018,2594019,2594020,2594021,2594022,2594023,2594024,2594025,2594026,2594027,2594028,2594029,2594030,2594031],"Dysprosium":[2601517],"Einsteinium":[2601881],"Element Constructor":[2600032,2600033,2600034,2600035],"Emerald Block":[2624812],"Emerald Ore":[2625136],"Enchanting Table":[2625512],"End Portal Frame":[2625616,2625617,2625618,2625619,2625620,2625621,2625622,2625623],"End Rod":[2625944,2625945,2625946,2625947,2625950,2625951],"End Stone":[2626067],"End Stone Brick Slab":[2626456,2626457,2626459],"End Stone Brick Stairs":[2626744,2626745,2626746,2626747,2626748,2626749,2626750,2626751],"End Stone Brick Wall":[2626853,2626864,2626865,2626866,2626867,2626868,2626869,2626870,2626871,2626872,2626873,2626874,2626875,2626876,2626877,2626878,2626879,2626880,2626881,2626882,2626883,2626884,2626885,2626886,2626887,2626888,2626889,2626890,2626891,2626892,2626893,2626894,2626895,2626896,2626897,2626898,2626899,2626900,2626901,2626902,2626903,2626904,2626905,2626906,2626907,2626908,2626909,2626910,2626911,2626912,2626913,2626914,2626915,2626916,2626917,2626918,2626919,2626920,2626921,2626922,2626923,2626924,2626925,2626926,2626927,2626928,2626929,2626930,2626931,2626932,2626933,2626934,2626935,2626936,2626937,2626938,2626939,2626940,2626941,2626942,2626943,2626981,2626992,2626993,2626994,2626995,2626996,2626997,2626998,2626999,2627000,2627001,2627002,2627003,2627004,2627005,2627006,2627007,2627008,2627009,2627010,2627011,2627012,2627013,2627014,2627015,2627016,2627017,2627018,2627019,2627020,2627021,2627022,2627023,2627024,2627025,2627026,2627027,2627028,2627029,2627030,2627031,2627032,2627033,2627034,2627035,2627036,2627037,2627038,2627039,2627040,2627041,2627042,2627043,2627044,2627045,2627046,2627047,2627048,2627049,2627050,2627051,2627052,2627053,2627054,2627055,2627056,2627057,2627058,2627059,2627060,2627061,2627062,2627063,2627064,2627065,2627066,2627067,2627068,2627069,2627070,2627071],"End Stone Bricks":[2627290],"Ender Chest":[2627340,2627341,2627342,2627343],"Erbium":[2602113],"Europium":[2602268],"Fake Wooden Slab":[2627665,2627666,2627667],"Farmland":[2627976,2627977,2627978,2627979,2627980,2627981,2627982,2627983],"Fermium":[2602504],"Fern":[2628125],"Fire Block":[2628464,2628465,2628466,2628467,2628468,2628469,2628470,2628471,2628472,2628473,2628474,2628475,2628476,2628477,2628478,2628479],"Flerovium":[2602826],"Fletching Table":[2628783],"Flower Pot":[2628913],"Flowering Azalea Leaves":[2736040,2736041,2736042,2736043],"Fluorine":[2603060],"Francium":[2603433],"Froglight":[2733953,2733954,2733955,2733957,2733958,2733959,2733961,2733962,2733963],"Frosted Ice":[2629188,2629189,2629190,2629191],"Furnace":[2629600,2629601,2629602,2629603,2629604,2629605,2629606,2629607],"Gadolinium":[2603633],"Gallium":[2603945],"Germanium":[2604261],"Gilded Blackstone":[2727654],"Glass":[2629881],"Glass Pane":[2630089],"Glazed Terracotta":[2697984,2697985,2697986,2697987,2697988,2697989,2697990,2697991,2697992,2697993,2697994,2697995,2697996,2697997,2697998,2697999,2698000,2698001,2698002,2698003,2698004,2698005,2698006,2698007,2698008,2698009,2698010,2698011,2698012,2698013,2698014,2698015,2698016,2698017,2698018,2698019,2698020,2698021,2698022,2698023,2698024,2698025,2698026,2698027,2698028,2698029,2698030,2698031,2698032,2698033,2698034,2698035,2698036,2698037,2698038,2698039,2698040,2698041,2698042,2698043,2698044,2698045,2698046,2698047],"Glow Item Frame":[2735312,2735313,2735316,2735317,2735318,2735319,2735320,2735321,2735324,2735325,2735326,2735327],"Glow Lichen":[2736768,2736769,2736770,2736771,2736772,2736773,2736774,2736775,2736776,2736777,2736778,2736779,2736780,2736781,2736782,2736783,2736784,2736785,2736786,2736787,2736788,2736789,2736790,2736791,2736792,2736793,2736794,2736795,2736796,2736797,2736798,2736799,2736800,2736801,2736802,2736803,2736804,2736805,2736806,2736807,2736808,2736809,2736810,2736811,2736812,2736813,2736814,2736815,2736816,2736817,2736818,2736819,2736820,2736821,2736822,2736823,2736824,2736825,2736826,2736827,2736828,2736829,2736830,2736831],"Glowing Obsidian":[2630228],"Glowstone":[2630568],"Gold":[2604408],"Gold Block":[2630824],"Gold Ore":[2631090],"Granite":[2631318],"Granite Slab":[2631496,2631497,2631498],"Granite Stairs":[2631752,2631753,2631754,2631755,2631756,2631757,2631758,2631759],"Granite Wall":[2631936,2631937,2631938,2631939,2631940,2631941,2631942,2631943,2631944,2631945,2631946,2631947,2631948,2631949,2631950,2631951,2631952,2631953,2631954,2631955,2631956,2631957,2631958,2631959,2631960,2631961,2631962,2631963,2631964,2631965,2631966,2631967,2631968,2631969,2631970,2631971,2631972,2631973,2631974,2631975,2631976,2631977,2631978,2631979,2631980,2631981,2631982,2631983,2631984,2631985,2631986,2631987,2631988,2631989,2631990,2631991,2631992,2631993,2631994,2631995,2631996,2631997,2631998,2631999,2632032,2632033,2632034,2632035,2632036,2632037,2632038,2632039,2632040,2632041,2632042,2632043,2632044,2632045,2632046,2632047,2632063,2632064,2632065,2632066,2632067,2632068,2632069,2632070,2632071,2632072,2632073,2632074,2632075,2632076,2632077,2632078,2632079,2632080,2632081,2632082,2632083,2632084,2632085,2632086,2632087,2632088,2632089,2632090,2632091,2632092,2632093,2632094,2632095,2632096,2632097,2632098,2632099,2632100,2632101,2632102,2632103,2632104,2632105,2632106,2632107,2632108,2632109,2632110,2632111,2632112,2632113,2632114,2632115,2632116,2632117,2632118,2632119,2632120,2632121,2632122,2632123,2632124,2632125,2632126,2632127,2632160,2632161,2632162,2632163,2632164,2632165,2632166,2632167,2632168,2632169,2632170,2632171,2632172,2632173,2632174,2632175,2632191],"Grass":[2632262],"Grass Path":[2632655],"Gravel":[2632760],"Green Torch":[2633657,2633658,2633659,2633660,2633661],"Hafnium":[2604728],"Hanging Roots":[2730490],"Hardened Clay":[2633814],"Hardened Glass":[2634187],"Hardened Glass Pane":[2634294],"Hassium":[2604858],"Hay Bale":[2634740,2634741,2634742],"Heat Block":[2578246],"Helium":[2605056],"Holmium":[2605555],"Honeycomb Block":[2722683],"Hopper":[2634976,2634977,2634981,2634982,2634983,2634984,2634985,2634989,2634990,2634991],"Hydrogen":[2605678],"Ice":[2635248],"Indium":[2606007],"Infested Chiseled Stone Brick":[2635303],"Infested Cobblestone":[2635729],"Infested Cracked Stone Brick":[2635915],"Infested Mossy Stone Brick":[2636099],"Infested Stone":[2636356],"Infested Stone Brick":[2636550],"Invisible Bedrock":[2637471],"Iodine":[2606214],"Iridium":[2606518],"Iron":[2606636],"Iron Bars":[2637842],"Iron Block":[2637750],"Iron Door":[2638208,2638209,2638210,2638211,2638212,2638213,2638214,2638215,2638216,2638217,2638218,2638219,2638220,2638221,2638222,2638223,2638224,2638225,2638226,2638227,2638228,2638229,2638230,2638231,2638232,2638233,2638234,2638235,2638236,2638237,2638238,2638239],"Iron Ore":[2638449],"Iron Trapdoor":[2638608,2638609,2638610,2638611,2638612,2638613,2638614,2638615,2638616,2638617,2638618,2638619,2638620,2638621,2638622,2638623],"Item Frame":[2638992,2638993,2638994,2638995,2638996,2638997,2639000,2639001,2639002,2639003,2639004,2639005],"Jack o'Lantern":[2647344,2647345,2647346,2647347],"Jukebox":[2639329],"Jungle Button":[2639456,2639457,2639458,2639459,2639460,2639461,2639464,2639465,2639466,2639467,2639468,2639469],"Jungle Door":[2639744,2639745,2639746,2639747,2639748,2639749,2639750,2639751,2639752,2639753,2639754,2639755,2639756,2639757,2639758,2639759,2639760,2639761,2639762,2639763,2639764,2639765,2639766,2639767,2639768,2639769,2639770,2639771,2639772,2639773,2639774,2639775],"Jungle Fence":[2639966],"Jungle Fence Gate":[2640224,2640225,2640226,2640227,2640228,2640229,2640230,2640231,2640232,2640233,2640234,2640235,2640236,2640237,2640238,2640239],"Jungle Leaves":[2640436,2640437,2640438,2640439],"Jungle Log":[2640640,2640641,2640642,2640643,2640646,2640647],"Jungle Planks":[2641093],"Jungle Pressure Plate":[2641284,2641285],"Jungle Sapling":[2641438,2641439],"Jungle Sign":[2641728,2641729,2641730,2641731,2641732,2641733,2641734,2641735,2641736,2641737,2641738,2641739,2641740,2641741,2641742,2641743],"Jungle Slab":[2642024,2642025,2642026],"Jungle Stairs":[2642424,2642425,2642426,2642427,2642428,2642429,2642430,2642431],"Jungle Trapdoor":[2642448,2642449,2642450,2642451,2642452,2642453,2642454,2642455,2642456,2642457,2642458,2642459,2642460,2642461,2642462,2642463],"Jungle Wall Sign":[2642740,2642741,2642742,2642743],"Jungle Wood":[2643080,2643081,2643084,2643085,2643086,2643087],"Krypton":[2606951],"Lab Table":[2643440,2643441,2643442,2643443],"Ladder":[2643512,2643513,2643514,2643515],"Lantern":[2643756,2643757],"Lanthanum":[2607257],"Lapis Lazuli Block":[2644008],"Lapis Lazuli Ore":[2644357],"Large Fern":[2644516,2644517],"Lava":[2644960,2644961,2644962,2644963,2644964,2644965,2644966,2644967,2644968,2644969,2644970,2644971,2644972,2644973,2644974,2644975,2644976,2644977,2644978,2644979,2644980,2644981,2644982,2644983,2644984,2644985,2644986,2644987,2644988,2644989,2644990,2644991],"Lava Cauldron":[2732152,2732153,2732154,2732155,2732156,2732157],"Lawrencium":[2607523],"Lead":[2607716],"Lectern":[2645160,2645161,2645162,2645163,2645164,2645165,2645166,2645167],"Legacy Stonecutter":[2645272],"Lever":[2645712,2645713,2645714,2645715,2645716,2645717,2645718,2645719,2645720,2645721,2645722,2645723,2645724,2645725,2645726,2645727],"Light Block":[2703840,2703841,2703842,2703843,2703844,2703845,2703846,2703847,2703848,2703849,2703850,2703851,2703852,2703853,2703854,2703855],"Lightning Rod":[2727810,2727811,2727812,2727813,2727814,2727815],"Lilac":[2646394,2646395],"Lily Pad":[2646943],"Lily of the Valley":[2646752],"Lithium":[2608039],"Livermorium":[2608214],"Loom":[2647644,2647645,2647646,2647647],"Lutetium":[2608593],"Magma Block":[2648248],"Magnesium":[2608675],"Manganese":[2608998],"Mangrove Button":[2717056,2717057,2717058,2717059,2717062,2717063,2717064,2717065,2717066,2717067,2717070,2717071],"Mangrove Door":[2718464,2718465,2718466,2718467,2718468,2718469,2718470,2718471,2718472,2718473,2718474,2718475,2718476,2718477,2718478,2718479,2718480,2718481,2718482,2718483,2718484,2718485,2718486,2718487,2718488,2718489,2718490,2718491,2718492,2718493,2718494,2718495],"Mangrove Fence":[2713251],"Mangrove Fence Gate":[2719264,2719265,2719266,2719267,2719268,2719269,2719270,2719271,2719272,2719273,2719274,2719275,2719276,2719277,2719278,2719279],"Mangrove Leaves":[2735556,2735557,2735558,2735559],"Mangrove Log":[2714648,2714649,2714650,2714651,2714654,2714655],"Mangrove Planks":[2712331],"Mangrove Pressure Plate":[2717754,2717755],"Mangrove Roots":[2733326],"Mangrove Sign":[2720800,2720801,2720802,2720803,2720804,2720805,2720806,2720807,2720808,2720809,2720810,2720811,2720812,2720813,2720814,2720815],"Mangrove Slab":[2713985,2713986,2713987],"Mangrove Stairs":[2720112,2720113,2720114,2720115,2720116,2720117,2720118,2720119],"Mangrove Trapdoor":[2716208,2716209,2716210,2716211,2716212,2716213,2716214,2716215,2716216,2716217,2716218,2716219,2716220,2716221,2716222,2716223],"Mangrove Wall Sign":[2721696,2721697,2721698,2721699],"Mangrove Wood":[2715402,2715403,2715404,2715405,2715406,2715407],"Material Reducer":[2648480,2648481,2648482,2648483],"Meitnerium":[2609245],"Melon Block":[2648739],"Melon Stem":[2648832,2648833,2648834,2648835,2648836,2648837,2648838,2648839,2648840,2648841,2648842,2648843,2648844,2648845,2648846,2648847,2648864,2648865,2648866,2648867,2648868,2648869,2648870,2648871,2648880,2648881,2648882,2648883,2648884,2648885,2648886,2648887,2648888,2648889,2648890,2648891,2648892,2648893,2648894,2648895],"Mendelevium":[2609489],"Mercury":[2609777],"Mob Head":[2649216,2649217,2649218,2649219,2649221,2649222,2649223,2649224,2649225,2649226,2649227,2649229,2649230,2649231,2649248,2649249,2649250,2649251,2649253,2649254,2649255,2649264,2649265,2649266,2649267,2649269,2649270,2649271,2649272,2649273,2649274,2649275,2649277,2649278,2649279],"Molybdenum":[2610097],"Monster Spawner":[2649402],"Moscovium":[2610378],"Mossy Cobblestone":[2649741],"Mossy Cobblestone Slab":[2650036,2650038,2650039],"Mossy Cobblestone Stairs":[2650248,2650249,2650250,2650251,2650252,2650253,2650254,2650255],"Mossy Cobblestone Wall":[2650368,2650369,2650370,2650371,2650372,2650373,2650374,2650375,2650376,2650377,2650378,2650379,2650380,2650381,2650382,2650383,2650384,2650385,2650386,2650387,2650388,2650389,2650390,2650391,2650392,2650393,2650394,2650395,2650396,2650397,2650398,2650399,2650400,2650401,2650402,2650403,2650404,2650405,2650406,2650407,2650408,2650409,2650410,2650411,2650412,2650413,2650414,2650415,2650416,2650417,2650418,2650419,2650420,2650421,2650422,2650423,2650424,2650425,2650426,2650427,2650428,2650429,2650430,2650431,2650432,2650433,2650434,2650435,2650436,2650437,2650438,2650439,2650440,2650441,2650442,2650443,2650444,2650445,2650446,2650447,2650450,2650496,2650497,2650498,2650499,2650500,2650501,2650502,2650503,2650504,2650505,2650506,2650507,2650508,2650509,2650510,2650511,2650512,2650513,2650514,2650515,2650516,2650517,2650518,2650519,2650520,2650521,2650522,2650523,2650524,2650525,2650526,2650527,2650528,2650529,2650530,2650531,2650532,2650533,2650534,2650535,2650536,2650537,2650538,2650539,2650540,2650541,2650542,2650543,2650544,2650545,2650546,2650547,2650548,2650549,2650550,2650551,2650552,2650553,2650554,2650555,2650556,2650557,2650558,2650559,2650560,2650561,2650562,2650563,2650564,2650565,2650566,2650567,2650568,2650569,2650570,2650571,2650572,2650573,2650574,2650575,2650578],"Mossy Stone Brick Slab":[2650856,2650857,2650859],"Mossy Stone Brick Stairs":[2650912,2650913,2650914,2650915,2650916,2650917,2650918,2650919],"Mossy Stone Brick Wall":[2651171,2651184,2651185,2651186,2651187,2651188,2651189,2651190,2651191,2651192,2651193,2651194,2651195,2651196,2651197,2651198,2651199,2651200,2651201,2651202,2651203,2651204,2651205,2651206,2651207,2651208,2651209,2651210,2651211,2651212,2651213,2651214,2651215,2651216,2651217,2651218,2651219,2651220,2651221,2651222,2651223,2651224,2651225,2651226,2651227,2651228,2651229,2651230,2651231,2651232,2651233,2651234,2651235,2651236,2651237,2651238,2651239,2651240,2651241,2651242,2651243,2651244,2651245,2651246,2651247,2651248,2651249,2651250,2651251,2651252,2651253,2651254,2651255,2651256,2651257,2651258,2651259,2651260,2651261,2651262,2651263,2651299,2651312,2651313,2651314,2651315,2651316,2651317,2651318,2651319,2651320,2651321,2651322,2651323,2651324,2651325,2651326,2651327,2651328,2651329,2651330,2651331,2651332,2651333,2651334,2651335,2651336,2651337,2651338,2651339,2651340,2651341,2651342,2651343,2651344,2651345,2651346,2651347,2651348,2651349,2651350,2651351,2651352,2651353,2651354,2651355,2651356,2651357,2651358,2651359,2651360,2651361,2651362,2651363,2651364,2651365,2651366,2651367,2651368,2651369,2651370,2651371,2651372,2651373,2651374,2651375,2651376,2651377,2651378,2651379,2651380,2651381,2651382,2651383,2651384,2651385,2651386,2651387,2651388,2651389,2651390,2651391],"Mossy Stone Bricks":[2651617],"Mud":[2725428],"Mud Brick Slab":[2726120,2726122,2726123],"Mud Brick Stairs":[2726152,2726153,2726154,2726155,2726156,2726157,2726158,2726159],"Mud Brick Wall":[2726414,2726416,2726417,2726418,2726419,2726420,2726421,2726422,2726423,2726424,2726425,2726426,2726427,2726428,2726429,2726430,2726431,2726464,2726465,2726466,2726467,2726468,2726469,2726470,2726471,2726472,2726473,2726474,2726475,2726476,2726477,2726478,2726479,2726480,2726481,2726482,2726483,2726484,2726485,2726486,2726487,2726488,2726489,2726490,2726491,2726492,2726493,2726494,2726495,2726496,2726497,2726498,2726499,2726500,2726501,2726502,2726503,2726504,2726505,2726506,2726507,2726508,2726509,2726510,2726511,2726512,2726513,2726514,2726515,2726516,2726517,2726518,2726519,2726520,2726521,2726522,2726523,2726524,2726525,2726526,2726527,2726542,2726544,2726545,2726546,2726547,2726548,2726549,2726550,2726551,2726552,2726553,2726554,2726555,2726556,2726557,2726558,2726559,2726592,2726593,2726594,2726595,2726596,2726597,2726598,2726599,2726600,2726601,2726602,2726603,2726604,2726605,2726606,2726607,2726608,2726609,2726610,2726611,2726612,2726613,2726614,2726615,2726616,2726617,2726618,2726619,2726620,2726621,2726622,2726623,2726624,2726625,2726626,2726627,2726628,2726629,2726630,2726631,2726632,2726633,2726634,2726635,2726636,2726637,2726638,2726639,2726640,2726641,2726642,2726643,2726644,2726645,2726646,2726647,2726648,2726649,2726650,2726651,2726652,2726653,2726654,2726655],"Mud Bricks":[2725644],"Muddy Mangrove Roots":[2733661,2733662,2733663],"Mushroom Stem":[2651775],"Mycelium":[2651923],"Neodymium":[2610514],"Neon":[2610826],"Neptunium":[2610990],"Nether Brick Fence":[2652231],"Nether Brick Slab":[2652416,2652417,2652419],"Nether Brick Stairs":[2652728,2652729,2652730,2652731,2652732,2652733,2652734,2652735],"Nether Brick Wall":[2652960,2652961,2652962,2652963,2652964,2652965,2652966,2652967,2652968,2652969,2652970,2652971,2652972,2652973,2652974,2652975,2652976,2652992,2652993,2652994,2652995,2652996,2652997,2652998,2652999,2653000,2653001,2653002,2653003,2653004,2653005,2653006,2653007,2653008,2653009,2653010,2653011,2653012,2653013,2653014,2653015,2653016,2653017,2653018,2653019,2653020,2653021,2653022,2653023,2653024,2653025,2653026,2653027,2653028,2653029,2653030,2653031,2653032,2653033,2653034,2653035,2653036,2653037,2653038,2653039,2653040,2653041,2653042,2653043,2653044,2653045,2653046,2653047,2653048,2653049,2653050,2653051,2653052,2653053,2653054,2653055,2653088,2653089,2653090,2653091,2653092,2653093,2653094,2653095,2653096,2653097,2653098,2653099,2653100,2653101,2653102,2653103,2653104,2653120,2653121,2653122,2653123,2653124,2653125,2653126,2653127,2653128,2653129,2653130,2653131,2653132,2653133,2653134,2653135,2653136,2653137,2653138,2653139,2653140,2653141,2653142,2653143,2653144,2653145,2653146,2653147,2653148,2653149,2653150,2653151,2653152,2653153,2653154,2653155,2653156,2653157,2653158,2653159,2653160,2653161,2653162,2653163,2653164,2653165,2653166,2653167,2653168,2653169,2653170,2653171,2653172,2653173,2653174,2653175,2653176,2653177,2653178,2653179,2653180,2653181,2653182,2653183],"Nether Bricks":[2653384],"Nether Gold Ore":[2725267],"Nether Portal":[2653688,2653689],"Nether Quartz Ore":[2653911],"Nether Reactor Core":[2654168],"Nether Wart":[2654340,2654341,2654342,2654343],"Nether Wart Block":[2654551],"Netherite Block":[2731038],"Netherrack":[2654902],"Nickel":[2611380],"Nihonium":[2611595],"Niobium":[2611854],"Nitrogen":[2612104],"Nobelium":[2612380],"Note Block":[2655190],"Oak Button":[2655248,2655249,2655252,2655253,2655254,2655255,2655256,2655257,2655260,2655261,2655262,2655263],"Oak Door":[2655488,2655489,2655490,2655491,2655492,2655493,2655494,2655495,2655496,2655497,2655498,2655499,2655500,2655501,2655502,2655503,2655504,2655505,2655506,2655507,2655508,2655509,2655510,2655511,2655512,2655513,2655514,2655515,2655516,2655517,2655518,2655519],"Oak Fence":[2655762],"Oak Fence Gate":[2656048,2656049,2656050,2656051,2656052,2656053,2656054,2656055,2656056,2656057,2656058,2656059,2656060,2656061,2656062,2656063],"Oak Leaves":[2656456,2656457,2656458,2656459],"Oak Log":[2656744,2656745,2656748,2656749,2656750,2656751],"Oak Planks":[2656848],"Oak Pressure Plate":[2657232,2657233],"Oak Sapling":[2657502,2657503],"Oak Sign":[2657664,2657665,2657666,2657667,2657668,2657669,2657670,2657671,2657672,2657673,2657674,2657675,2657676,2657677,2657678,2657679],"Oak Slab":[2658037,2658038,2658039],"Oak Stairs":[2658136,2658137,2658138,2658139,2658140,2658141,2658142,2658143],"Oak Trapdoor":[2658352,2658353,2658354,2658355,2658356,2658357,2658358,2658359,2658360,2658361,2658362,2658363,2658364,2658365,2658366,2658367],"Oak Wall Sign":[2658632,2658633,2658634,2658635],"Oak Wood":[2658906,2658907,2658908,2658909,2658910,2658911],"Obsidian":[2659231],"Oganesson":[2612732],"Orange Tulip":[2659739],"Osmium":[2612890],"Oxeye Daisy":[2659907],"Oxygen":[2613005],"Packed Ice":[2660280],"Packed Mud":[2726845],"Palladium":[2613267],"Peony":[2660372,2660373],"Phosphorus":[2613733],"Pink Petals":[2741648,2741649,2741650,2741651,2741652,2741653,2741654,2741655,2741656,2741657,2741658,2741659,2741660,2741661,2741662,2741663],"Pink Tulip":[2660949],"Pitcher Crop":[2743389,2743390,2743391],"Pitcher Plant":[2743082,2743083],"Platinum":[2613891],"Plutonium":[2614020],"Podzol":[2661333],"Polished Andesite":[2661619],"Polished Andesite Slab":[2661708,2661709,2661711],"Polished Andesite Stairs":[2661936,2661937,2661938,2661939,2661940,2661941,2661942,2661943],"Polished Basalt":[2699104,2699106,2699107],"Polished Blackstone":[2700544],"Polished Blackstone Brick Slab":[2702664,2702665,2702666],"Polished Blackstone Brick Stairs":[2703056,2703057,2703058,2703059,2703060,2703061,2703062,2703063],"Polished Blackstone Brick Wall":[2703104,2703105,2703106,2703107,2703108,2703109,2703110,2703111,2703112,2703113,2703114,2703115,2703116,2703117,2703118,2703119,2703120,2703121,2703122,2703123,2703124,2703125,2703126,2703127,2703128,2703129,2703130,2703131,2703132,2703133,2703134,2703135,2703136,2703137,2703138,2703139,2703140,2703141,2703142,2703143,2703144,2703145,2703146,2703147,2703148,2703149,2703150,2703151,2703152,2703153,2703154,2703155,2703156,2703157,2703158,2703159,2703160,2703161,2703162,2703163,2703164,2703165,2703166,2703167,2703168,2703184,2703185,2703186,2703187,2703188,2703189,2703190,2703191,2703192,2703193,2703194,2703195,2703196,2703197,2703198,2703199,2703232,2703233,2703234,2703235,2703236,2703237,2703238,2703239,2703240,2703241,2703242,2703243,2703244,2703245,2703246,2703247,2703248,2703249,2703250,2703251,2703252,2703253,2703254,2703255,2703256,2703257,2703258,2703259,2703260,2703261,2703262,2703263,2703264,2703265,2703266,2703267,2703268,2703269,2703270,2703271,2703272,2703273,2703274,2703275,2703276,2703277,2703278,2703279,2703280,2703281,2703282,2703283,2703284,2703285,2703286,2703287,2703288,2703289,2703290,2703291,2703292,2703293,2703294,2703295,2703296,2703312,2703313,2703314,2703315,2703316,2703317,2703318,2703319,2703320,2703321,2703322,2703323,2703324,2703325,2703326,2703327],"Polished Blackstone Bricks":[2702454],"Polished Blackstone Button":[2701040,2701041,2701042,2701043,2701044,2701045,2701048,2701049,2701050,2701051,2701052,2701053],"Polished Blackstone Pressure Plate":[2701220,2701221],"Polished Blackstone Slab":[2701428,2701429,2701430],"Polished Blackstone Stairs":[2701744,2701745,2701746,2701747,2701748,2701749,2701750,2701751],"Polished Blackstone Wall":[2701824,2701825,2701826,2701827,2701828,2701829,2701830,2701831,2701832,2701833,2701834,2701835,2701836,2701837,2701838,2701839,2701840,2701841,2701842,2701843,2701844,2701845,2701846,2701847,2701848,2701849,2701850,2701851,2701852,2701853,2701854,2701855,2701856,2701857,2701858,2701859,2701860,2701861,2701862,2701863,2701864,2701865,2701866,2701867,2701868,2701869,2701870,2701871,2701872,2701873,2701874,2701875,2701876,2701877,2701878,2701879,2701880,2701881,2701882,2701883,2701884,2701885,2701886,2701887,2701893,2701904,2701905,2701906,2701907,2701908,2701909,2701910,2701911,2701912,2701913,2701914,2701915,2701916,2701917,2701918,2701919,2701952,2701953,2701954,2701955,2701956,2701957,2701958,2701959,2701960,2701961,2701962,2701963,2701964,2701965,2701966,2701967,2701968,2701969,2701970,2701971,2701972,2701973,2701974,2701975,2701976,2701977,2701978,2701979,2701980,2701981,2701982,2701983,2701984,2701985,2701986,2701987,2701988,2701989,2701990,2701991,2701992,2701993,2701994,2701995,2701996,2701997,2701998,2701999,2702000,2702001,2702002,2702003,2702004,2702005,2702006,2702007,2702008,2702009,2702010,2702011,2702012,2702013,2702014,2702015,2702021,2702032,2702033,2702034,2702035,2702036,2702037,2702038,2702039,2702040,2702041,2702042,2702043,2702044,2702045,2702046,2702047],"Polished Deepslate":[2708955],"Polished Deepslate Slab":[2709068,2709070,2709071],"Polished Deepslate Stairs":[2709296,2709297,2709298,2709299,2709300,2709301,2709302,2709303],"Polished Deepslate Wall":[2709548,2709552,2709553,2709554,2709555,2709556,2709557,2709558,2709559,2709560,2709561,2709562,2709563,2709564,2709565,2709566,2709567,2709568,2709569,2709570,2709571,2709572,2709573,2709574,2709575,2709576,2709577,2709578,2709579,2709580,2709581,2709582,2709583,2709584,2709585,2709586,2709587,2709588,2709589,2709590,2709591,2709592,2709593,2709594,2709595,2709596,2709597,2709598,2709599,2709600,2709601,2709602,2709603,2709604,2709605,2709606,2709607,2709608,2709609,2709610,2709611,2709612,2709613,2709614,2709615,2709616,2709617,2709618,2709619,2709620,2709621,2709622,2709623,2709624,2709625,2709626,2709627,2709628,2709629,2709630,2709631,2709676,2709680,2709681,2709682,2709683,2709684,2709685,2709686,2709687,2709688,2709689,2709690,2709691,2709692,2709693,2709694,2709695,2709696,2709697,2709698,2709699,2709700,2709701,2709702,2709703,2709704,2709705,2709706,2709707,2709708,2709709,2709710,2709711,2709712,2709713,2709714,2709715,2709716,2709717,2709718,2709719,2709720,2709721,2709722,2709723,2709724,2709725,2709726,2709727,2709728,2709729,2709730,2709731,2709732,2709733,2709734,2709735,2709736,2709737,2709738,2709739,2709740,2709741,2709742,2709743,2709744,2709745,2709746,2709747,2709748,2709749,2709750,2709751,2709752,2709753,2709754,2709755,2709756,2709757,2709758,2709759],"Polished Diorite":[2662301],"Polished Diorite Slab":[2662512,2662514,2662515],"Polished Diorite Stairs":[2662736,2662737,2662738,2662739,2662740,2662741,2662742,2662743],"Polished Granite":[2663058],"Polished Granite Slab":[2663312,2663313,2663315],"Polished Granite Stairs":[2663568,2663569,2663570,2663571,2663572,2663573,2663574,2663575],"Polonium":[2614482],"Poppy":[2663844],"Potassium":[2614731],"Potato Block":[2664136,2664137,2664138,2664139,2664140,2664141,2664142,2664143],"Potion Cauldron":[2732432,2732433,2732434,2732435,2732436,2732437],"Powered Rail":[2664336,2664337,2664338,2664339,2664342,2664343,2664344,2664345,2664346,2664347,2664350,2664351],"Praseodymium":[2614802],"Prismarine":[2664586],"Prismarine Bricks":[2664928],"Prismarine Bricks Slab":[2665044,2665046,2665047],"Prismarine Bricks Stairs":[2665456,2665457,2665458,2665459,2665460,2665461,2665462,2665463],"Prismarine Slab":[2665496,2665497,2665499],"Prismarine Stairs":[2665944,2665945,2665946,2665947,2665948,2665949,2665950,2665951],"Prismarine Wall":[2665984,2665985,2665986,2665987,2665988,2665989,2665990,2665991,2665992,2665993,2665994,2665995,2665996,2665997,2665998,2665999,2666000,2666001,2666002,2666003,2666004,2666005,2666006,2666007,2666008,2666009,2666010,2666011,2666012,2666013,2666014,2666015,2666016,2666017,2666018,2666019,2666020,2666021,2666022,2666023,2666024,2666025,2666026,2666027,2666028,2666029,2666030,2666031,2666032,2666033,2666034,2666035,2666036,2666037,2666038,2666039,2666040,2666041,2666042,2666043,2666044,2666045,2666046,2666047,2666086,2666096,2666097,2666098,2666099,2666100,2666101,2666102,2666103,2666104,2666105,2666106,2666107,2666108,2666109,2666110,2666111,2666112,2666113,2666114,2666115,2666116,2666117,2666118,2666119,2666120,2666121,2666122,2666123,2666124,2666125,2666126,2666127,2666128,2666129,2666130,2666131,2666132,2666133,2666134,2666135,2666136,2666137,2666138,2666139,2666140,2666141,2666142,2666143,2666144,2666145,2666146,2666147,2666148,2666149,2666150,2666151,2666152,2666153,2666154,2666155,2666156,2666157,2666158,2666159,2666160,2666161,2666162,2666163,2666164,2666165,2666166,2666167,2666168,2666169,2666170,2666171,2666172,2666173,2666174,2666175,2666214,2666224,2666225,2666226,2666227,2666228,2666229,2666230,2666231,2666232,2666233,2666234,2666235,2666236,2666237,2666238,2666239],"Promethium":[2615041],"Protactinium":[2615321],"Pumpkin":[2666408],"Pumpkin Stem":[2666704,2666705,2666706,2666707,2666708,2666709,2666710,2666711,2666712,2666713,2666714,2666715,2666716,2666717,2666718,2666719,2666720,2666721,2666722,2666723,2666724,2666725,2666726,2666727,2666728,2666729,2666730,2666731,2666732,2666733,2666734,2666735,2666736,2666737,2666738,2666739,2666740,2666741,2666742,2666743],"Purple Torch":[2667018,2667019,2667020,2667021,2667022],"Purpur Block":[2667467],"Purpur Pillar":[2667649,2667650,2667651],"Purpur Slab":[2667944,2667945,2667946],"Purpur Stairs":[2668208,2668209,2668210,2668211,2668212,2668213,2668214,2668215],"Quartz Block":[2668351],"Quartz Bricks":[2709837],"Quartz Pillar":[2668756,2668757,2668759],"Quartz Slab":[2668896,2668897,2668899],"Quartz Stairs":[2669256,2669257,2669258,2669259,2669260,2669261,2669262,2669263],"Radium":[2615578],"Radon":[2615978],"Rail":[2669510,2669511,2669512,2669513,2669514,2669515,2669516,2669517,2669518,2669519],"Raw Copper Block":[2703999],"Raw Gold Block":[2704169],"Raw Iron Block":[2704423],"Red Mushroom":[2670074],"Red Mushroom Block":[2670289,2670290,2670291,2670296,2670297,2670298,2670299,2670300,2670301,2670302,2670303],"Red Nether Brick Slab":[2670564,2670566,2670567],"Red Nether Brick Stairs":[2670728,2670729,2670730,2670731,2670732,2670733,2670734,2670735],"Red Nether Brick Wall":[2670848,2670849,2670850,2670851,2670852,2670853,2670854,2670855,2670856,2670857,2670858,2670859,2670860,2670861,2670862,2670863,2670864,2670865,2670866,2670867,2670868,2670869,2670870,2670871,2670872,2670873,2670874,2670875,2670876,2670877,2670878,2670879,2670880,2670881,2670882,2670883,2670884,2670885,2670886,2670887,2670888,2670889,2670890,2670891,2670892,2670893,2670894,2670895,2670896,2670897,2670898,2670899,2670900,2670901,2670902,2670903,2670904,2670905,2670906,2670907,2670908,2670909,2670910,2670911,2670912,2670928,2670929,2670930,2670931,2670932,2670933,2670934,2670935,2670936,2670937,2670938,2670939,2670940,2670941,2670942,2670943,2670976,2670977,2670978,2670979,2670980,2670981,2670982,2670983,2670984,2670985,2670986,2670987,2670988,2670989,2670990,2670991,2670992,2670993,2670994,2670995,2670996,2670997,2670998,2670999,2671000,2671001,2671002,2671003,2671004,2671005,2671006,2671007,2671008,2671009,2671010,2671011,2671012,2671013,2671014,2671015,2671016,2671017,2671018,2671019,2671020,2671021,2671022,2671023,2671024,2671025,2671026,2671027,2671028,2671029,2671030,2671031,2671032,2671033,2671034,2671035,2671036,2671037,2671038,2671039,2671040,2671056,2671057,2671058,2671059,2671060,2671061,2671062,2671063,2671064,2671065,2671066,2671067,2671068,2671069,2671070,2671071],"Red Nether Bricks":[2671192],"Red Sand":[2671467],"Red Sandstone":[2671858],"Red Sandstone Slab":[2671948,2671949,2671950],"Red Sandstone Stairs":[2672360,2672361,2672362,2672363,2672364,2672365,2672366,2672367],"Red Sandstone Wall":[2672384,2672385,2672386,2672387,2672388,2672389,2672390,2672391,2672392,2672393,2672394,2672395,2672396,2672397,2672398,2672399,2672415,2672448,2672449,2672450,2672451,2672452,2672453,2672454,2672455,2672456,2672457,2672458,2672459,2672460,2672461,2672462,2672463,2672464,2672465,2672466,2672467,2672468,2672469,2672470,2672471,2672472,2672473,2672474,2672475,2672476,2672477,2672478,2672479,2672480,2672481,2672482,2672483,2672484,2672485,2672486,2672487,2672488,2672489,2672490,2672491,2672492,2672493,2672494,2672495,2672496,2672497,2672498,2672499,2672500,2672501,2672502,2672503,2672504,2672505,2672506,2672507,2672508,2672509,2672510,2672511,2672512,2672513,2672514,2672515,2672516,2672517,2672518,2672519,2672520,2672521,2672522,2672523,2672524,2672525,2672526,2672527,2672543,2672576,2672577,2672578,2672579,2672580,2672581,2672582,2672583,2672584,2672585,2672586,2672587,2672588,2672589,2672590,2672591,2672592,2672593,2672594,2672595,2672596,2672597,2672598,2672599,2672600,2672601,2672602,2672603,2672604,2672605,2672606,2672607,2672608,2672609,2672610,2672611,2672612,2672613,2672614,2672615,2672616,2672617,2672618,2672619,2672620,2672621,2672622,2672623,2672624,2672625,2672626,2672627,2672628,2672629,2672630,2672631,2672632,2672633,2672634,2672635,2672636,2672637,2672638,2672639],"Red Torch":[2672754,2672755,2672756,2672757,2672759],"Red Tulip":[2673099],"Redstone":[2674800,2674801,2674802,2674803,2674804,2674805,2674806,2674807,2674808,2674809,2674810,2674811,2674812,2674813,2674814,2674815],"Redstone Block":[2673334],"Redstone Comparator":[2673536,2673537,2673538,2673539,2673540,2673541,2673542,2673543,2673544,2673545,2673546,2673547,2673548,2673549,2673550,2673551],"Redstone Lamp":[2673716,2673717],"Redstone Ore":[2674064,2674065],"Redstone Repeater":[2674208,2674209,2674210,2674211,2674212,2674213,2674214,2674215,2674216,2674217,2674218,2674219,2674220,2674221,2674222,2674223,2674224,2674225,2674226,2674227,2674228,2674229,2674230,2674231,2674232,2674233,2674234,2674235,2674236,2674237,2674238,2674239],"Redstone Torch":[2674449,2674450,2674451,2674452,2674453,2674457,2674458,2674459,2674460,2674461],"Reinforced Deepslate":[2736204],"Rhenium":[2616206],"Rhodium":[2616344],"Roentgenium":[2616649],"Rose Bush":[2675240,2675241],"Rubidium":[2617054],"Ruthenium":[2617239],"Rutherfordium":[2617506],"Samarium":[2617838],"Sand":[2675615],"Sandstone":[2675846],"Sandstone Slab":[2676069,2676070,2676071],"Sandstone Stairs":[2676280,2676281,2676282,2676283,2676284,2676285,2676286,2676287],"Sandstone Wall":[2676480,2676481,2676482,2676483,2676484,2676485,2676486,2676487,2676488,2676489,2676490,2676491,2676492,2676493,2676494,2676495,2676496,2676497,2676498,2676499,2676500,2676501,2676502,2676503,2676504,2676505,2676506,2676507,2676508,2676509,2676510,2676511,2676512,2676513,2676514,2676515,2676516,2676517,2676518,2676519,2676520,2676521,2676522,2676523,2676524,2676525,2676526,2676527,2676528,2676529,2676530,2676531,2676532,2676533,2676534,2676535,2676536,2676537,2676538,2676539,2676540,2676541,2676542,2676543,2676544,2676545,2676546,2676547,2676548,2676549,2676550,2676551,2676552,2676553,2676554,2676555,2676556,2676557,2676558,2676559,2676567,2676608,2676609,2676610,2676611,2676612,2676613,2676614,2676615,2676616,2676617,2676618,2676619,2676620,2676621,2676622,2676623,2676624,2676625,2676626,2676627,2676628,2676629,2676630,2676631,2676632,2676633,2676634,2676635,2676636,2676637,2676638,2676639,2676640,2676641,2676642,2676643,2676644,2676645,2676646,2676647,2676648,2676649,2676650,2676651,2676652,2676653,2676654,2676655,2676656,2676657,2676658,2676659,2676660,2676661,2676662,2676663,2676664,2676665,2676666,2676667,2676668,2676669,2676670,2676671,2676672,2676673,2676674,2676675,2676676,2676677,2676678,2676679,2676680,2676681,2676682,2676683,2676684,2676685,2676686,2676687,2676695],"Scandium":[2618051],"Sculk":[2735063],"Sea Lantern":[2676975],"Sea Pickle":[2677120,2677121,2677122,2677123,2677124,2677125,2677126,2677127],"Seaborgium":[2618158],"Selenium":[2618595],"Shroomlight":[2712156],"Shulker Box":[2677267],"Silicon":[2618823],"Silver":[2618883],"Slime Block":[2677570],"Small Dripleaf":[2740888,2740889,2740890,2740891,2740892,2740893,2740894,2740895],"Smithing Table":[2730807],"Smoker":[2677856,2677857,2677858,2677859,2677860,2677861,2677862,2677863],"Smooth Basalt":[2699389],"Smooth Quartz Block":[2678217],"Smooth Quartz Slab":[2678360,2678361,2678362],"Smooth Quartz Stairs":[2678528,2678529,2678530,2678531,2678532,2678533,2678534,2678535],"Smooth Red Sandstone":[2678812],"Smooth Red Sandstone Slab":[2679085,2679086,2679087],"Smooth Red Sandstone Stairs":[2679320,2679321,2679322,2679323,2679324,2679325,2679326,2679327],"Smooth Sandstone":[2679586],"Smooth Sandstone Slab":[2679961,2679962,2679963],"Smooth Sandstone Stairs":[2680304,2680305,2680306,2680307,2680308,2680309,2680310,2680311],"Smooth Stone":[2680534],"Smooth Stone Slab":[2680648,2680649,2680651],"Snow Block":[2681036],"Snow Layer":[2681096,2681097,2681098,2681099,2681100,2681101,2681102,2681103],"Sodium":[2619314],"Soul Fire":[2711944],"Soul Lantern":[2711536,2711537],"Soul Sand":[2681478],"Soul Soil":[2711638],"Soul Torch":[2711144,2711145,2711148,2711150,2711151],"Sponge":[2681812,2681813],"Spore Blossom":[2731516],"Spruce Button":[2681904,2681905,2681906,2681907,2681908,2681909,2681912,2681913,2681914,2681915,2681916,2681917],"Spruce Door":[2682336,2682337,2682338,2682339,2682340,2682341,2682342,2682343,2682344,2682345,2682346,2682347,2682348,2682349,2682350,2682351,2682352,2682353,2682354,2682355,2682356,2682357,2682358,2682359,2682360,2682361,2682362,2682363,2682364,2682365,2682366,2682367],"Spruce Fence":[2682543],"Spruce Fence Gate":[2682864,2682865,2682866,2682867,2682868,2682869,2682870,2682871,2682872,2682873,2682874,2682875,2682876,2682877,2682878,2682879],"Spruce Leaves":[2682984,2682985,2682986,2682987],"Spruce Log":[2683256,2683257,2683260,2683261,2683262,2683263],"Spruce Planks":[2683538],"Spruce Pressure Plate":[2683658,2683659],"Spruce Sapling":[2683996,2683997],"Spruce Sign":[2684304,2684305,2684306,2684307,2684308,2684309,2684310,2684311,2684312,2684313,2684314,2684315,2684316,2684317,2684318,2684319],"Spruce Slab":[2684648,2684649,2684650],"Spruce Stairs":[2684752,2684753,2684754,2684755,2684756,2684757,2684758,2684759],"Spruce Trapdoor":[2684976,2684977,2684978,2684979,2684980,2684981,2684982,2684983,2684984,2684985,2684986,2684987,2684988,2684989,2684990,2684991],"Spruce Wall Sign":[2685424,2685425,2685426,2685427],"Spruce Wood":[2685552,2685553,2685554,2685555,2685558,2685559],"Stained Clay":[2685760,2685761,2685762,2685763,2685764,2685765,2685766,2685767,2685768,2685769,2685770,2685771,2685772,2685773,2685774,2685775],"Stained Glass":[2686128,2686129,2686130,2686131,2686132,2686133,2686134,2686135,2686136,2686137,2686138,2686139,2686140,2686141,2686142,2686143],"Stained Glass Pane":[2686336,2686337,2686338,2686339,2686340,2686341,2686342,2686343,2686344,2686345,2686346,2686347,2686348,2686349,2686350,2686351],"Stained Hardened Glass":[2686480,2686481,2686482,2686483,2686484,2686485,2686486,2686487,2686488,2686489,2686490,2686491,2686492,2686493,2686494,2686495],"Stained Hardened Glass Pane":[2686816,2686817,2686818,2686819,2686820,2686821,2686822,2686823,2686824,2686825,2686826,2686827,2686828,2686829,2686830,2686831],"Stone":[2687220],"Stone Brick Slab":[2687324,2687325,2687326],"Stone Brick Stairs":[2687576,2687577,2687578,2687579,2687580,2687581,2687582,2687583],"Stone Brick Wall":[2687744,2687745,2687746,2687747,2687748,2687749,2687750,2687751,2687752,2687753,2687754,2687755,2687756,2687757,2687758,2687759,2687773,2687808,2687809,2687810,2687811,2687812,2687813,2687814,2687815,2687816,2687817,2687818,2687819,2687820,2687821,2687822,2687823,2687824,2687825,2687826,2687827,2687828,2687829,2687830,2687831,2687832,2687833,2687834,2687835,2687836,2687837,2687838,2687839,2687840,2687841,2687842,2687843,2687844,2687845,2687846,2687847,2687848,2687849,2687850,2687851,2687852,2687853,2687854,2687855,2687856,2687857,2687858,2687859,2687860,2687861,2687862,2687863,2687864,2687865,2687866,2687867,2687868,2687869,2687870,2687871,2687872,2687873,2687874,2687875,2687876,2687877,2687878,2687879,2687880,2687881,2687882,2687883,2687884,2687885,2687886,2687887,2687901,2687936,2687937,2687938,2687939,2687940,2687941,2687942,2687943,2687944,2687945,2687946,2687947,2687948,2687949,2687950,2687951,2687952,2687953,2687954,2687955,2687956,2687957,2687958,2687959,2687960,2687961,2687962,2687963,2687964,2687965,2687966,2687967,2687968,2687969,2687970,2687971,2687972,2687973,2687974,2687975,2687976,2687977,2687978,2687979,2687980,2687981,2687982,2687983,2687984,2687985,2687986,2687987,2687988,2687989,2687990,2687991,2687992,2687993,2687994,2687995,2687996,2687997,2687998,2687999],"Stone Bricks":[2688134],"Stone Button":[2688384,2688385,2688386,2688387,2688390,2688391,2688392,2688393,2688394,2688395,2688398,2688399],"Stone Pressure Plate":[2688516,2688517],"Stone Slab":[2688849,2688850,2688851],"Stone Stairs":[2689024,2689025,2689026,2689027,2689028,2689029,2689030,2689031],"Stonecutter":[2689512,2689513,2689514,2689515],"Strontium":[2619420],"Sugarcane":[2692608,2692609,2692610,2692611,2692612,2692613,2692614,2692615,2692616,2692617,2692618,2692619,2692620,2692621,2692622,2692623],"Sulfur":[2619764],"Sunflower":[2692922,2692923],"Sweet Berry Bush":[2693156,2693157,2693158,2693159],"TNT":[2693812,2693813,2693814,2693815],"Tall Grass":[2693586],"Tantalum":[2620091],"Technetium":[2620391],"Tellurium":[2620512],"Tennessine":[2620797],"Terbium":[2621111],"Thallium":[2621248],"Thorium":[2621635],"Thulium":[2621706],"Tin":[2621963],"Tinted Glass":[2722326],"Titanium":[2622431],"Torch":[2694042,2694043,2694044,2694045,2694047],"Torchflower":[2742639],"Torchflower Crop":[2743028,2743029],"Trapped Chest":[2694232,2694233,2694234,2694235],"Tripwire":[2694640,2694641,2694642,2694643,2694644,2694645,2694646,2694647,2694648,2694649,2694650,2694651,2694652,2694653,2694654,2694655],"Tripwire Hook":[2694880,2694881,2694882,2694883,2694884,2694885,2694886,2694887,2694888,2694889,2694890,2694891,2694892,2694893,2694894,2694895],"Tuff":[2710882],"Tungsten":[2622683],"Twisting Vines":[2734080,2734081,2734082,2734083,2734084,2734085,2734086,2734087,2734088,2734089,2734090,2734091,2734092,2734093,2734094,2734095,2734096,2734097,2734104,2734105,2734106,2734107,2734108,2734109,2734110,2734111],"Underwater Torch":[2695096,2695097,2695100,2695102,2695103],"Uranium":[2622970],"Vanadium":[2623035],"Vines":[2695168,2695169,2695170,2695171,2695172,2695173,2695174,2695175,2695176,2695177,2695178,2695179,2695180,2695181,2695182,2695183],"Wall Banner":[2695424,2695425,2695426,2695427,2695428,2695429,2695430,2695431,2695432,2695433,2695434,2695435,2695436,2695437,2695438,2695439,2695440,2695441,2695442,2695443,2695444,2695445,2695446,2695447,2695448,2695449,2695450,2695451,2695452,2695453,2695454,2695455,2695456,2695457,2695458,2695459,2695460,2695461,2695462,2695463,2695464,2695465,2695466,2695467,2695468,2695469,2695470,2695471,2695472,2695473,2695474,2695475,2695476,2695477,2695478,2695479,2695480,2695481,2695482,2695483,2695484,2695485,2695486,2695487],"Wall Coral Fan":[2695744,2695748,2695749,2695750,2695751,2695752,2695756,2695757,2695758,2695759,2695760,2695764,2695765,2695766,2695767,2695768,2695772,2695773,2695774,2695775,2695776,2695780,2695781,2695782,2695783,2695784,2695788,2695789,2695790,2695791,2695792,2695796,2695797,2695798,2695799,2695800,2695804,2695805,2695806,2695807],"Warped Button":[2717680,2717681,2717684,2717685,2717686,2717687,2717688,2717689,2717692,2717693,2717694,2717695],"Warped Door":[2719072,2719073,2719074,2719075,2719076,2719077,2719078,2719079,2719080,2719081,2719082,2719083,2719084,2719085,2719086,2719087,2719088,2719089,2719090,2719091,2719092,2719093,2719094,2719095,2719096,2719097,2719098,2719099,2719100,2719101,2719102,2719103],"Warped Fence":[2713754],"Warped Fence Gate":[2719872,2719873,2719874,2719875,2719876,2719877,2719878,2719879,2719880,2719881,2719882,2719883,2719884,2719885,2719886,2719887],"Warped Hyphae":[2716136,2716137,2716140,2716141,2716142,2716143],"Warped Planks":[2712965],"Warped Pressure Plate":[2718280,2718281],"Warped Roots":[2742193],"Warped Sign":[2721328,2721329,2721330,2721331,2721332,2721333,2721334,2721335,2721336,2721337,2721338,2721339,2721340,2721341,2721342,2721343],"Warped Slab":[2714460,2714462,2714463],"Warped Stairs":[2720552,2720553,2720554,2720555,2720556,2720557,2720558,2720559],"Warped Stem":[2715288,2715289,2715292,2715293,2715294,2715295],"Warped Trapdoor":[2716816,2716817,2716818,2716819,2716820,2716821,2716822,2716823,2716824,2716825,2716826,2716827,2716828,2716829,2716830,2716831],"Warped Wall Sign":[2722096,2722097,2722098,2722099],"Warped Wart Block":[2726917],"Water":[2696032,2696033,2696034,2696035,2696036,2696037,2696038,2696039,2696040,2696041,2696042,2696043,2696044,2696045,2696046,2696047,2696048,2696049,2696050,2696051,2696052,2696053,2696054,2696055,2696056,2696057,2696058,2696059,2696060,2696061,2696062,2696063],"Water Cauldron":[2731792,2731793,2731794,2731795,2731798,2731799],"Weeping Vines":[2734464,2734465,2734466,2734467,2734468,2734469,2734470,2734471,2734472,2734473,2734474,2734475,2734476,2734477,2734478,2734479,2734480,2734481,2734482,2734483,2734484,2734485,2734486,2734487,2734494,2734495],"Weighted Pressure Plate Heavy":[2696432,2696433,2696434,2696435,2696436,2696437,2696438,2696439,2696440,2696441,2696442,2696443,2696444,2696445,2696446,2696447],"Weighted Pressure Plate Light":[2696512,2696513,2696514,2696515,2696516,2696517,2696518,2696519,2696520,2696521,2696522,2696523,2696524,2696525,2696526,2696527],"Wheat Block":[2696832,2696833,2696834,2696835,2696836,2696837,2696838,2696839],"White Tulip":[2697468],"Wither Rose":[2730127],"Wool":[2697712,2697713,2697714,2697715,2697716,2697717,2697718,2697719,2697720,2697721,2697722,2697723,2697724,2697725,2697726,2697727],"Xenon":[2623487],"Ytterbium":[2623729],"Yttrium":[2623770],"Zinc":[2624344],"Zirconium":[2624538],"ate!upd":[2637070],"reserved6":[2675188],"update!":[2636948]},"stateDataBits":8} \ No newline at end of file +{"knownStates":{"???":[20992881],"Acacia Button":[20482064,20482065,20482068,20482069,20482070,20482071,20482072,20482073,20482076,20482077,20482078,20482079],"Acacia Door":[20484288,20484289,20484290,20484291,20484292,20484293,20484294,20484295,20484296,20484297,20484298,20484299,20484300,20484301,20484302,20484303,20484304,20484305,20484306,20484307,20484308,20484309,20484310,20484311,20484312,20484313,20484314,20484315,20484316,20484317,20484318,20484319],"Acacia Fence":[20487161],"Acacia Fence Gate":[20489840,20489841,20489842,20489843,20489844,20489845,20489846,20489847,20489848,20489849,20489850,20489851,20489852,20489853,20489854,20489855],"Acacia Leaves":[20490916,20490917,20490918,20490919],"Acacia Log":[20492840,20492841,20492842,20492843,20492846,20492847],"Acacia Planks":[20496170],"Acacia Pressure Plate":[20497912,20497913],"Acacia Sapling":[20499538,20499539],"Acacia Sign":[20502272,20502273,20502274,20502275,20502276,20502277,20502278,20502279,20502280,20502281,20502282,20502283,20502284,20502285,20502286,20502287],"Acacia Slab":[20502804,20502805,20502806],"Acacia Stairs":[20504680,20504681,20504682,20504683,20504684,20504685,20504686,20504687],"Acacia Trapdoor":[20508544,20508545,20508546,20508547,20508548,20508549,20508550,20508551,20508552,20508553,20508554,20508555,20508556,20508557,20508558,20508559],"Acacia Wall Sign":[20508856,20508857,20508858,20508859],"Acacia Wood":[20511120,20511121,20511122,20511123,20511124,20511125],"Actinium":[20754337],"Activator Rail":[20513778,20513779,20513780,20513781,20513782,20513783,20513786,20513787,20513788,20513789,20513790,20513791],"Air":[20481500],"All Sided Mushroom Stem":[20515945],"Allium":[20517436],"Aluminum":[20756409],"Americium":[20756900],"Amethyst":[21587565],"Amethyst Cluster":[21582624,21582625,21582626,21582627,21582628,21582629,21582630,21582631,21582632,21582633,21582634,21582635,21582636,21582637,21582638,21582639,21582640,21582641,21582642,21582643,21582644,21582645,21582646,21582647],"Ancient Debris":[21589690],"Andesite":[20520193],"Andesite Slab":[20521816,20521818,20521819],"Andesite Stairs":[20523416,20523417,20523418,20523419,20523420,20523421,20523422,20523423],"Andesite Wall":[20525824,20525825,20525826,20525827,20525828,20525829,20525830,20525831,20525832,20525833,20525834,20525835,20525836,20525837,20525838,20525839,20525846,20525888,20525889,20525890,20525891,20525892,20525893,20525894,20525895,20525896,20525897,20525898,20525899,20525900,20525901,20525902,20525903,20525904,20525905,20525906,20525907,20525908,20525909,20525910,20525911,20525912,20525913,20525914,20525915,20525916,20525917,20525918,20525919,20525920,20525921,20525922,20525923,20525924,20525925,20525926,20525927,20525928,20525929,20525930,20525931,20525932,20525933,20525934,20525935,20525936,20525937,20525938,20525939,20525940,20525941,20525942,20525943,20525944,20525945,20525946,20525947,20525948,20525949,20525950,20525951,20525952,20525953,20525954,20525955,20525956,20525957,20525958,20525959,20525960,20525961,20525962,20525963,20525964,20525965,20525966,20525967,20525974,20526016,20526017,20526018,20526019,20526020,20526021,20526022,20526023,20526024,20526025,20526026,20526027,20526028,20526029,20526030,20526031,20526032,20526033,20526034,20526035,20526036,20526037,20526038,20526039,20526040,20526041,20526042,20526043,20526044,20526045,20526046,20526047,20526048,20526049,20526050,20526051,20526052,20526053,20526054,20526055,20526056,20526057,20526058,20526059,20526060,20526061,20526062,20526063,20526064,20526065,20526066,20526067,20526068,20526069,20526070,20526071,20526072,20526073,20526074,20526075,20526076,20526077,20526078,20526079],"Antimony":[20760253],"Anvil":[20528176,20528177,20528179,20528180,20528181,20528183,20528184,20528185,20528187,20528188,20528189,20528191],"Argon":[20760826],"Arsenic":[20763178],"Astatine":[20766501],"Azalea Leaves":[21886340,21886341,21886342,21886343],"Azure Bluet":[20531031],"Bamboo":[20531777,20531778,20531779,20531781,20531782,20531783,20531785,20531786,20531787,20531789,20531790,20531791],"Bamboo Sapling":[20533516,20533517],"Banner":[20535808,20535809,20535810,20535811,20535812,20535813,20535814,20535815,20535816,20535817,20535818,20535819,20535820,20535821,20535822,20535823,20535824,20535825,20535826,20535827,20535828,20535829,20535830,20535831,20535832,20535833,20535834,20535835,20535836,20535837,20535838,20535839,20535840,20535841,20535842,20535843,20535844,20535845,20535846,20535847,20535848,20535849,20535850,20535851,20535852,20535853,20535854,20535855,20535856,20535857,20535858,20535859,20535860,20535861,20535862,20535863,20535864,20535865,20535866,20535867,20535868,20535869,20535870,20535871,20535872,20535873,20535874,20535875,20535876,20535877,20535878,20535879,20535880,20535881,20535882,20535883,20535884,20535885,20535886,20535887,20535888,20535889,20535890,20535891,20535892,20535893,20535894,20535895,20535896,20535897,20535898,20535899,20535900,20535901,20535902,20535903,20535904,20535905,20535906,20535907,20535908,20535909,20535910,20535911,20535912,20535913,20535914,20535915,20535916,20535917,20535918,20535919,20535920,20535921,20535922,20535923,20535924,20535925,20535926,20535927,20535928,20535929,20535930,20535931,20535932,20535933,20535934,20535935,20535936,20535937,20535938,20535939,20535940,20535941,20535942,20535943,20535944,20535945,20535946,20535947,20535948,20535949,20535950,20535951,20535952,20535953,20535954,20535955,20535956,20535957,20535958,20535959,20535960,20535961,20535962,20535963,20535964,20535965,20535966,20535967,20535968,20535969,20535970,20535971,20535972,20535973,20535974,20535975,20535976,20535977,20535978,20535979,20535980,20535981,20535982,20535983,20535984,20535985,20535986,20535987,20535988,20535989,20535990,20535991,20535992,20535993,20535994,20535995,20535996,20535997,20535998,20535999,20536000,20536001,20536002,20536003,20536004,20536005,20536006,20536007,20536008,20536009,20536010,20536011,20536012,20536013,20536014,20536015,20536016,20536017,20536018,20536019,20536020,20536021,20536022,20536023,20536024,20536025,20536026,20536027,20536028,20536029,20536030,20536031,20536032,20536033,20536034,20536035,20536036,20536037,20536038,20536039,20536040,20536041,20536042,20536043,20536044,20536045,20536046,20536047,20536048,20536049,20536050,20536051,20536052,20536053,20536054,20536055,20536056,20536057,20536058,20536059,20536060,20536061,20536062,20536063],"Barium":[20767788],"Barrel":[20538288,20538289,20538290,20538291,20538294,20538295,20538296,20538297,20538298,20538299,20538302,20538303],"Barrier":[20541302],"Basalt":[21591048,21591049,21591050],"Beacon":[20541801],"Bed Block":[20545280,20545281,20545282,20545283,20545284,20545285,20545286,20545287,20545288,20545289,20545290,20545291,20545292,20545293,20545294,20545295,20545296,20545297,20545298,20545299,20545300,20545301,20545302,20545303,20545304,20545305,20545306,20545307,20545308,20545309,20545310,20545311,20545312,20545313,20545314,20545315,20545316,20545317,20545318,20545319,20545320,20545321,20545322,20545323,20545324,20545325,20545326,20545327,20545328,20545329,20545330,20545331,20545332,20545333,20545334,20545335,20545336,20545337,20545338,20545339,20545340,20545341,20545342,20545343,20545344,20545345,20545346,20545347,20545348,20545349,20545350,20545351,20545352,20545353,20545354,20545355,20545356,20545357,20545358,20545359,20545360,20545361,20545362,20545363,20545364,20545365,20545366,20545367,20545368,20545369,20545370,20545371,20545372,20545373,20545374,20545375,20545376,20545377,20545378,20545379,20545380,20545381,20545382,20545383,20545384,20545385,20545386,20545387,20545388,20545389,20545390,20545391,20545392,20545393,20545394,20545395,20545396,20545397,20545398,20545399,20545400,20545401,20545402,20545403,20545404,20545405,20545406,20545407,20545408,20545409,20545410,20545411,20545412,20545413,20545414,20545415,20545416,20545417,20545418,20545419,20545420,20545421,20545422,20545423,20545424,20545425,20545426,20545427,20545428,20545429,20545430,20545431,20545432,20545433,20545434,20545435,20545436,20545437,20545438,20545439,20545440,20545441,20545442,20545443,20545444,20545445,20545446,20545447,20545448,20545449,20545450,20545451,20545452,20545453,20545454,20545455,20545456,20545457,20545458,20545459,20545460,20545461,20545462,20545463,20545464,20545465,20545466,20545467,20545468,20545469,20545470,20545471,20545472,20545473,20545474,20545475,20545476,20545477,20545478,20545479,20545480,20545481,20545482,20545483,20545484,20545485,20545486,20545487,20545488,20545489,20545490,20545491,20545492,20545493,20545494,20545495,20545496,20545497,20545498,20545499,20545500,20545501,20545502,20545503,20545504,20545505,20545506,20545507,20545508,20545509,20545510,20545511,20545512,20545513,20545514,20545515,20545516,20545517,20545518,20545519,20545520,20545521,20545522,20545523,20545524,20545525,20545526,20545527,20545528,20545529,20545530,20545531,20545532,20545533,20545534,20545535],"Bedrock":[20545540,20545541],"Beetroot Block":[20549328,20549329,20549330,20549331,20549332,20549333,20549334,20549335],"Bell":[20551488,20551489,20551490,20551491,20551492,20551493,20551494,20551495,20551496,20551497,20551498,20551499,20551500,20551501,20551502,20551503],"Berkelium":[20768774],"Beryllium":[20771395],"Big Dripleaf":[21929936,21929937,21929938,21929939,21929940,21929941,21929942,21929943,21929944,21929945,21929946,21929947,21929948,21929949,21929950,21929951],"Big Dripleaf Stem":[21931976,21931977,21931978,21931979],"Birch Button":[20552224,20552225,20552226,20552227,20552230,20552231,20552232,20552233,20552234,20552235,20552238,20552239],"Birch Door":[20554848,20554849,20554850,20554851,20554852,20554853,20554854,20554855,20554856,20554857,20554858,20554859,20554860,20554861,20554862,20554863,20554864,20554865,20554866,20554867,20554868,20554869,20554870,20554871,20554872,20554873,20554874,20554875,20554876,20554877,20554878,20554879],"Birch Fence":[20557622],"Birch Fence Gate":[20559792,20559793,20559794,20559795,20559796,20559797,20559798,20559799,20559800,20559801,20559802,20559803,20559804,20559805,20559806,20559807],"Birch Leaves":[20560344,20560345,20560346,20560347],"Birch Log":[20563648,20563649,20563652,20563653,20563654,20563655],"Birch Planks":[20564186],"Birch Pressure Plate":[20567746,20567747],"Birch Sapling":[20568972,20568973],"Birch Sign":[20571536,20571537,20571538,20571539,20571540,20571541,20571542,20571543,20571544,20571545,20571546,20571547,20571548,20571549,20571550,20571551],"Birch Slab":[20573196,20573197,20573198],"Birch Stairs":[20575080,20575081,20575082,20575083,20575084,20575085,20575086,20575087],"Birch Trapdoor":[20577008,20577009,20577010,20577011,20577012,20577013,20577014,20577015,20577016,20577017,20577018,20577019,20577020,20577021,20577022,20577023],"Birch Wall Sign":[20579020,20579021,20579022,20579023],"Birch Wood":[20580826,20580827,20580828,20580829,20580830,20580831],"Bismuth":[20773935],"Blackstone":[21596307],"Blackstone Slab":[21599012,21599014,21599015],"Blackstone Stairs":[21601800,21601801,21601802,21601803,21601804,21601805,21601806,21601807],"Blackstone Wall":[21604098,21604112,21604113,21604114,21604115,21604116,21604117,21604118,21604119,21604120,21604121,21604122,21604123,21604124,21604125,21604126,21604127,21604160,21604161,21604162,21604163,21604164,21604165,21604166,21604167,21604168,21604169,21604170,21604171,21604172,21604173,21604174,21604175,21604176,21604177,21604178,21604179,21604180,21604181,21604182,21604183,21604184,21604185,21604186,21604187,21604188,21604189,21604190,21604191,21604192,21604193,21604194,21604195,21604196,21604197,21604198,21604199,21604200,21604201,21604202,21604203,21604204,21604205,21604206,21604207,21604208,21604209,21604210,21604211,21604212,21604213,21604214,21604215,21604216,21604217,21604218,21604219,21604220,21604221,21604222,21604223,21604226,21604240,21604241,21604242,21604243,21604244,21604245,21604246,21604247,21604248,21604249,21604250,21604251,21604252,21604253,21604254,21604255,21604288,21604289,21604290,21604291,21604292,21604293,21604294,21604295,21604296,21604297,21604298,21604299,21604300,21604301,21604302,21604303,21604304,21604305,21604306,21604307,21604308,21604309,21604310,21604311,21604312,21604313,21604314,21604315,21604316,21604317,21604318,21604319,21604320,21604321,21604322,21604323,21604324,21604325,21604326,21604327,21604328,21604329,21604330,21604331,21604332,21604333,21604334,21604335,21604336,21604337,21604338,21604339,21604340,21604341,21604342,21604343,21604344,21604345,21604346,21604347,21604348,21604349,21604350,21604351],"Blast Furnace":[20585328,20585329,20585330,20585331,20585332,20585333,20585334,20585335],"Blue Ice":[20588595],"Blue Orchid":[20591829],"Blue Torch":[20593968,20593969,20593973,20593974,20593975],"Bohrium":[20775552],"Bone Block":[20596340,20596341,20596343],"Bookshelf":[20597864],"Boron":[20777985],"Brewing Stand":[20600176,20600177,20600178,20600179,20600180,20600181,20600182,20600183],"Brick Slab":[20601168,20601169,20601171],"Brick Stairs":[20604408,20604409,20604410,20604411,20604412,20604413,20604414,20604415],"Brick Wall":[20605952,20605953,20605954,20605955,20605956,20605957,20605958,20605959,20605960,20605961,20605962,20605963,20605964,20605965,20605966,20605967,20605968,20605969,20605970,20605971,20605972,20605973,20605974,20605975,20605976,20605977,20605978,20605979,20605980,20605981,20605982,20605983,20605984,20605985,20605986,20605987,20605988,20605989,20605990,20605991,20605992,20605993,20605994,20605995,20605996,20605997,20605998,20605999,20606000,20606001,20606002,20606003,20606004,20606005,20606006,20606007,20606008,20606009,20606010,20606011,20606012,20606013,20606014,20606015,20606053,20606064,20606065,20606066,20606067,20606068,20606069,20606070,20606071,20606072,20606073,20606074,20606075,20606076,20606077,20606078,20606079,20606080,20606081,20606082,20606083,20606084,20606085,20606086,20606087,20606088,20606089,20606090,20606091,20606092,20606093,20606094,20606095,20606096,20606097,20606098,20606099,20606100,20606101,20606102,20606103,20606104,20606105,20606106,20606107,20606108,20606109,20606110,20606111,20606112,20606113,20606114,20606115,20606116,20606117,20606118,20606119,20606120,20606121,20606122,20606123,20606124,20606125,20606126,20606127,20606128,20606129,20606130,20606131,20606132,20606133,20606134,20606135,20606136,20606137,20606138,20606139,20606140,20606141,20606142,20606143,20606181,20606192,20606193,20606194,20606195,20606196,20606197,20606198,20606199,20606200,20606201,20606202,20606203,20606204,20606205,20606206,20606207],"Bricks":[20608594],"Bromine":[20779949],"Brown Mushroom":[20613080],"Brown Mushroom Block":[20614032,20614033,20614034,20614035,20614036,20614037,20614038,20614039,20614044,20614045,20614047],"Budding Amethyst":[21577592],"Cactus":[20616384,20616385,20616386,20616387,20616388,20616389,20616390,20616391,20616392,20616393,20616394,20616395,20616396,20616397,20616398,20616399],"Cadmium":[20781893],"Cake":[20618584,20618585,20618586,20618587,20618588,20618589,20618590],"Cake With Candle":[21837222,21837223],"Cake With Dyed Candle":[21839232,21839233,21839234,21839235,21839236,21839237,21839238,21839239,21839240,21839241,21839242,21839243,21839244,21839245,21839246,21839247,21839248,21839249,21839250,21839251,21839252,21839253,21839254,21839255,21839256,21839257,21839258,21839259,21839260,21839261,21839262,21839263],"Calcite":[21638381],"Calcium":[20783925],"Californium":[20787131],"Candle":[21832176,21832177,21832178,21832179,21832180,21832181,21832182,21832183],"Carbon":[20789232],"Carpet":[20619280,20619281,20619282,20619283,20619284,20619285,20619286,20619287,20619288,20619289,20619290,20619291,20619292,20619293,20619294,20619295],"Carrot Block":[20622752,20622753,20622754,20622755,20622756,20622757,20622758,20622759],"Cartography Table":[21845741],"Carved Pumpkin":[20624628,20624629,20624630,20624631],"Cauldron":[21852969],"Cave Vines":[21892224,21892225,21892226,21892227,21892228,21892229,21892230,21892231,21892232,21892233,21892234,21892235,21892236,21892237,21892238,21892239,21892244,21892245,21892248,21892249,21892250,21892251,21892252,21892253,21892254,21892255,21892256,21892257,21892258,21892259,21892260,21892261,21892262,21892263,21892264,21892265,21892266,21892267,21892268,21892269,21892270,21892271,21892276,21892277,21892280,21892281,21892282,21892283,21892284,21892285,21892286,21892287,21892288,21892289,21892290,21892291,21892292,21892293,21892294,21892295,21892296,21892297,21892298,21892299,21892300,21892301,21892302,21892303,21892308,21892309,21892312,21892313,21892314,21892315,21892316,21892317,21892318,21892319,21892320,21892321,21892322,21892323,21892324,21892325,21892326,21892327,21892328,21892329,21892330,21892331,21892332,21892333,21892334,21892335,21892340,21892341,21892344,21892345,21892346,21892347,21892348,21892349,21892350,21892351],"Cerium":[20789431],"Cesium":[20791798],"Chain":[21878573,21878574,21878575],"Cherry Button":[21895570,21895571,21895572,21895573,21895574,21895575,21895578,21895579,21895580,21895581,21895582,21895583],"Cherry Door":[21898304,21898305,21898306,21898307,21898308,21898309,21898310,21898311,21898312,21898313,21898314,21898315,21898316,21898317,21898318,21898319,21898320,21898321,21898322,21898323,21898324,21898325,21898326,21898327,21898328,21898329,21898330,21898331,21898332,21898333,21898334,21898335],"Cherry Fence":[21900661],"Cherry Fence Gate":[21901904,21901905,21901906,21901907,21901908,21901909,21901910,21901911,21901912,21901913,21901914,21901915,21901916,21901917,21901918,21901919],"Cherry Leaves":[21904412,21904413,21904414,21904415],"Cherry Log":[21905784,21905785,21905786,21905787,21905790,21905791],"Cherry Planks":[21908756],"Cherry Pressure Plate":[21911536,21911537],"Cherry Sign":[21914944,21914945,21914946,21914947,21914948,21914949,21914950,21914951,21914952,21914953,21914954,21914955,21914956,21914957,21914958,21914959],"Cherry Slab":[21917632,21917633,21917635],"Cherry Stairs":[21918912,21918913,21918914,21918915,21918916,21918917,21918918,21918919],"Cherry Trapdoor":[21919968,21919969,21919970,21919971,21919972,21919973,21919974,21919975,21919976,21919977,21919978,21919979,21919980,21919981,21919982,21919983],"Cherry Wall Sign":[21923100,21923101,21923102,21923103],"Cherry Wood":[21924008,21924009,21924012,21924013,21924014,21924015],"Chest":[20628872,20628873,20628874,20628875],"Chiseled Bookshelf":[21938176,21938177,21938178,21938179,21938180,21938181,21938182,21938183,21938184,21938185,21938186,21938187,21938188,21938189,21938190,21938191,21938192,21938193,21938194,21938195,21938196,21938197,21938198,21938199,21938200,21938201,21938202,21938203,21938204,21938205,21938206,21938207,21938208,21938209,21938210,21938211,21938212,21938213,21938214,21938215,21938216,21938217,21938218,21938219,21938220,21938221,21938222,21938223,21938224,21938225,21938226,21938227,21938228,21938229,21938230,21938231,21938232,21938233,21938234,21938235,21938236,21938237,21938238,21938239,21938240,21938241,21938242,21938243,21938244,21938245,21938246,21938247,21938248,21938249,21938250,21938251,21938252,21938253,21938254,21938255,21938256,21938257,21938258,21938259,21938260,21938261,21938262,21938263,21938264,21938265,21938266,21938267,21938268,21938269,21938270,21938271,21938272,21938273,21938274,21938275,21938276,21938277,21938278,21938279,21938280,21938281,21938282,21938283,21938284,21938285,21938286,21938287,21938288,21938289,21938290,21938291,21938292,21938293,21938294,21938295,21938296,21938297,21938298,21938299,21938300,21938301,21938302,21938303,21938304,21938305,21938306,21938307,21938308,21938309,21938310,21938311,21938312,21938313,21938314,21938315,21938316,21938317,21938318,21938319,21938320,21938321,21938322,21938323,21938324,21938325,21938326,21938327,21938328,21938329,21938330,21938331,21938332,21938333,21938334,21938335,21938336,21938337,21938338,21938339,21938340,21938341,21938342,21938343,21938344,21938345,21938346,21938347,21938348,21938349,21938350,21938351,21938352,21938353,21938354,21938355,21938356,21938357,21938358,21938359,21938360,21938361,21938362,21938363,21938364,21938365,21938366,21938367,21938368,21938369,21938370,21938371,21938372,21938373,21938374,21938375,21938376,21938377,21938378,21938379,21938380,21938381,21938382,21938383,21938384,21938385,21938386,21938387,21938388,21938389,21938390,21938391,21938392,21938393,21938394,21938395,21938396,21938397,21938398,21938399,21938400,21938401,21938402,21938403,21938404,21938405,21938406,21938407,21938408,21938409,21938410,21938411,21938412,21938413,21938414,21938415,21938416,21938417,21938418,21938419,21938420,21938421,21938422,21938423,21938424,21938425,21938426,21938427,21938428,21938429,21938430,21938431],"Chiseled Deepslate":[21680290],"Chiseled Nether Bricks":[21682906],"Chiseled Polished Blackstone":[21618038],"Chiseled Quartz Block":[20630148,20630150,20630151],"Chiseled Red Sandstone":[20633244],"Chiseled Sandstone":[20635615],"Chiseled Stone Bricks":[20636034],"Chlorine":[20794258],"Chorus Flower":[21864360,21864361,21864364,21864365,21864366,21864367],"Chorus Plant":[21866123],"Chromium":[20797122],"Clay Block":[20639448],"Coal Block":[20641681],"Coal Ore":[20642280],"Cobalt":[20799311],"Cobbled Deepslate":[21662962],"Cobbled Deepslate Slab":[21665324,21665326,21665327],"Cobbled Deepslate Stairs":[21666232,21666233,21666234,21666235,21666236,21666237,21666238,21666239],"Cobbled Deepslate Wall":[21668389,21668400,21668401,21668402,21668403,21668404,21668405,21668406,21668407,21668408,21668409,21668410,21668411,21668412,21668413,21668414,21668415,21668416,21668417,21668418,21668419,21668420,21668421,21668422,21668423,21668424,21668425,21668426,21668427,21668428,21668429,21668430,21668431,21668432,21668433,21668434,21668435,21668436,21668437,21668438,21668439,21668440,21668441,21668442,21668443,21668444,21668445,21668446,21668447,21668448,21668449,21668450,21668451,21668452,21668453,21668454,21668455,21668456,21668457,21668458,21668459,21668460,21668461,21668462,21668463,21668464,21668465,21668466,21668467,21668468,21668469,21668470,21668471,21668472,21668473,21668474,21668475,21668476,21668477,21668478,21668479,21668517,21668528,21668529,21668530,21668531,21668532,21668533,21668534,21668535,21668536,21668537,21668538,21668539,21668540,21668541,21668542,21668543,21668544,21668545,21668546,21668547,21668548,21668549,21668550,21668551,21668552,21668553,21668554,21668555,21668556,21668557,21668558,21668559,21668560,21668561,21668562,21668563,21668564,21668565,21668566,21668567,21668568,21668569,21668570,21668571,21668572,21668573,21668574,21668575,21668576,21668577,21668578,21668579,21668580,21668581,21668582,21668583,21668584,21668585,21668586,21668587,21668588,21668589,21668590,21668591,21668592,21668593,21668594,21668595,21668596,21668597,21668598,21668599,21668600,21668601,21668602,21668603,21668604,21668605,21668606,21668607],"Cobblestone":[20645646],"Cobblestone Slab":[20647760,20647762,20647763],"Cobblestone Stairs":[20648720,20648721,20648722,20648723,20648724,20648725,20648726,20648727],"Cobblestone Wall":[20649984,20649985,20649986,20649987,20649988,20649989,20649990,20649991,20649992,20649993,20649994,20649995,20649996,20649997,20649998,20649999,20650000,20650001,20650002,20650003,20650004,20650005,20650006,20650007,20650008,20650009,20650010,20650011,20650012,20650013,20650014,20650015,20650016,20650017,20650018,20650019,20650020,20650021,20650022,20650023,20650024,20650025,20650026,20650027,20650028,20650029,20650030,20650031,20650032,20650033,20650034,20650035,20650036,20650037,20650038,20650039,20650040,20650041,20650042,20650043,20650044,20650045,20650046,20650047,20650080,20650081,20650082,20650083,20650084,20650085,20650086,20650087,20650088,20650089,20650090,20650091,20650092,20650093,20650094,20650095,20650099,20650112,20650113,20650114,20650115,20650116,20650117,20650118,20650119,20650120,20650121,20650122,20650123,20650124,20650125,20650126,20650127,20650128,20650129,20650130,20650131,20650132,20650133,20650134,20650135,20650136,20650137,20650138,20650139,20650140,20650141,20650142,20650143,20650144,20650145,20650146,20650147,20650148,20650149,20650150,20650151,20650152,20650153,20650154,20650155,20650156,20650157,20650158,20650159,20650160,20650161,20650162,20650163,20650164,20650165,20650166,20650167,20650168,20650169,20650170,20650171,20650172,20650173,20650174,20650175,20650208,20650209,20650210,20650211,20650212,20650213,20650214,20650215,20650216,20650217,20650218,20650219,20650220,20650221,20650222,20650223,20650227],"Cobweb":[20652464],"Cocoa Block":[20655024,20655025,20655026,20655027,20655028,20655029,20655030,20655031,20655032,20655033,20655034,20655035],"Compound Creator":[20656176,20656177,20656178,20656179],"Concrete":[20659968,20659969,20659970,20659971,20659972,20659973,20659974,20659975,20659976,20659977,20659978,20659979,20659980,20659981,20659982,20659983],"Concrete Powder":[20661296,20661297,20661298,20661299,20661300,20661301,20661302,20661303,20661304,20661305,20661306,20661307,20661308,20661309,20661310,20661311],"Copernicium":[20802812],"Copper":[20804760],"Copper Block":[21823528,21823529,21823530,21823531,21823532,21823533,21823534,21823535],"Copper Ore":[21798993],"Coral":[20663618,20663620,20663621,20663622,20663623,20663626,20663628,20663629,20663630,20663631],"Coral Block":[20664465,20664468,20664469,20664470,20664471,20664473,20664476,20664477,20664478,20664479],"Coral Fan":[20668131,20668132,20668133,20668134,20668135,20668139,20668140,20668141,20668142,20668143,20668147,20668148,20668149,20668150,20668151,20668155,20668156,20668157,20668158,20668159],"Cornflower":[20670352],"Cracked Deepslate Bricks":[21650157],"Cracked Deepslate Tiles":[21661164],"Cracked Nether Bricks":[21685186],"Cracked Polished Blackstone Bricks":[21628426],"Cracked Stone Bricks":[20670706],"Crafting Table":[20672716],"Crimson Button":[21737520,21737521,21737522,21737523,21737526,21737527,21737528,21737529,21737530,21737531,21737534,21737535],"Crimson Door":[21751360,21751361,21751362,21751363,21751364,21751365,21751366,21751367,21751368,21751369,21751370,21751371,21751372,21751373,21751374,21751375,21751376,21751377,21751378,21751379,21751380,21751381,21751382,21751383,21751384,21751385,21751386,21751387,21751388,21751389,21751390,21751391],"Crimson Fence":[21707929],"Crimson Fence Gate":[21757232,21757233,21757234,21757235,21757236,21757237,21757238,21757239,21757240,21757241,21757242,21757243,21757244,21757245,21757246,21757247],"Crimson Hyphae":[21726912,21726913,21726916,21726917,21726918,21726919],"Crimson Planks":[21701319],"Crimson Pressure Plate":[21745172,21745173],"Crimson Roots":[21934477],"Crimson Sign":[21769568,21769569,21769570,21769571,21769572,21769573,21769574,21769575,21769576,21769577,21769578,21769579,21769580,21769581,21769582,21769583],"Crimson Slab":[21714416,21714417,21714418],"Crimson Stairs":[21763896,21763897,21763898,21763899,21763900,21763901,21763902,21763903],"Crimson Stem":[21719642,21719643,21719644,21719645,21719646,21719647],"Crimson Trapdoor":[21733344,21733345,21733346,21733347,21733348,21733349,21733350,21733351,21733352,21733353,21733354,21733355,21733356,21733357,21733358,21733359],"Crimson Wall Sign":[21774384,21774385,21774386,21774387],"Crying Obsidian":[21818013],"Curium":[20805897],"Cut Copper Block":[21827208,21827209,21827210,21827211,21827212,21827213,21827214,21827215],"Cut Copper Slab Slab":[21827976,21827977,21827978,21827979,21827980,21827981,21827982,21827983,21827984,21827985,21827986,21827987,21827988,21827989,21827990,21827991,21827992,21827993,21827994,21827995,21827996,21827997,21827998,21827999],"Cut Copper Stairs":[21830080,21830081,21830082,21830083,21830084,21830085,21830086,21830087,21830088,21830089,21830090,21830091,21830092,21830093,21830094,21830095,21830096,21830097,21830098,21830099,21830100,21830101,21830102,21830103,21830104,21830105,21830106,21830107,21830108,21830109,21830110,21830111,21830112,21830113,21830114,21830115,21830116,21830117,21830118,21830119,21830120,21830121,21830122,21830123,21830124,21830125,21830126,21830127,21830128,21830129,21830130,21830131,21830132,21830133,21830134,21830135,21830136,21830137,21830138,21830139,21830140,21830141,21830142,21830143],"Cut Red Sandstone":[20674620],"Cut Red Sandstone Slab":[20676996,20676997,20676999],"Cut Sandstone":[20679139],"Cut Sandstone Slab":[20681972,20681973,20681974],"Dandelion":[20686168],"Dark Oak Button":[20688624,20688625,20688626,20688627,20688630,20688631,20688632,20688633,20688634,20688635,20688638,20688639],"Dark Oak Door":[20690144,20690145,20690146,20690147,20690148,20690149,20690150,20690151,20690152,20690153,20690154,20690155,20690156,20690157,20690158,20690159,20690160,20690161,20690162,20690163,20690164,20690165,20690166,20690167,20690168,20690169,20690170,20690171,20690172,20690173,20690174,20690175],"Dark Oak Fence":[20692929],"Dark Oak Fence Gate":[20694464,20694465,20694466,20694467,20694468,20694469,20694470,20694471,20694472,20694473,20694474,20694475,20694476,20694477,20694478,20694479],"Dark Oak Leaves":[20696240,20696241,20696242,20696243],"Dark Oak Log":[20698832,20698833,20698836,20698837,20698838,20698839],"Dark Oak Planks":[20699858],"Dark Oak Pressure Plate":[20701726,20701727],"Dark Oak Sapling":[20704518,20704519],"Dark Oak Sign":[20705760,20705761,20705762,20705763,20705764,20705765,20705766,20705767,20705768,20705769,20705770,20705771,20705772,20705773,20705774,20705775],"Dark Oak Slab":[20708816,20708817,20708818],"Dark Oak Stairs":[20711344,20711345,20711346,20711347,20711348,20711349,20711350,20711351],"Dark Oak Trapdoor":[20713024,20713025,20713026,20713027,20713028,20713029,20713030,20713031,20713032,20713033,20713034,20713035,20713036,20713037,20713038,20713039],"Dark Oak Wall Sign":[20715224,20715225,20715226,20715227],"Dark Oak Wood":[20716738,20716739,20716740,20716741,20716742,20716743],"Dark Prismarine":[20719220],"Dark Prismarine Slab":[20721200,20721202,20721203],"Dark Prismarine Stairs":[20722592,20722593,20722594,20722595,20722596,20722597,20722598,20722599],"Darmstadtium":[20809292],"Daylight Sensor":[20724416,20724417,20724418,20724419,20724420,20724421,20724422,20724423,20724424,20724425,20724426,20724427,20724428,20724429,20724430,20724431,20724432,20724433,20724434,20724435,20724436,20724437,20724438,20724439,20724440,20724441,20724442,20724443,20724444,20724445,20724446,20724447],"Dead Bush":[20727625],"Deepslate":[21640384,21640385,21640387],"Deepslate Brick Slab":[21644892,21644893,21644894],"Deepslate Brick Stairs":[21646904,21646905,21646906,21646907,21646908,21646909,21646910,21646911],"Deepslate Brick Wall":[21649152,21649153,21649154,21649155,21649156,21649157,21649158,21649159,21649160,21649161,21649162,21649163,21649164,21649165,21649166,21649167,21649168,21649169,21649170,21649171,21649172,21649173,21649174,21649175,21649176,21649177,21649178,21649179,21649180,21649181,21649182,21649183,21649184,21649185,21649186,21649187,21649188,21649189,21649190,21649191,21649192,21649193,21649194,21649195,21649196,21649197,21649198,21649199,21649200,21649201,21649202,21649203,21649204,21649205,21649206,21649207,21649208,21649209,21649210,21649211,21649212,21649213,21649214,21649215,21649217,21649232,21649233,21649234,21649235,21649236,21649237,21649238,21649239,21649240,21649241,21649242,21649243,21649244,21649245,21649246,21649247,21649280,21649281,21649282,21649283,21649284,21649285,21649286,21649287,21649288,21649289,21649290,21649291,21649292,21649293,21649294,21649295,21649296,21649297,21649298,21649299,21649300,21649301,21649302,21649303,21649304,21649305,21649306,21649307,21649308,21649309,21649310,21649311,21649312,21649313,21649314,21649315,21649316,21649317,21649318,21649319,21649320,21649321,21649322,21649323,21649324,21649325,21649326,21649327,21649328,21649329,21649330,21649331,21649332,21649333,21649334,21649335,21649336,21649337,21649338,21649339,21649340,21649341,21649342,21649343,21649345,21649360,21649361,21649362,21649363,21649364,21649365,21649366,21649367,21649368,21649369,21649370,21649371,21649372,21649373,21649374,21649375],"Deepslate Bricks":[21642473],"Deepslate Coal Ore":[21783821],"Deepslate Copper Ore":[21797493],"Deepslate Diamond Ore":[21785055],"Deepslate Emerald Ore":[21788073],"Deepslate Gold Ore":[21795656],"Deepslate Iron Ore":[21794765],"Deepslate Lapis Lazuli Ore":[21788910],"Deepslate Redstone Ore":[21791572,21791573],"Deepslate Tile Slab":[21655484,21655485,21655487],"Deepslate Tile Stairs":[21657328,21657329,21657330,21657331,21657332,21657333,21657334,21657335],"Deepslate Tile Wall":[21658912,21658913,21658914,21658915,21658916,21658917,21658918,21658919,21658920,21658921,21658922,21658923,21658924,21658925,21658926,21658927,21658930,21658944,21658945,21658946,21658947,21658948,21658949,21658950,21658951,21658952,21658953,21658954,21658955,21658956,21658957,21658958,21658959,21658960,21658961,21658962,21658963,21658964,21658965,21658966,21658967,21658968,21658969,21658970,21658971,21658972,21658973,21658974,21658975,21658976,21658977,21658978,21658979,21658980,21658981,21658982,21658983,21658984,21658985,21658986,21658987,21658988,21658989,21658990,21658991,21658992,21658993,21658994,21658995,21658996,21658997,21658998,21658999,21659000,21659001,21659002,21659003,21659004,21659005,21659006,21659007,21659040,21659041,21659042,21659043,21659044,21659045,21659046,21659047,21659048,21659049,21659050,21659051,21659052,21659053,21659054,21659055,21659058,21659072,21659073,21659074,21659075,21659076,21659077,21659078,21659079,21659080,21659081,21659082,21659083,21659084,21659085,21659086,21659087,21659088,21659089,21659090,21659091,21659092,21659093,21659094,21659095,21659096,21659097,21659098,21659099,21659100,21659101,21659102,21659103,21659104,21659105,21659106,21659107,21659108,21659109,21659110,21659111,21659112,21659113,21659114,21659115,21659116,21659117,21659118,21659119,21659120,21659121,21659122,21659123,21659124,21659125,21659126,21659127,21659128,21659129,21659130,21659131,21659132,21659133,21659134,21659135],"Deepslate Tiles":[21652461],"Detector Rail":[20728240,20728241,20728242,20728243,20728246,20728247,20728248,20728249,20728250,20728251,20728254,20728255],"Diamond Block":[20730418],"Diamond Ore":[20733642],"Diorite":[20734079],"Diorite Slab":[20737469,20737470,20737471],"Diorite Stairs":[20739504,20739505,20739506,20739507,20739508,20739509,20739510,20739511],"Diorite Wall":[20741920,20741921,20741922,20741923,20741924,20741925,20741926,20741927,20741928,20741929,20741930,20741931,20741932,20741933,20741934,20741935,20741937,20741952,20741953,20741954,20741955,20741956,20741957,20741958,20741959,20741960,20741961,20741962,20741963,20741964,20741965,20741966,20741967,20741968,20741969,20741970,20741971,20741972,20741973,20741974,20741975,20741976,20741977,20741978,20741979,20741980,20741981,20741982,20741983,20741984,20741985,20741986,20741987,20741988,20741989,20741990,20741991,20741992,20741993,20741994,20741995,20741996,20741997,20741998,20741999,20742000,20742001,20742002,20742003,20742004,20742005,20742006,20742007,20742008,20742009,20742010,20742011,20742012,20742013,20742014,20742015,20742048,20742049,20742050,20742051,20742052,20742053,20742054,20742055,20742056,20742057,20742058,20742059,20742060,20742061,20742062,20742063,20742065,20742080,20742081,20742082,20742083,20742084,20742085,20742086,20742087,20742088,20742089,20742090,20742091,20742092,20742093,20742094,20742095,20742096,20742097,20742098,20742099,20742100,20742101,20742102,20742103,20742104,20742105,20742106,20742107,20742108,20742109,20742110,20742111,20742112,20742113,20742114,20742115,20742116,20742117,20742118,20742119,20742120,20742121,20742122,20742123,20742124,20742125,20742126,20742127,20742128,20742129,20742130,20742131,20742132,20742133,20742134,20742135,20742136,20742137,20742138,20742139,20742140,20742141,20742142,20742143],"Dirt":[20742760,20742761,20742763],"Double Pitcher Crop":[21950064,21950065,21950066,21950067],"Double Tallgrass":[20744902,20744903],"Dragon Egg":[20747804],"Dried Kelp Block":[20749160],"Dubnium":[20811286],"Dyed Candle":[21834240,21834241,21834242,21834243,21834244,21834245,21834246,21834247,21834248,21834249,21834250,21834251,21834252,21834253,21834254,21834255,21834256,21834257,21834258,21834259,21834260,21834261,21834262,21834263,21834264,21834265,21834266,21834267,21834268,21834269,21834270,21834271,21834272,21834273,21834274,21834275,21834276,21834277,21834278,21834279,21834280,21834281,21834282,21834283,21834284,21834285,21834286,21834287,21834288,21834289,21834290,21834291,21834292,21834293,21834294,21834295,21834296,21834297,21834298,21834299,21834300,21834301,21834302,21834303,21834304,21834305,21834306,21834307,21834308,21834309,21834310,21834311,21834312,21834313,21834314,21834315,21834316,21834317,21834318,21834319,21834320,21834321,21834322,21834323,21834324,21834325,21834326,21834327,21834328,21834329,21834330,21834331,21834332,21834333,21834334,21834335,21834336,21834337,21834338,21834339,21834340,21834341,21834342,21834343,21834344,21834345,21834346,21834347,21834348,21834349,21834350,21834351,21834352,21834353,21834354,21834355,21834356,21834357,21834358,21834359,21834360,21834361,21834362,21834363,21834364,21834365,21834366,21834367],"Dyed Shulker Box":[20750816,20750817,20750818,20750819,20750820,20750821,20750822,20750823,20750824,20750825,20750826,20750827,20750828,20750829,20750830,20750831],"Dysprosium":[20812845],"Einsteinium":[20813977],"Element Constructor":[20799584,20799585,20799586,20799587],"Emerald Block":[20998956],"Emerald Ore":[21001840],"Enchanting Table":[21002728],"End Portal Frame":[21005904,21005905,21005906,21005907,21005908,21005909,21005910,21005911],"End Rod":[21006744,21006745,21006746,21006747,21006750,21006751],"End Stone":[21010195],"End Stone Brick Slab":[21011608,21011609,21011611],"End Stone Brick Stairs":[21014200,21014201,21014202,21014203,21014204,21014205,21014206,21014207],"End Stone Brick Wall":[21015589,21015600,21015601,21015602,21015603,21015604,21015605,21015606,21015607,21015608,21015609,21015610,21015611,21015612,21015613,21015614,21015615,21015616,21015617,21015618,21015619,21015620,21015621,21015622,21015623,21015624,21015625,21015626,21015627,21015628,21015629,21015630,21015631,21015632,21015633,21015634,21015635,21015636,21015637,21015638,21015639,21015640,21015641,21015642,21015643,21015644,21015645,21015646,21015647,21015648,21015649,21015650,21015651,21015652,21015653,21015654,21015655,21015656,21015657,21015658,21015659,21015660,21015661,21015662,21015663,21015664,21015665,21015666,21015667,21015668,21015669,21015670,21015671,21015672,21015673,21015674,21015675,21015676,21015677,21015678,21015679,21015717,21015728,21015729,21015730,21015731,21015732,21015733,21015734,21015735,21015736,21015737,21015738,21015739,21015740,21015741,21015742,21015743,21015744,21015745,21015746,21015747,21015748,21015749,21015750,21015751,21015752,21015753,21015754,21015755,21015756,21015757,21015758,21015759,21015760,21015761,21015762,21015763,21015764,21015765,21015766,21015767,21015768,21015769,21015770,21015771,21015772,21015773,21015774,21015775,21015776,21015777,21015778,21015779,21015780,21015781,21015782,21015783,21015784,21015785,21015786,21015787,21015788,21015789,21015790,21015791,21015792,21015793,21015794,21015795,21015796,21015797,21015798,21015799,21015800,21015801,21015802,21015803,21015804,21015805,21015806,21015807],"End Stone Bricks":[21017562],"Ender Chest":[21019660,21019661,21019662,21019663],"Erbium":[20817537],"Europium":[20819484],"Fake Wooden Slab":[21021009,21021010,21021011],"Farmland":[21022720,21022721,21022722,21022723,21022724,21022725,21022726,21022727,21022728,21022729,21022730,21022731,21022732,21022733,21022734,21022735,21022736,21022737,21022738,21022739,21022740,21022741,21022742,21022743,21022744,21022745,21022746,21022747,21022748,21022749,21022750,21022751,21022752,21022753,21022754,21022755,21022756,21022757,21022758,21022759,21022760,21022761,21022762,21022763,21022764,21022765,21022766,21022767,21022768,21022769,21022770,21022771,21022772,21022773,21022774,21022775,21022776,21022777,21022778,21022779,21022780,21022781,21022782,21022783,21022784,21022785,21022786,21022787,21022788,21022789,21022790,21022791,21022792,21022793,21022794,21022795,21022796,21022797,21022798,21022799,21022800,21022801,21022802,21022803,21022804,21022805,21022806,21022807,21022808,21022809,21022810,21022811,21022812,21022813,21022814,21022815,21022816,21022817,21022818,21022819,21022820,21022821,21022822,21022823,21022824,21022825,21022826,21022827,21022828,21022829,21022830,21022831,21022832,21022833,21022834,21022835,21022836,21022837,21022838,21022839,21022840,21022841,21022842,21022843,21022844,21022845,21022846,21022847,21022848,21022849,21022850,21022851,21022852,21022853,21022854,21022855,21022856,21022857,21022858,21022859,21022860,21022861,21022862,21022863,21022864,21022865,21022866,21022867,21022868,21022869,21022870,21022871,21022872,21022873,21022874,21022875,21022876,21022877,21022878,21022879,21022880,21022881,21022882,21022883,21022884,21022885,21022886,21022887,21022888,21022889,21022890,21022891,21022892,21022893,21022894,21022895,21022896,21022897,21022898,21022899,21022900,21022901,21022902,21022903,21022904,21022905,21022906,21022907,21022908,21022909,21022910,21022911,21022912,21022913,21022914,21022915,21022916,21022917,21022918,21022919,21022920,21022921,21022922,21022923,21022924,21022925,21022926,21022927,21022928,21022929,21022930,21022931,21022932,21022933,21022934,21022935,21022936,21022937,21022938,21022939,21022940,21022941,21022942,21022943,21022944,21022945,21022946,21022947,21022948,21022949,21022950,21022951,21022952,21022953,21022954,21022955,21022956,21022957,21022958,21022959,21022960,21022961,21022962,21022963,21022964,21022965,21022966,21022967,21022968,21022969,21022970,21022971,21022972,21022973,21022974,21022975,21022976,21022977,21022978,21022979,21022980,21022981,21022982,21022983,21022984,21022985,21022986,21022987,21022988,21022989,21022990,21022991,21022992,21022993,21022994,21022995,21022996,21022997,21022998,21022999,21023000,21023001,21023002,21023003,21023004,21023005,21023006,21023007,21023008,21023009,21023010,21023011,21023012,21023013,21023014,21023015,21023016,21023017,21023018,21023019,21023020,21023021,21023022,21023023,21023024,21023025,21023026,21023027,21023028,21023029,21023030,21023031,21023032,21023033,21023034,21023035,21023036,21023037,21023038,21023039,21023040,21023041,21023042,21023043,21023044,21023045,21023046,21023047,21023048,21023049,21023050,21023051,21023052,21023053,21023054,21023055,21023056,21023057,21023058,21023059,21023060,21023061,21023062,21023063,21023064,21023065,21023066,21023067,21023068,21023069,21023070,21023071,21023072,21023073,21023074,21023075,21023076,21023077,21023078,21023079,21023080,21023081,21023082,21023083,21023084,21023085,21023086,21023087,21023088,21023089,21023090,21023091,21023092,21023093,21023094,21023095,21023096,21023097,21023098,21023099,21023100,21023101,21023102,21023103,21023104,21023105,21023106,21023107,21023108,21023109,21023110,21023111,21023112,21023113,21023114,21023115,21023116,21023117,21023118,21023119,21023120,21023121,21023122,21023123,21023124,21023125,21023126,21023127,21023128,21023129,21023130,21023131,21023132,21023133,21023134,21023135,21023136,21023137,21023138,21023139,21023140,21023141,21023142,21023143,21023144,21023145,21023146,21023147,21023148,21023149,21023150,21023151,21023152,21023153,21023154,21023155,21023156,21023157,21023158,21023159,21023160,21023161,21023162,21023163,21023164,21023165,21023166,21023167,21023168,21023169,21023170,21023171,21023172,21023173,21023174,21023175,21023176,21023177,21023178,21023179,21023180,21023181,21023182,21023183,21023184,21023185,21023186,21023187,21023188,21023189,21023190,21023191,21023192,21023193,21023194,21023195,21023196,21023197,21023198,21023199,21023200,21023201,21023202,21023203,21023204,21023205,21023206,21023207,21023208,21023209,21023210,21023211,21023212,21023213,21023214,21023215,21023216,21023217,21023218,21023219,21023220,21023221,21023222,21023223,21023224,21023225,21023226,21023227,21023228,21023229,21023230,21023231,21023232,21023233,21023234,21023235,21023236,21023237,21023238,21023239,21023240,21023241,21023242,21023243,21023244,21023245,21023246,21023247,21023248,21023249,21023250,21023251,21023252,21023253,21023254,21023255,21023256,21023257,21023258,21023259,21023260,21023261,21023262,21023263,21023264,21023265,21023266,21023267,21023268,21023269,21023270,21023271,21023272,21023273,21023274,21023275,21023276,21023277,21023278,21023279,21023280,21023281,21023282,21023283,21023284,21023285,21023286,21023287,21023288,21023289,21023290,21023291,21023292,21023293,21023294,21023295,21023296,21023297,21023298,21023299,21023300,21023301,21023302,21023303,21023304,21023305,21023306,21023307,21023308,21023309,21023310,21023311,21023312,21023313,21023314,21023315,21023316,21023317,21023318,21023319,21023320,21023321,21023322,21023323,21023324,21023325,21023326,21023327,21023328,21023329,21023330,21023331,21023332,21023333,21023334,21023335,21023336,21023337,21023338,21023339,21023340,21023341,21023342,21023343,21023344,21023345,21023346,21023347,21023348,21023349,21023350,21023351,21023352,21023353,21023354,21023355,21023356,21023357,21023358,21023359,21023360,21023361,21023362,21023363,21023364,21023365,21023366,21023367,21023368,21023369,21023370,21023371,21023372,21023373,21023374,21023375,21023376,21023377,21023378,21023379,21023380,21023381,21023382,21023383,21023384,21023385,21023386,21023387,21023388,21023389,21023390,21023391,21023392,21023393,21023394,21023395,21023396,21023397,21023398,21023399,21023400,21023401,21023402,21023403,21023404,21023405,21023406,21023407,21023408,21023409,21023410,21023411,21023412,21023413,21023414,21023415,21023416,21023417,21023418,21023419,21023420,21023421,21023422,21023423,21023424,21023425,21023426,21023427,21023428,21023429,21023430,21023431,21023432,21023433,21023434,21023435,21023436,21023437,21023438,21023439,21023440,21023441,21023442,21023443,21023444,21023445,21023446,21023447,21023448,21023449,21023450,21023451,21023452,21023453,21023454,21023455,21023456,21023457,21023458,21023459,21023460,21023461,21023462,21023463,21023464,21023465,21023466,21023467,21023468,21023469,21023470,21023471,21023472,21023473,21023474,21023475,21023476,21023477,21023478,21023479,21023480,21023481,21023482,21023483,21023484,21023485,21023486,21023487,21023488,21023489,21023490,21023491,21023492,21023493,21023494,21023495,21023496,21023497,21023498,21023499,21023500,21023501,21023502,21023503,21023504,21023505,21023506,21023507,21023508,21023509,21023510,21023511,21023512,21023513,21023514,21023515,21023516,21023517,21023518,21023519,21023520,21023521,21023522,21023523,21023524,21023525,21023526,21023527,21023528,21023529,21023530,21023531,21023532,21023533,21023534,21023535,21023536,21023537,21023538,21023539,21023540,21023541,21023542,21023543,21023544,21023545,21023546,21023547,21023548,21023549,21023550,21023551,21023552,21023553,21023554,21023555,21023556,21023557,21023558,21023559,21023560,21023561,21023562,21023563,21023564,21023565,21023566,21023567,21023568,21023569,21023570,21023571,21023572,21023573,21023574,21023575,21023576,21023577,21023578,21023579,21023580,21023581,21023582,21023583,21023584,21023585,21023586,21023587,21023588,21023589,21023590,21023591,21023592,21023593,21023594,21023595,21023596,21023597,21023598,21023599,21023600,21023601,21023602,21023603,21023604,21023605,21023606,21023607,21023608,21023609,21023610,21023611,21023612,21023613,21023614,21023615,21023616,21023617,21023618,21023619,21023620,21023621,21023622,21023623,21023624,21023625,21023626,21023627,21023628,21023629,21023630,21023631,21023632,21023633,21023634,21023635,21023636,21023637,21023638,21023639,21023640,21023641,21023642,21023643,21023644,21023645,21023646,21023647,21023648,21023649,21023650,21023651,21023652,21023653,21023654,21023655,21023656,21023657,21023658,21023659,21023660,21023661,21023662,21023663,21023664,21023665,21023666,21023667,21023668,21023669,21023670,21023671,21023672,21023673,21023674,21023675,21023676,21023677,21023678,21023679,21023680,21023681,21023682,21023683,21023684,21023685,21023686,21023687,21023688,21023689,21023690,21023691,21023692,21023693,21023694,21023695,21023696,21023697,21023698,21023699,21023700,21023701,21023702,21023703,21023704,21023705,21023706,21023707,21023708,21023709,21023710,21023711,21023712,21023713,21023714,21023715,21023716,21023717,21023718,21023719,21023720,21023721,21023722,21023723,21023724,21023725,21023726,21023727,21023728,21023729,21023730,21023731,21023732,21023733,21023734,21023735,21023736,21023737,21023738,21023739,21023740,21023741,21023742,21023743,21024256,21024257,21024258,21024259,21024260,21024261,21024262,21024263,21024264,21024265,21024266,21024267,21024268,21024269,21024270,21024271,21024272,21024273,21024274,21024275,21024276,21024277,21024278,21024279,21024280,21024281,21024282,21024283,21024284,21024285,21024286,21024287,21024288,21024289,21024290,21024291,21024292,21024293,21024294,21024295,21024296,21024297,21024298,21024299,21024300,21024301,21024302,21024303,21024304,21024305,21024306,21024307,21024308,21024309,21024310,21024311,21024312,21024313,21024314,21024315,21024316,21024317,21024318,21024319,21024320,21024321,21024322,21024323,21024324,21024325,21024326,21024327,21024328,21024329,21024330,21024331,21024332,21024333,21024334,21024335,21024336,21024337,21024338,21024339,21024340,21024341,21024342,21024343,21024344,21024345,21024346,21024347,21024348,21024349,21024350,21024351,21024352,21024353,21024354,21024355,21024356,21024357,21024358,21024359,21024360,21024361,21024362,21024363,21024364,21024365,21024366,21024367,21024368,21024369,21024370,21024371,21024372,21024373,21024374,21024375,21024376,21024377,21024378,21024379,21024380,21024381,21024382,21024383,21024384,21024385,21024386,21024387,21024388,21024389,21024390,21024391,21024392,21024393,21024394,21024395,21024396,21024397,21024398,21024399,21024400,21024401,21024402,21024403,21024404,21024405,21024406,21024407,21024408,21024409,21024410,21024411,21024412,21024413,21024414,21024415,21024416,21024417,21024418,21024419,21024420,21024421,21024422,21024423,21024424,21024425,21024426,21024427,21024428,21024429,21024430,21024431,21024432,21024433,21024434,21024435,21024436,21024437,21024438,21024439,21024440,21024441,21024442,21024443,21024444,21024445,21024446,21024447,21024448,21024449,21024450,21024451,21024452,21024453,21024454,21024455,21024456,21024457,21024458,21024459,21024460,21024461,21024462,21024463,21024464,21024465,21024466,21024467,21024468,21024469,21024470,21024471,21024472,21024473,21024474,21024475,21024476,21024477,21024478,21024479,21024480,21024481,21024482,21024483,21024484,21024485,21024486,21024487,21024488,21024489,21024490,21024491,21024492,21024493,21024494,21024495,21024496,21024497,21024498,21024499,21024500,21024501,21024502,21024503,21024504,21024505,21024506,21024507,21024508,21024509,21024510,21024511,21024640,21024641,21024642,21024643,21024644,21024645,21024646,21024647,21024648,21024649,21024650,21024651,21024652,21024653,21024654,21024655,21024664,21024665,21024666,21024667,21024668,21024669,21024670,21024671],"Fermium":[20821256],"Fern":[21026077],"Fire Block":[21027184,21027185,21027186,21027187,21027188,21027189,21027190,21027191,21027192,21027193,21027194,21027195,21027196,21027197,21027198,21027199],"Flerovium":[20823370],"Fletching Table":[21030063],"Flower Pot":[21031217],"Flowering Azalea Leaves":[21888168,21888169,21888170,21888171],"Fluorine":[20824372],"Francium":[20827305],"Froglight":[21872001,21872002,21872003,21872005,21872006,21872007,21872009,21872010,21872011],"Frosted Ice":[21034052,21034053,21034054,21034055],"Furnace":[21036512,21036513,21036514,21036515,21036516,21036517,21036518,21036519],"Gadolinium":[20828273],"Gallium":[20832169],"Germanium":[20833509],"Gilded Blackstone":[21820646],"Glass":[21038329],"Glass Pane":[21040585],"Glazed Terracotta":[21585152,21585153,21585154,21585155,21585156,21585157,21585158,21585159,21585160,21585161,21585162,21585163,21585164,21585165,21585166,21585167,21585168,21585169,21585170,21585171,21585172,21585173,21585174,21585175,21585176,21585177,21585178,21585179,21585180,21585181,21585182,21585183,21585184,21585185,21585186,21585187,21585188,21585189,21585190,21585191,21585192,21585193,21585194,21585195,21585196,21585197,21585198,21585199,21585200,21585201,21585202,21585203,21585204,21585205,21585206,21585207,21585208,21585209,21585210,21585211,21585212,21585213,21585214,21585215],"Glow Item Frame":[21881552,21881553,21881556,21881557,21881558,21881559,21881560,21881561,21881564,21881565,21881566,21881567],"Glow Lichen":[21893760,21893761,21893762,21893763,21893764,21893765,21893766,21893767,21893768,21893769,21893770,21893771,21893772,21893773,21893774,21893775,21893776,21893777,21893778,21893779,21893780,21893781,21893782,21893783,21893784,21893785,21893786,21893787,21893788,21893789,21893790,21893791,21893792,21893793,21893794,21893795,21893796,21893797,21893798,21893799,21893800,21893801,21893802,21893803,21893804,21893805,21893806,21893807,21893808,21893809,21893810,21893811,21893812,21893813,21893814,21893815,21893816,21893817,21893818,21893819,21893820,21893821,21893822,21893823],"Glowing Obsidian":[21043028],"Glowstone":[21043624],"Gold":[20835704],"Gold Block":[21046696],"Gold Ore":[21049010],"Granite":[21049750],"Granite Slab":[21053256,21053257,21053258],"Granite Stairs":[21054536,21054537,21054538,21054539,21054540,21054541,21054542,21054543],"Granite Wall":[21055488,21055489,21055490,21055491,21055492,21055493,21055494,21055495,21055496,21055497,21055498,21055499,21055500,21055501,21055502,21055503,21055504,21055505,21055506,21055507,21055508,21055509,21055510,21055511,21055512,21055513,21055514,21055515,21055516,21055517,21055518,21055519,21055520,21055521,21055522,21055523,21055524,21055525,21055526,21055527,21055528,21055529,21055530,21055531,21055532,21055533,21055534,21055535,21055536,21055537,21055538,21055539,21055540,21055541,21055542,21055543,21055544,21055545,21055546,21055547,21055548,21055549,21055550,21055551,21055584,21055585,21055586,21055587,21055588,21055589,21055590,21055591,21055592,21055593,21055594,21055595,21055596,21055597,21055598,21055599,21055615,21055616,21055617,21055618,21055619,21055620,21055621,21055622,21055623,21055624,21055625,21055626,21055627,21055628,21055629,21055630,21055631,21055632,21055633,21055634,21055635,21055636,21055637,21055638,21055639,21055640,21055641,21055642,21055643,21055644,21055645,21055646,21055647,21055648,21055649,21055650,21055651,21055652,21055653,21055654,21055655,21055656,21055657,21055658,21055659,21055660,21055661,21055662,21055663,21055664,21055665,21055666,21055667,21055668,21055669,21055670,21055671,21055672,21055673,21055674,21055675,21055676,21055677,21055678,21055679,21055712,21055713,21055714,21055715,21055716,21055717,21055718,21055719,21055720,21055721,21055722,21055723,21055724,21055725,21055726,21055727,21055743],"Grass":[21058118],"Grass Path":[21061327],"Gravel":[21062456],"Green Torch":[21068985,21068986,21068987,21068988,21068989],"Hafnium":[20837560],"Hanging Roots":[21842426],"Hardened Clay":[21071190],"Hardened Glass":[21072075],"Hardened Glass Pane":[21075766],"Hassium":[20839994],"Hay Bale":[21077748,21077749,21077750],"Heat Block":[20625734],"Helium":[20840704],"Holmium":[20842739],"Honeycomb Block":[21782395],"Hopper":[21079520,21079521,21079525,21079526,21079527,21079528,21079529,21079533,21079534,21079535],"Hydrogen":[20844910],"Ice":[21080304],"Indium":[20848311],"Infested Chiseled Stone Brick":[21083943],"Infested Cobblestone":[21085393],"Infested Cracked Stone Brick":[21087627],"Infested Mossy Stone Brick":[21088835],"Infested Stone":[21091396],"Infested Stone Brick":[21092358],"Invisible Bedrock":[21100447],"Iodine":[20850310],"Iridium":[20851638],"Iron":[20854572],"Iron Bars":[21104146],"Iron Block":[21101750],"Iron Door":[21105792,21105793,21105794,21105795,21105796,21105797,21105798,21105799,21105800,21105801,21105802,21105803,21105804,21105805,21105806,21105807,21105808,21105809,21105810,21105811,21105812,21105813,21105814,21105815,21105816,21105817,21105818,21105819,21105820,21105821,21105822,21105823],"Iron Ore":[21107313],"Iron Trapdoor":[21109264,21109265,21109266,21109267,21109268,21109269,21109270,21109271,21109272,21109273,21109274,21109275,21109276,21109277,21109278,21109279],"Item Frame":[21111952,21111953,21111954,21111955,21111956,21111957,21111960,21111961,21111962,21111963,21111964,21111965],"Jack o'Lantern":[21179952,21179953,21179954,21179955],"Jukebox":[21113057],"Jungle Button":[21115488,21115489,21115490,21115491,21115492,21115493,21115496,21115497,21115498,21115499,21115500,21115501],"Jungle Door":[21117568,21117569,21117570,21117571,21117572,21117573,21117574,21117575,21117576,21117577,21117578,21117579,21117580,21117581,21117582,21117583,21117584,21117585,21117586,21117587,21117588,21117589,21117590,21117591,21117592,21117593,21117594,21117595,21117596,21117597,21117598,21117599],"Jungle Fence":[21119582],"Jungle Fence Gate":[21122144,21122145,21122146,21122147,21122148,21122149,21122150,21122151,21122152,21122153,21122154,21122155,21122156,21122157,21122158,21122159],"Jungle Leaves":[21124916,21124917,21124918,21124919],"Jungle Log":[21126656,21126657,21126658,21126659,21126662,21126663],"Jungle Planks":[21127877],"Jungle Pressure Plate":[21130628,21130629],"Jungle Sapling":[21132062,21132063],"Jungle Sign":[21134400,21134401,21134402,21134403,21134404,21134405,21134406,21134407,21134408,21134409,21134410,21134411,21134412,21134413,21134414,21134415],"Jungle Slab":[21135720,21135721,21135722],"Jungle Stairs":[21137656,21137657,21137658,21137659,21137660,21137661,21137662,21137663],"Jungle Trapdoor":[21139728,21139729,21139730,21139731,21139732,21139733,21139734,21139735,21139736,21139737,21139738,21139739,21139740,21139741,21139742,21139743],"Jungle Wall Sign":[21143348,21143349,21143350,21143351],"Jungle Wood":[21145480,21145481,21145484,21145485,21145486,21145487],"Krypton":[20856167],"Lab Table":[21146608,21146609,21146610,21146611],"Ladder":[21148984,21148985,21148986,21148987],"Lantern":[21149740,21149741],"Lanthanum":[20858521],"Lapis Lazuli Block":[21152040],"Lapis Lazuli Ore":[21154437],"Large Fern":[21156644,21156645],"Lava":[21159648,21159649,21159650,21159651,21159652,21159653,21159654,21159655,21159656,21159657,21159658,21159659,21159660,21159661,21159662,21159663,21159664,21159665,21159666,21159667,21159668,21159669,21159670,21159671,21159672,21159673,21159674,21159675,21159676,21159677,21159678,21159679],"Lava Cauldron":[21857912,21857913,21857914,21857915,21857916,21857917],"Lawrencium":[20860323],"Lead":[20861284],"Lectern":[21160360,21160361,21160362,21160363,21160364,21160365,21160366,21160367],"Legacy Stonecutter":[21162264],"Lever":[21165776,21165777,21165778,21165779,21165780,21165781,21165782,21165783,21165784,21165785,21165786,21165787,21165788,21165789,21165790,21165791],"Light Block":[21629408,21629409,21629410,21629411,21629412,21629413,21629414,21629415,21629416,21629417,21629418,21629419,21629420,21629421,21629422,21629423],"Lightning Rod":[21821570,21821571,21821572,21821573,21821574,21821575],"Lilac":[21171834,21171835],"Lily Pad":[21174431],"Lily of the Valley":[21173216],"Lithium":[20863911],"Livermorium":[20865878],"Loom":[21182044,21182045,21182046,21182047],"Lutetium":[20867537],"Magma Block":[21186488],"Magnesium":[20869155],"Manganese":[20872294],"Mangrove Button":[21735552,21735553,21735554,21735555,21735558,21735559,21735560,21735561,21735562,21735563,21735566,21735567],"Mangrove Door":[21749248,21749249,21749250,21749251,21749252,21749253,21749254,21749255,21749256,21749257,21749258,21749259,21749260,21749261,21749262,21749263,21749264,21749265,21749266,21749267,21749268,21749269,21749270,21749271,21749272,21749273,21749274,21749275,21749276,21749277,21749278,21749279],"Mangrove Fence":[21706659],"Mangrove Fence Gate":[21755424,21755425,21755426,21755427,21755428,21755429,21755430,21755431,21755432,21755433,21755434,21755435,21755436,21755437,21755438,21755439],"Mangrove Leaves":[21884612,21884613,21884614,21884615],"Mangrove Log":[21717272,21717273,21717274,21717275,21717278,21717279],"Mangrove Planks":[21700363],"Mangrove Pressure Plate":[21742138,21742139],"Mangrove Roots":[21868046],"Mangrove Sign":[21766688,21766689,21766690,21766691,21766692,21766693,21766694,21766695,21766696,21766697,21766698,21766699,21766700,21766701,21766702,21766703],"Mangrove Slab":[21711233,21711234,21711235],"Mangrove Stairs":[21760624,21760625,21760626,21760627,21760628,21760629,21760630,21760631],"Mangrove Trapdoor":[21729584,21729585,21729586,21729587,21729588,21729589,21729590,21729591,21729592,21729593,21729594,21729595,21729596,21729597,21729598,21729599],"Mangrove Wall Sign":[21774240,21774241,21774242,21774243],"Mangrove Wood":[21723914,21723915,21723916,21723917,21723918,21723919],"Material Reducer":[21187744,21187745,21187746,21187747],"Meitnerium":[20874589],"Melon Block":[21189795],"Melon Stem":[21190912,21190913,21190914,21190915,21190916,21190917,21190918,21190919,21190920,21190921,21190922,21190923,21190924,21190925,21190926,21190927,21190944,21190945,21190946,21190947,21190948,21190949,21190950,21190951,21190960,21190961,21190962,21190963,21190964,21190965,21190966,21190967,21190968,21190969,21190970,21190971,21190972,21190973,21190974,21190975],"Mendelevium":[20876625],"Mercury":[20877937],"Mob Head":[21193344,21193345,21193346,21193347,21193349,21193350,21193351,21193352,21193353,21193354,21193355,21193357,21193358,21193359,21193376,21193377,21193378,21193379,21193381,21193382,21193383,21193392,21193393,21193394,21193395,21193397,21193398,21193399,21193400,21193401,21193402,21193403,21193405,21193406,21193407],"Molybdenum":[20879537],"Monster Spawner":[21195322],"Moscovium":[20883402],"Mossy Cobblestone":[21197453],"Mossy Cobblestone Slab":[21200052,21200054,21200055],"Mossy Cobblestone Stairs":[21202568,21202569,21202570,21202571,21202572,21202573,21202574,21202575],"Mossy Cobblestone Wall":[21204224,21204225,21204226,21204227,21204228,21204229,21204230,21204231,21204232,21204233,21204234,21204235,21204236,21204237,21204238,21204239,21204240,21204241,21204242,21204243,21204244,21204245,21204246,21204247,21204248,21204249,21204250,21204251,21204252,21204253,21204254,21204255,21204256,21204257,21204258,21204259,21204260,21204261,21204262,21204263,21204264,21204265,21204266,21204267,21204268,21204269,21204270,21204271,21204272,21204273,21204274,21204275,21204276,21204277,21204278,21204279,21204280,21204281,21204282,21204283,21204284,21204285,21204286,21204287,21204288,21204289,21204290,21204291,21204292,21204293,21204294,21204295,21204296,21204297,21204298,21204299,21204300,21204301,21204302,21204303,21204306,21204352,21204353,21204354,21204355,21204356,21204357,21204358,21204359,21204360,21204361,21204362,21204363,21204364,21204365,21204366,21204367,21204368,21204369,21204370,21204371,21204372,21204373,21204374,21204375,21204376,21204377,21204378,21204379,21204380,21204381,21204382,21204383,21204384,21204385,21204386,21204387,21204388,21204389,21204390,21204391,21204392,21204393,21204394,21204395,21204396,21204397,21204398,21204399,21204400,21204401,21204402,21204403,21204404,21204405,21204406,21204407,21204408,21204409,21204410,21204411,21204412,21204413,21204414,21204415,21204416,21204417,21204418,21204419,21204420,21204421,21204422,21204423,21204424,21204425,21204426,21204427,21204428,21204429,21204430,21204431,21204434],"Mossy Stone Brick Slab":[21205992,21205993,21205995],"Mossy Stone Brick Stairs":[21207584,21207585,21207586,21207587,21207588,21207589,21207590,21207591],"Mossy Stone Brick Wall":[21210147,21210160,21210161,21210162,21210163,21210164,21210165,21210166,21210167,21210168,21210169,21210170,21210171,21210172,21210173,21210174,21210175,21210176,21210177,21210178,21210179,21210180,21210181,21210182,21210183,21210184,21210185,21210186,21210187,21210188,21210189,21210190,21210191,21210192,21210193,21210194,21210195,21210196,21210197,21210198,21210199,21210200,21210201,21210202,21210203,21210204,21210205,21210206,21210207,21210208,21210209,21210210,21210211,21210212,21210213,21210214,21210215,21210216,21210217,21210218,21210219,21210220,21210221,21210222,21210223,21210224,21210225,21210226,21210227,21210228,21210229,21210230,21210231,21210232,21210233,21210234,21210235,21210236,21210237,21210238,21210239,21210275,21210288,21210289,21210290,21210291,21210292,21210293,21210294,21210295,21210296,21210297,21210298,21210299,21210300,21210301,21210302,21210303,21210304,21210305,21210306,21210307,21210308,21210309,21210310,21210311,21210312,21210313,21210314,21210315,21210316,21210317,21210318,21210319,21210320,21210321,21210322,21210323,21210324,21210325,21210326,21210327,21210328,21210329,21210330,21210331,21210332,21210333,21210334,21210335,21210336,21210337,21210338,21210339,21210340,21210341,21210342,21210343,21210344,21210345,21210346,21210347,21210348,21210349,21210350,21210351,21210352,21210353,21210354,21210355,21210356,21210357,21210358,21210359,21210360,21210361,21210362,21210363,21210364,21210365,21210366,21210367],"Mossy Stone Bricks":[21212641],"Mud":[21804596],"Mud Brick Slab":[21807848,21807850,21807851],"Mud Brick Stairs":[21810184,21810185,21810186,21810187,21810188,21810189,21810190,21810191],"Mud Brick Wall":[21812238,21812240,21812241,21812242,21812243,21812244,21812245,21812246,21812247,21812248,21812249,21812250,21812251,21812252,21812253,21812254,21812255,21812288,21812289,21812290,21812291,21812292,21812293,21812294,21812295,21812296,21812297,21812298,21812299,21812300,21812301,21812302,21812303,21812304,21812305,21812306,21812307,21812308,21812309,21812310,21812311,21812312,21812313,21812314,21812315,21812316,21812317,21812318,21812319,21812320,21812321,21812322,21812323,21812324,21812325,21812326,21812327,21812328,21812329,21812330,21812331,21812332,21812333,21812334,21812335,21812336,21812337,21812338,21812339,21812340,21812341,21812342,21812343,21812344,21812345,21812346,21812347,21812348,21812349,21812350,21812351,21812366,21812368,21812369,21812370,21812371,21812372,21812373,21812374,21812375,21812376,21812377,21812378,21812379,21812380,21812381,21812382,21812383,21812416,21812417,21812418,21812419,21812420,21812421,21812422,21812423,21812424,21812425,21812426,21812427,21812428,21812429,21812430,21812431,21812432,21812433,21812434,21812435,21812436,21812437,21812438,21812439,21812440,21812441,21812442,21812443,21812444,21812445,21812446,21812447,21812448,21812449,21812450,21812451,21812452,21812453,21812454,21812455,21812456,21812457,21812458,21812459,21812460,21812461,21812462,21812463,21812464,21812465,21812466,21812467,21812468,21812469,21812470,21812471,21812472,21812473,21812474,21812475,21812476,21812477,21812478,21812479],"Mud Bricks":[21805580],"Muddy Mangrove Roots":[21870173,21870174,21870175],"Mushroom Stem":[21214847],"Mycelium":[21215507],"Neodymium":[20883794],"Neon":[20887178],"Neptunium":[20888366],"Nether Brick Fence":[21219143],"Nether Brick Slab":[21219584,21219585,21219587],"Nether Brick Stairs":[21222456,21222457,21222458,21222459,21222460,21222461,21222462,21222463],"Nether Brick Wall":[21223712,21223713,21223714,21223715,21223716,21223717,21223718,21223719,21223720,21223721,21223722,21223723,21223724,21223725,21223726,21223727,21223728,21223744,21223745,21223746,21223747,21223748,21223749,21223750,21223751,21223752,21223753,21223754,21223755,21223756,21223757,21223758,21223759,21223760,21223761,21223762,21223763,21223764,21223765,21223766,21223767,21223768,21223769,21223770,21223771,21223772,21223773,21223774,21223775,21223776,21223777,21223778,21223779,21223780,21223781,21223782,21223783,21223784,21223785,21223786,21223787,21223788,21223789,21223790,21223791,21223792,21223793,21223794,21223795,21223796,21223797,21223798,21223799,21223800,21223801,21223802,21223803,21223804,21223805,21223806,21223807,21223840,21223841,21223842,21223843,21223844,21223845,21223846,21223847,21223848,21223849,21223850,21223851,21223852,21223853,21223854,21223855,21223856,21223872,21223873,21223874,21223875,21223876,21223877,21223878,21223879,21223880,21223881,21223882,21223883,21223884,21223885,21223886,21223887,21223888,21223889,21223890,21223891,21223892,21223893,21223894,21223895,21223896,21223897,21223898,21223899,21223900,21223901,21223902,21223903,21223904,21223905,21223906,21223907,21223908,21223909,21223910,21223911,21223912,21223913,21223914,21223915,21223916,21223917,21223918,21223919,21223920,21223921,21223922,21223923,21223924,21223925,21223926,21223927,21223928,21223929,21223930,21223931,21223932,21223933,21223934,21223935],"Nether Bricks":[21225672],"Nether Gold Ore":[21801107],"Nether Portal":[21229304,21229305],"Nether Quartz Ore":[21230807],"Nether Reactor Core":[21233112],"Nether Wart":[21235588,21235589,21235590,21235591],"Nether Wart Block":[21237079],"Netherite Block":[21848862],"Netherrack":[21239734],"Nickel":[20891060],"Nihonium":[20892811],"Niobium":[20895630],"Nitrogen":[20897160],"Nobelium":[20898460],"Note Block":[21241302],"Oak Button":[21243152,21243153,21243156,21243157,21243158,21243159,21243160,21243161,21243164,21243165,21243166,21243167],"Oak Door":[21245696,21245697,21245698,21245699,21245700,21245701,21245702,21245703,21245704,21245705,21245706,21245707,21245708,21245709,21245710,21245711,21245712,21245713,21245714,21245715,21245716,21245717,21245718,21245719,21245720,21245721,21245722,21245723,21245724,21245725,21245726,21245727],"Oak Fence":[21247506],"Oak Fence Gate":[21248560,21248561,21248562,21248563,21248564,21248565,21248566,21248567,21248568,21248569,21248570,21248571,21248572,21248573,21248574,21248575],"Oak Leaves":[21250248,21250249,21250250,21250251],"Oak Log":[21253352,21253353,21253356,21253357,21253358,21253359],"Oak Planks":[21255504],"Oak Pressure Plate":[21257680,21257681],"Oak Sapling":[21258462,21258463],"Oak Sign":[21262208,21262209,21262210,21262211,21262212,21262213,21262214,21262215,21262216,21262217,21262218,21262219,21262220,21262221,21262222,21262223],"Oak Slab":[21264373,21264374,21264375],"Oak Stairs":[21264984,21264985,21264986,21264987,21264988,21264989,21264990,21264991],"Oak Trapdoor":[21267760,21267761,21267762,21267763,21267764,21267765,21267766,21267767,21267768,21267769,21267770,21267771,21267772,21267773,21267774,21267775],"Oak Wall Sign":[21270344,21270345,21270346,21270347],"Oak Wood":[21272410,21272411,21272412,21272413,21272414,21272415],"Obsidian":[21273247],"Oganesson":[20901372],"Orange Tulip":[21278363],"Osmium":[20902298],"Oxeye Daisy":[21280579],"Oxygen":[20904205],"Packed Ice":[21282488],"Packed Mud":[21814973],"Palladium":[20907027],"Peony":[21283348,21283349],"Phosphorus":[20908773],"Pink Petals":[21933456,21933457,21933458,21933459,21933460,21933461,21933462,21933463,21933464,21933465,21933466,21933467,21933468,21933469,21933470,21933471],"Pink Tulip":[21286997],"Pitcher Crop":[21947997,21947998,21947999],"Pitcher Plant":[21945642,21945643],"Platinum":[20911235],"Plutonium":[20912900],"Podzol":[21290197],"Polished Andesite":[21292531],"Polished Andesite Slab":[21294924,21294925,21294927],"Polished Andesite Stairs":[21295920,21295921,21295922,21295923,21295924,21295925,21295926,21295927],"Polished Basalt":[21592160,21592162,21592163],"Polished Blackstone":[21605632],"Polished Blackstone Brick Slab":[21622088,21622089,21622090],"Polished Blackstone Brick Stairs":[21622992,21622993,21622994,21622995,21622996,21622997,21622998,21622999],"Polished Blackstone Brick Wall":[21624832,21624833,21624834,21624835,21624836,21624837,21624838,21624839,21624840,21624841,21624842,21624843,21624844,21624845,21624846,21624847,21624848,21624849,21624850,21624851,21624852,21624853,21624854,21624855,21624856,21624857,21624858,21624859,21624860,21624861,21624862,21624863,21624864,21624865,21624866,21624867,21624868,21624869,21624870,21624871,21624872,21624873,21624874,21624875,21624876,21624877,21624878,21624879,21624880,21624881,21624882,21624883,21624884,21624885,21624886,21624887,21624888,21624889,21624890,21624891,21624892,21624893,21624894,21624895,21624896,21624912,21624913,21624914,21624915,21624916,21624917,21624918,21624919,21624920,21624921,21624922,21624923,21624924,21624925,21624926,21624927,21624960,21624961,21624962,21624963,21624964,21624965,21624966,21624967,21624968,21624969,21624970,21624971,21624972,21624973,21624974,21624975,21624976,21624977,21624978,21624979,21624980,21624981,21624982,21624983,21624984,21624985,21624986,21624987,21624988,21624989,21624990,21624991,21624992,21624993,21624994,21624995,21624996,21624997,21624998,21624999,21625000,21625001,21625002,21625003,21625004,21625005,21625006,21625007,21625008,21625009,21625010,21625011,21625012,21625013,21625014,21625015,21625016,21625017,21625018,21625019,21625020,21625021,21625022,21625023,21625024,21625040,21625041,21625042,21625043,21625044,21625045,21625046,21625047,21625048,21625049,21625050,21625051,21625052,21625053,21625054,21625055],"Polished Blackstone Bricks":[21619830],"Polished Blackstone Button":[21607152,21607153,21607154,21607155,21607156,21607157,21607160,21607161,21607162,21607163,21607164,21607165],"Polished Blackstone Pressure Plate":[21609892,21609893],"Polished Blackstone Slab":[21611892,21611893,21611894],"Polished Blackstone Stairs":[21614000,21614001,21614002,21614003,21614004,21614005,21614006,21614007],"Polished Blackstone Wall":[21614848,21614849,21614850,21614851,21614852,21614853,21614854,21614855,21614856,21614857,21614858,21614859,21614860,21614861,21614862,21614863,21614864,21614865,21614866,21614867,21614868,21614869,21614870,21614871,21614872,21614873,21614874,21614875,21614876,21614877,21614878,21614879,21614880,21614881,21614882,21614883,21614884,21614885,21614886,21614887,21614888,21614889,21614890,21614891,21614892,21614893,21614894,21614895,21614896,21614897,21614898,21614899,21614900,21614901,21614902,21614903,21614904,21614905,21614906,21614907,21614908,21614909,21614910,21614911,21614917,21614928,21614929,21614930,21614931,21614932,21614933,21614934,21614935,21614936,21614937,21614938,21614939,21614940,21614941,21614942,21614943,21614976,21614977,21614978,21614979,21614980,21614981,21614982,21614983,21614984,21614985,21614986,21614987,21614988,21614989,21614990,21614991,21614992,21614993,21614994,21614995,21614996,21614997,21614998,21614999,21615000,21615001,21615002,21615003,21615004,21615005,21615006,21615007,21615008,21615009,21615010,21615011,21615012,21615013,21615014,21615015,21615016,21615017,21615018,21615019,21615020,21615021,21615022,21615023,21615024,21615025,21615026,21615027,21615028,21615029,21615030,21615031,21615032,21615033,21615034,21615035,21615036,21615037,21615038,21615039,21615045,21615056,21615057,21615058,21615059,21615060,21615061,21615062,21615063,21615064,21615065,21615066,21615067,21615068,21615069,21615070,21615071],"Polished Deepslate":[21670363],"Polished Deepslate Slab":[21672268,21672270,21672271],"Polished Deepslate Stairs":[21674288,21674289,21674290,21674291,21674292,21674293,21674294,21674295],"Polished Deepslate Wall":[21676076,21676080,21676081,21676082,21676083,21676084,21676085,21676086,21676087,21676088,21676089,21676090,21676091,21676092,21676093,21676094,21676095,21676096,21676097,21676098,21676099,21676100,21676101,21676102,21676103,21676104,21676105,21676106,21676107,21676108,21676109,21676110,21676111,21676112,21676113,21676114,21676115,21676116,21676117,21676118,21676119,21676120,21676121,21676122,21676123,21676124,21676125,21676126,21676127,21676128,21676129,21676130,21676131,21676132,21676133,21676134,21676135,21676136,21676137,21676138,21676139,21676140,21676141,21676142,21676143,21676144,21676145,21676146,21676147,21676148,21676149,21676150,21676151,21676152,21676153,21676154,21676155,21676156,21676157,21676158,21676159,21676204,21676208,21676209,21676210,21676211,21676212,21676213,21676214,21676215,21676216,21676217,21676218,21676219,21676220,21676221,21676222,21676223,21676224,21676225,21676226,21676227,21676228,21676229,21676230,21676231,21676232,21676233,21676234,21676235,21676236,21676237,21676238,21676239,21676240,21676241,21676242,21676243,21676244,21676245,21676246,21676247,21676248,21676249,21676250,21676251,21676252,21676253,21676254,21676255,21676256,21676257,21676258,21676259,21676260,21676261,21676262,21676263,21676264,21676265,21676266,21676267,21676268,21676269,21676270,21676271,21676272,21676273,21676274,21676275,21676276,21676277,21676278,21676279,21676280,21676281,21676282,21676283,21676284,21676285,21676286,21676287],"Polished Diorite":[21298589],"Polished Diorite Slab":[21299568,21299570,21299571],"Polished Diorite Stairs":[21301328,21301329,21301330,21301331,21301332,21301333,21301334,21301335],"Polished Granite":[21304978],"Polished Granite Slab":[21307024,21307025,21307027],"Polished Granite Stairs":[21307536,21307537,21307538,21307539,21307540,21307541,21307542,21307543],"Polonium":[20915922],"Poppy":[21310628],"Potassium":[20916939],"Potato Block":[21312968,21312969,21312970,21312971,21312972,21312973,21312974,21312975],"Potion Cauldron":[21859216,21859217,21859218,21859219,21859220,21859221],"Powered Rail":[21313936,21313937,21313938,21313939,21313942,21313943,21313944,21313945,21313946,21313947,21313950,21313951],"Praseodymium":[20918290],"Prismarine":[21317514],"Prismarine Bricks":[21318880],"Prismarine Bricks Slab":[21319764,21319766,21319767],"Prismarine Bricks Stairs":[21322480,21322481,21322482,21322483,21322484,21322485,21322486,21322487],"Prismarine Slab":[21324568,21324569,21324571],"Prismarine Stairs":[21327832,21327833,21327834,21327835,21327836,21327837,21327838,21327839],"Prismarine Wall":[21327872,21327873,21327874,21327875,21327876,21327877,21327878,21327879,21327880,21327881,21327882,21327883,21327884,21327885,21327886,21327887,21327888,21327889,21327890,21327891,21327892,21327893,21327894,21327895,21327896,21327897,21327898,21327899,21327900,21327901,21327902,21327903,21327904,21327905,21327906,21327907,21327908,21327909,21327910,21327911,21327912,21327913,21327914,21327915,21327916,21327917,21327918,21327919,21327920,21327921,21327922,21327923,21327924,21327925,21327926,21327927,21327928,21327929,21327930,21327931,21327932,21327933,21327934,21327935,21327974,21327984,21327985,21327986,21327987,21327988,21327989,21327990,21327991,21327992,21327993,21327994,21327995,21327996,21327997,21327998,21327999,21328000,21328001,21328002,21328003,21328004,21328005,21328006,21328007,21328008,21328009,21328010,21328011,21328012,21328013,21328014,21328015,21328016,21328017,21328018,21328019,21328020,21328021,21328022,21328023,21328024,21328025,21328026,21328027,21328028,21328029,21328030,21328031,21328032,21328033,21328034,21328035,21328036,21328037,21328038,21328039,21328040,21328041,21328042,21328043,21328044,21328045,21328046,21328047,21328048,21328049,21328050,21328051,21328052,21328053,21328054,21328055,21328056,21328057,21328058,21328059,21328060,21328061,21328062,21328063,21328102,21328112,21328113,21328114,21328115,21328116,21328117,21328118,21328119,21328120,21328121,21328122,21328123,21328124,21328125,21328126,21328127],"Promethium":[20920321],"Protactinium":[20923161],"Pumpkin":[21331624],"Pumpkin Stem":[21333968,21333969,21333970,21333971,21333972,21333973,21333974,21333975,21333976,21333977,21333978,21333979,21333980,21333981,21333982,21333983,21333984,21333985,21333986,21333987,21333988,21333989,21333990,21333991,21333992,21333993,21333994,21333995,21333996,21333997,21333998,21333999,21334000,21334001,21334002,21334003,21334004,21334005,21334006,21334007],"Purple Torch":[21337610,21337611,21337612,21337613,21337614],"Purpur Block":[21338315],"Purpur Pillar":[21340545,21340546,21340547],"Purpur Slab":[21344168,21344169,21344170],"Purpur Stairs":[21344432,21344433,21344434,21344435,21344436,21344437,21344438,21344439],"Quartz Block":[21347391],"Quartz Bricks":[21678669],"Quartz Pillar":[21348820,21348821,21348823],"Quartz Slab":[21351776,21351777,21351779],"Quartz Stairs":[21352904,21352905,21352906,21352907,21352908,21352909,21352910,21352911],"Radium":[20925466],"Radon":[20927914],"Rail":[21356230,21356231,21356232,21356233,21356234,21356235,21356236,21356237,21356238,21356239],"Raw Copper Block":[21632127],"Raw Gold Block":[21634601],"Raw Iron Block":[21635367],"Red Mushroom":[21359866],"Red Mushroom Block":[21361105,21361106,21361107,21361112,21361113,21361114,21361115,21361116,21361117,21361118,21361119],"Red Nether Brick Slab":[21363940,21363942,21363943],"Red Nether Brick Stairs":[21365640,21365641,21365642,21365643,21365644,21365645,21365646,21365647],"Red Nether Brick Wall":[21367808,21367809,21367810,21367811,21367812,21367813,21367814,21367815,21367816,21367817,21367818,21367819,21367820,21367821,21367822,21367823,21367824,21367825,21367826,21367827,21367828,21367829,21367830,21367831,21367832,21367833,21367834,21367835,21367836,21367837,21367838,21367839,21367840,21367841,21367842,21367843,21367844,21367845,21367846,21367847,21367848,21367849,21367850,21367851,21367852,21367853,21367854,21367855,21367856,21367857,21367858,21367859,21367860,21367861,21367862,21367863,21367864,21367865,21367866,21367867,21367868,21367869,21367870,21367871,21367872,21367888,21367889,21367890,21367891,21367892,21367893,21367894,21367895,21367896,21367897,21367898,21367899,21367900,21367901,21367902,21367903,21367936,21367937,21367938,21367939,21367940,21367941,21367942,21367943,21367944,21367945,21367946,21367947,21367948,21367949,21367950,21367951,21367952,21367953,21367954,21367955,21367956,21367957,21367958,21367959,21367960,21367961,21367962,21367963,21367964,21367965,21367966,21367967,21367968,21367969,21367970,21367971,21367972,21367973,21367974,21367975,21367976,21367977,21367978,21367979,21367980,21367981,21367982,21367983,21367984,21367985,21367986,21367987,21367988,21367989,21367990,21367991,21367992,21367993,21367994,21367995,21367996,21367997,21367998,21367999,21368000,21368016,21368017,21368018,21368019,21368020,21368021,21368022,21368023,21368024,21368025,21368026,21368027,21368028,21368029,21368030,21368031],"Red Nether Bricks":[21368920],"Red Sand":[21371243],"Red Sandstone":[21373682],"Red Sandstone Slab":[21375308,21375309,21375310],"Red Sandstone Stairs":[21377256,21377257,21377258,21377259,21377260,21377261,21377262,21377263],"Red Sandstone Wall":[21380352,21380353,21380354,21380355,21380356,21380357,21380358,21380359,21380360,21380361,21380362,21380363,21380364,21380365,21380366,21380367,21380383,21380416,21380417,21380418,21380419,21380420,21380421,21380422,21380423,21380424,21380425,21380426,21380427,21380428,21380429,21380430,21380431,21380432,21380433,21380434,21380435,21380436,21380437,21380438,21380439,21380440,21380441,21380442,21380443,21380444,21380445,21380446,21380447,21380448,21380449,21380450,21380451,21380452,21380453,21380454,21380455,21380456,21380457,21380458,21380459,21380460,21380461,21380462,21380463,21380464,21380465,21380466,21380467,21380468,21380469,21380470,21380471,21380472,21380473,21380474,21380475,21380476,21380477,21380478,21380479,21380480,21380481,21380482,21380483,21380484,21380485,21380486,21380487,21380488,21380489,21380490,21380491,21380492,21380493,21380494,21380495,21380511,21380544,21380545,21380546,21380547,21380548,21380549,21380550,21380551,21380552,21380553,21380554,21380555,21380556,21380557,21380558,21380559,21380560,21380561,21380562,21380563,21380564,21380565,21380566,21380567,21380568,21380569,21380570,21380571,21380572,21380573,21380574,21380575,21380576,21380577,21380578,21380579,21380580,21380581,21380582,21380583,21380584,21380585,21380586,21380587,21380588,21380589,21380590,21380591,21380592,21380593,21380594,21380595,21380596,21380597,21380598,21380599,21380600,21380601,21380602,21380603,21380604,21380605,21380606,21380607],"Red Torch":[21381490,21381491,21381492,21381493,21381495],"Red Tulip":[21384139],"Redstone":[21397872,21397873,21397874,21397875,21397876,21397877,21397878,21397879,21397880,21397881,21397882,21397883,21397884,21397885,21397886,21397887],"Redstone Block":[21385654],"Redstone Comparator":[21388928,21388929,21388930,21388931,21388932,21388933,21388934,21388935,21388936,21388937,21388938,21388939,21388940,21388941,21388942,21388943],"Redstone Lamp":[21390644,21390645],"Redstone Ore":[21392016,21392017],"Redstone Repeater":[21394976,21394977,21394978,21394979,21394980,21394981,21394982,21394983,21394984,21394985,21394986,21394987,21394988,21394989,21394990,21394991,21394992,21394993,21394994,21394995,21394996,21394997,21394998,21394999,21395000,21395001,21395002,21395003,21395004,21395005,21395006,21395007],"Redstone Torch":[21396497,21396498,21396499,21396500,21396501,21396505,21396506,21396507,21396508,21396509],"Reinforced Deepslate":[21889612],"Rhenium":[20930190],"Rhodium":[20931608],"Roentgenium":[20934217],"Rose Bush":[21402408,21402409],"Rubidium":[20936670],"Ruthenium":[20937111],"Rutherfordium":[20939938],"Samarium":[20942830],"Sand":[21405599],"Sandstone":[21406854],"Sandstone Slab":[21408357,21408358,21408359],"Sandstone Stairs":[21410360,21410361,21410362,21410363,21410364,21410365,21410366,21410367],"Sandstone Wall":[21413632,21413633,21413634,21413635,21413636,21413637,21413638,21413639,21413640,21413641,21413642,21413643,21413644,21413645,21413646,21413647,21413648,21413649,21413650,21413651,21413652,21413653,21413654,21413655,21413656,21413657,21413658,21413659,21413660,21413661,21413662,21413663,21413664,21413665,21413666,21413667,21413668,21413669,21413670,21413671,21413672,21413673,21413674,21413675,21413676,21413677,21413678,21413679,21413680,21413681,21413682,21413683,21413684,21413685,21413686,21413687,21413688,21413689,21413690,21413691,21413692,21413693,21413694,21413695,21413696,21413697,21413698,21413699,21413700,21413701,21413702,21413703,21413704,21413705,21413706,21413707,21413708,21413709,21413710,21413711,21413719,21413760,21413761,21413762,21413763,21413764,21413765,21413766,21413767,21413768,21413769,21413770,21413771,21413772,21413773,21413774,21413775,21413776,21413777,21413778,21413779,21413780,21413781,21413782,21413783,21413784,21413785,21413786,21413787,21413788,21413789,21413790,21413791,21413792,21413793,21413794,21413795,21413796,21413797,21413798,21413799,21413800,21413801,21413802,21413803,21413804,21413805,21413806,21413807,21413808,21413809,21413810,21413811,21413812,21413813,21413814,21413815,21413816,21413817,21413818,21413819,21413820,21413821,21413822,21413823,21413824,21413825,21413826,21413827,21413828,21413829,21413830,21413831,21413832,21413833,21413834,21413835,21413836,21413837,21413838,21413839,21413847],"Scandium":[20944835],"Sculk":[21880279],"Sea Lantern":[21415151],"Sea Pickle":[21417344,21417345,21417346,21417347,21417348,21417349,21417350,21417351],"Seaborgium":[20946478],"Selenium":[20948963],"Shroomlight":[21696604],"Shulker Box":[21418259],"Silicon":[20949447],"Silver":[20952835],"Slime Block":[21421890],"Small Dripleaf":[21927576,21927577,21927578,21927579,21927580,21927581,21927582,21927583],"Smithing Table":[21847863],"Smoker":[21423456,21423457,21423458,21423459,21423460,21423461,21423462,21423463],"Smooth Basalt":[21595261],"Smooth Quartz Block":[21425097],"Smooth Quartz Slab":[21428056,21428057,21428058],"Smooth Quartz Stairs":[21429504,21429505,21429506,21429507,21429508,21429509,21429510,21429511],"Smooth Red Sandstone":[21431324],"Smooth Red Sandstone Slab":[21432877,21432878,21432879],"Smooth Red Sandstone Stairs":[21436184,21436185,21436186,21436187,21436188,21436189,21436190,21436191],"Smooth Sandstone":[21438242],"Smooth Sandstone Slab":[21439385,21439386,21439387],"Smooth Sandstone Stairs":[21440752,21440753,21440754,21440755,21440756,21440757,21440758,21440759],"Smooth Stone":[21444566],"Smooth Stone Slab":[21446216,21446217,21446219],"Snow Block":[21448652],"Snow Layer":[21449736,21449737,21449738,21449739,21449740,21449741,21449742,21449743],"Sodium":[20953522],"Soul Fire":[21696136],"Soul Lantern":[21692144,21692145],"Soul Sand":[21451142],"Soul Soil":[21693270],"Soul Torch":[21689448,21689449,21689452,21689454,21689455],"Sponge":[21454292,21454293],"Spore Blossom":[21852156],"Spruce Button":[21456688,21456689,21456690,21456691,21456692,21456693,21456696,21456697,21456698,21456699,21456700,21456701],"Spruce Door":[21458400,21458401,21458402,21458403,21458404,21458405,21458406,21458407,21458408,21458409,21458410,21458411,21458412,21458413,21458414,21458415,21458416,21458417,21458418,21458419,21458420,21458421,21458422,21458423,21458424,21458425,21458426,21458427,21458428,21458429,21458430,21458431],"Spruce Fence":[21459375],"Spruce Fence Gate":[21462512,21462513,21462514,21462515,21462516,21462517,21462518,21462519,21462520,21462521,21462522,21462523,21462524,21462525,21462526,21462527],"Spruce Leaves":[21463656,21463657,21463658,21463659],"Spruce Log":[21465720,21465721,21465724,21465725,21465726,21465727],"Spruce Planks":[21468562],"Spruce Pressure Plate":[21469450,21469451],"Spruce Sapling":[21472860,21472861],"Spruce Sign":[21473424,21473425,21473426,21473427,21473428,21473429,21473430,21473431,21473432,21473433,21473434,21473435,21473436,21473437,21473438,21473439],"Spruce Slab":[21475816,21475817,21475818],"Spruce Stairs":[21477456,21477457,21477458,21477459,21477460,21477461,21477462,21477463],"Spruce Trapdoor":[21481008,21481009,21481010,21481011,21481012,21481013,21481014,21481015,21481016,21481017,21481018,21481019,21481020,21481021,21481022,21481023],"Spruce Wall Sign":[21483504,21483505,21483506,21483507],"Spruce Wood":[21484912,21484913,21484914,21484915,21484918,21484919],"Stained Clay":[21486144,21486145,21486146,21486147,21486148,21486149,21486150,21486151,21486152,21486153,21486154,21486155,21486156,21486157,21486158,21486159],"Stained Glass":[21489584,21489585,21489586,21489587,21489588,21489589,21489590,21489591,21489592,21489593,21489594,21489595,21489596,21489597,21489598,21489599],"Stained Glass Pane":[21489792,21489793,21489794,21489795,21489796,21489797,21489798,21489799,21489800,21489801,21489802,21489803,21489804,21489805,21489806,21489807],"Stained Hardened Glass":[21491728,21491729,21491730,21491731,21491732,21491733,21491734,21491735,21491736,21491737,21491738,21491739,21491740,21491741,21491742,21491743],"Stained Hardened Glass Pane":[21495136,21495137,21495138,21495139,21495140,21495141,21495142,21495143,21495144,21495145,21495146,21495147,21495148,21495149,21495150,21495151],"Stone":[21496052],"Stone Brick Slab":[21498972,21498973,21498974],"Stone Brick Stairs":[21500248,21500249,21500250,21500251,21500252,21500253,21500254,21500255],"Stone Brick Wall":[21503744,21503745,21503746,21503747,21503748,21503749,21503750,21503751,21503752,21503753,21503754,21503755,21503756,21503757,21503758,21503759,21503773,21503808,21503809,21503810,21503811,21503812,21503813,21503814,21503815,21503816,21503817,21503818,21503819,21503820,21503821,21503822,21503823,21503824,21503825,21503826,21503827,21503828,21503829,21503830,21503831,21503832,21503833,21503834,21503835,21503836,21503837,21503838,21503839,21503840,21503841,21503842,21503843,21503844,21503845,21503846,21503847,21503848,21503849,21503850,21503851,21503852,21503853,21503854,21503855,21503856,21503857,21503858,21503859,21503860,21503861,21503862,21503863,21503864,21503865,21503866,21503867,21503868,21503869,21503870,21503871,21503872,21503873,21503874,21503875,21503876,21503877,21503878,21503879,21503880,21503881,21503882,21503883,21503884,21503885,21503886,21503887,21503901,21503936,21503937,21503938,21503939,21503940,21503941,21503942,21503943,21503944,21503945,21503946,21503947,21503948,21503949,21503950,21503951,21503952,21503953,21503954,21503955,21503956,21503957,21503958,21503959,21503960,21503961,21503962,21503963,21503964,21503965,21503966,21503967,21503968,21503969,21503970,21503971,21503972,21503973,21503974,21503975,21503976,21503977,21503978,21503979,21503980,21503981,21503982,21503983,21503984,21503985,21503986,21503987,21503988,21503989,21503990,21503991,21503992,21503993,21503994,21503995,21503996,21503997,21503998,21503999],"Stone Bricks":[21505414],"Stone Button":[21507712,21507713,21507714,21507715,21507718,21507719,21507720,21507721,21507722,21507723,21507726,21507727],"Stone Pressure Plate":[21508356,21508357],"Stone Slab":[21512017,21512018,21512019],"Stone Stairs":[21512192,21512193,21512194,21512195,21512196,21512197,21512198,21512199],"Stonecutter":[21514984,21514985,21514986,21514987],"Strontium":[20955164],"Sugarcane":[21542656,21542657,21542658,21542659,21542660,21542661,21542662,21542663,21542664,21542665,21542666,21542667,21542668,21542669,21542670,21542671],"Sulfur":[20958068],"Sunflower":[21544506,21544507],"Sweet Berry Bush":[21545764,21545765,21545766,21545767],"TNT":[21550004,21550005,21550006,21550007],"Tall Grass":[21547986],"Tantalum":[20959931],"Technetium":[20962279],"Tellurium":[20964192],"Tennessine":[20965501],"Terbium":[20968631],"Thallium":[20971328],"Thorium":[20973507],"Thulium":[20974346],"Tin":[20976139],"Tinted Glass":[21779734],"Titanium":[20978911],"Torch":[21551770,21551771,21551772,21551773,21551775],"Torchflower":[21940847],"Torchflower Crop":[21943796,21943797],"Trapped Chest":[21553240,21553241,21553242,21553243],"Tripwire":[21556976,21556977,21556978,21556979,21556980,21556981,21556982,21556983,21556984,21556985,21556986,21556987,21556988,21556989,21556990,21556991],"Tripwire Hook":[21559008,21559009,21559010,21559011,21559012,21559013,21559014,21559015,21559016,21559017,21559018,21559019,21559020,21559021,21559022,21559023],"Tuff":[21688162],"Tungsten":[20981723],"Twisting Vines":[21873664,21873665,21873666,21873667,21873668,21873669,21873670,21873671,21873672,21873673,21873674,21873675,21873676,21873677,21873678,21873679,21873680,21873681,21873688,21873689,21873690,21873691,21873692,21873693,21873694,21873695],"Underwater Torch":[21560248,21560249,21560252,21560254,21560255],"Uranium":[20982778],"Vanadium":[20984123],"Vines":[21562368,21562369,21562370,21562371,21562372,21562373,21562374,21562375,21562376,21562377,21562378,21562379,21562380,21562381,21562382,21562383],"Wall Banner":[21564672,21564673,21564674,21564675,21564676,21564677,21564678,21564679,21564680,21564681,21564682,21564683,21564684,21564685,21564686,21564687,21564688,21564689,21564690,21564691,21564692,21564693,21564694,21564695,21564696,21564697,21564698,21564699,21564700,21564701,21564702,21564703,21564704,21564705,21564706,21564707,21564708,21564709,21564710,21564711,21564712,21564713,21564714,21564715,21564716,21564717,21564718,21564719,21564720,21564721,21564722,21564723,21564724,21564725,21564726,21564727,21564728,21564729,21564730,21564731,21564732,21564733,21564734,21564735],"Wall Coral Fan":[21567296,21567300,21567301,21567302,21567303,21567304,21567308,21567309,21567310,21567311,21567312,21567316,21567317,21567318,21567319,21567320,21567324,21567325,21567326,21567327,21567328,21567332,21567333,21567334,21567335,21567336,21567340,21567341,21567342,21567343,21567344,21567348,21567349,21567350,21567351,21567352,21567356,21567357,21567358,21567359],"Warped Button":[21741552,21741553,21741556,21741557,21741558,21741559,21741560,21741561,21741564,21741565,21741566,21741567],"Warped Door":[21752672,21752673,21752674,21752675,21752676,21752677,21752678,21752679,21752680,21752681,21752682,21752683,21752684,21752685,21752686,21752687,21752688,21752689,21752690,21752691,21752692,21752693,21752694,21752695,21752696,21752697,21752698,21752699,21752700,21752701,21752702,21752703],"Warped Fence":[21709978],"Warped Fence Gate":[21759616,21759617,21759618,21759619,21759620,21759621,21759622,21759623,21759624,21759625,21759626,21759627,21759628,21759629,21759630,21759631],"Warped Hyphae":[21727976,21727977,21727980,21727981,21727982,21727983],"Warped Planks":[21703045],"Warped Pressure Plate":[21747528,21747529],"Warped Roots":[21938097],"Warped Sign":[21771312,21771313,21771314,21771315,21771316,21771317,21771318,21771319,21771320,21771321,21771322,21771323,21771324,21771325,21771326,21771327],"Warped Slab":[21715036,21715038,21715039],"Warped Stairs":[21765928,21765929,21765930,21765931,21765932,21765933,21765934,21765935],"Warped Stem":[21721496,21721497,21721500,21721501,21721502,21721503],"Warped Trapdoor":[21734544,21734545,21734546,21734547,21734548,21734549,21734550,21734551,21734552,21734553,21734554,21734555,21734556,21734557,21734558,21734559],"Warped Wall Sign":[21777200,21777201,21777202,21777203],"Warped Wart Block":[21815813],"Water":[21568608,21568609,21568610,21568611,21568612,21568613,21568614,21568615,21568616,21568617,21568618,21568619,21568620,21568621,21568622,21568623,21568624,21568625,21568626,21568627,21568628,21568629,21568630,21568631,21568632,21568633,21568634,21568635,21568636,21568637,21568638,21568639],"Water Cauldron":[21854480,21854481,21854482,21854483,21854486,21854487],"Weeping Vines":[21875072,21875073,21875074,21875075,21875076,21875077,21875078,21875079,21875080,21875081,21875082,21875083,21875084,21875085,21875086,21875087,21875088,21875089,21875090,21875091,21875092,21875093,21875094,21875095,21875102,21875103],"Weighted Pressure Plate Heavy":[21570544,21570545,21570546,21570547,21570548,21570549,21570550,21570551,21570552,21570553,21570554,21570555,21570556,21570557,21570558,21570559],"Weighted Pressure Plate Light":[21572160,21572161,21572162,21572163,21572164,21572165,21572166,21572167,21572168,21572169,21572170,21572171,21572172,21572173,21572174,21572175],"Wheat Block":[21575552,21575553,21575554,21575555,21575556,21575557,21575558,21575559],"White Tulip":[21578492],"Wither Rose":[21841807],"Wool":[21580784,21580785,21580786,21580787,21580788,21580789,21580790,21580791,21580792,21580793,21580794,21580795,21580796,21580797,21580798,21580799],"Xenon":[20987135],"Ytterbium":[20989425],"Yttrium":[20991002],"Zinc":[20995928],"Zirconium":[20996890],"ate!upd":[21097998],"reserved6":[21399796],"update!":[21096340]},"stateDataBits":11} \ No newline at end of file diff --git a/tests/phpunit/data/bedrock/block/convert/BlockSerializerDeserializerTest.php b/tests/phpunit/data/bedrock/block/convert/BlockSerializerDeserializerTest.php index 6db39bb48..a47a9b155 100644 --- a/tests/phpunit/data/bedrock/block/convert/BlockSerializerDeserializerTest.php +++ b/tests/phpunit/data/bedrock/block/convert/BlockSerializerDeserializerTest.php @@ -28,6 +28,7 @@ use pocketmine\block\BaseBanner; use pocketmine\block\Bed; use pocketmine\block\BlockTypeIds; use pocketmine\block\CaveVines; +use pocketmine\block\Farmland; use pocketmine\block\MobHead; use pocketmine\block\RuntimeBlockStateRegistry; use pocketmine\data\bedrock\block\BlockStateDeserializeException; @@ -76,6 +77,8 @@ final class BlockSerializerDeserializerTest extends TestCase{ $newBlock->setMobHeadType($block->getMobHeadType()); }elseif($block instanceof CaveVines && $newBlock instanceof CaveVines && !$block->hasBerries()){ $newBlock->setHead($block->isHead()); + }elseif($block instanceof Farmland && $newBlock instanceof Farmland){ + $block->setWaterPositionIndex($newBlock->getWaterPositionIndex()); } self::assertSame($block->getStateId(), $newBlock->getStateId(), "Mismatch of blockstate for " . $block->getName() . ", " . print_r($block, true) . " vs " . print_r($newBlock, true)); From c14eb63f9b8cf734fc7c75b624af55d90822851f Mon Sep 17 00:00:00 2001 From: Hugo_ <55756021+Dhaiven@users.noreply.github.com> Date: Tue, 17 Oct 2023 17:30:35 +0200 Subject: [PATCH 09/39] Wooden Button can be a fuel (#6099) --- src/block/WoodenButton.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/block/WoodenButton.php b/src/block/WoodenButton.php index d1123ec2d..7ba8a7af0 100644 --- a/src/block/WoodenButton.php +++ b/src/block/WoodenButton.php @@ -35,4 +35,8 @@ class WoodenButton extends Button{ public function hasEntityCollision() : bool{ return false; //TODO: arrows activate wooden buttons } + + public function getFuelTime() : int{ + return $this->woodType->isFlammable() ? 100 : 0; + } } From 7b5c30bc2c0c9bcc3654df239c2e1918a61a3ce5 Mon Sep 17 00:00:00 2001 From: Hugo_ <55756021+Dhaiven@users.noreply.github.com> Date: Tue, 17 Oct 2023 23:10:08 +0200 Subject: [PATCH 10/39] WoodenDoor can be a fuel (#6101) --- src/block/WoodenDoor.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/block/WoodenDoor.php b/src/block/WoodenDoor.php index e398812cd..96f349e49 100644 --- a/src/block/WoodenDoor.php +++ b/src/block/WoodenDoor.php @@ -27,4 +27,8 @@ use pocketmine\block\utils\WoodTypeTrait; class WoodenDoor extends Door{ use WoodTypeTrait; + + public function getFuelTime() : int{ + return $this->woodType->isFlammable() ? 200 : 0; + } } From 932116fa524e4cf553834583c9c6ab479501a09a Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Wed, 18 Oct 2023 10:22:37 +0100 Subject: [PATCH 11/39] Server: re-added @see reference that somehow got deleted this is useful when clicking through references in the call stack. --- src/Server.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Server.php b/src/Server.php index 2f1e9a53b..9adc8e794 100644 --- a/src/Server.php +++ b/src/Server.php @@ -570,6 +570,7 @@ class Server{ $playerPromiseResolver = new PromiseResolver(); $createPlayer = function(Location $location) use ($playerPromiseResolver, $class, $session, $playerInfo, $authenticated, $offlinePlayerData) : void{ + /** @see Player::__construct() */ $player = new $class($this, $session, $playerInfo, $authenticated, $location, $offlinePlayerData); if(!$player->hasPlayedBefore()){ $player->onGround = true; //TODO: this hack is needed for new players in-air ticks - they don't get detected as on-ground until they move From b4d55e4384e8f63b64db23a4fad8d1cb9da1d320 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Le=C3=B3n?= <58715544+JavierLeon9966@users.noreply.github.com> Date: Wed, 18 Oct 2023 06:40:01 -0300 Subject: [PATCH 12/39] Fixed dirt and grass block interactions when clicking on sides other than the top (#6071) --- src/block/Dirt.php | 7 ++++++- src/block/Grass.php | 29 ++++++++++++++++------------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/src/block/Dirt.php b/src/block/Dirt.php index 539454b41..fd6dc9d09 100644 --- a/src/block/Dirt.php +++ b/src/block/Dirt.php @@ -59,7 +59,12 @@ class Dirt extends Opaque{ public function onInteract(Item $item, int $face, Vector3 $clickVector, ?Player $player = null, array &$returnedItems = []) : bool{ $world = $this->position->getWorld(); - if($face === Facing::UP && $item instanceof Hoe){ + if($face !== Facing::DOWN && $item instanceof Hoe){ + $up = $this->getSide(Facing::UP); + if($up->getTypeId() !== BlockTypeIds::AIR){ + return true; + } + $item->applyDamage(1); $newBlock = $this->dirtType->equals(DirtType::NORMAL()) ? VanillaBlocks::FARMLAND() : VanillaBlocks::DIRT(); diff --git a/src/block/Grass.php b/src/block/Grass.php index 709dc6a9d..f3fd96a34 100644 --- a/src/block/Grass.php +++ b/src/block/Grass.php @@ -82,7 +82,7 @@ class Grass extends Opaque{ } public function onInteract(Item $item, int $face, Vector3 $clickVector, ?Player $player = null, array &$returnedItems = []) : bool{ - if($face !== Facing::UP){ + if($this->getSide(Facing::UP)->getTypeId() !== BlockTypeIds::AIR){ return false; } $world = $this->position->getWorld(); @@ -91,20 +91,23 @@ class Grass extends Opaque{ TallGrassObject::growGrass($world, $this->position, new Random(mt_rand()), 8, 2); return true; - }elseif($item instanceof Hoe){ - $item->applyDamage(1); - $newBlock = VanillaBlocks::FARMLAND(); - $world->addSound($this->position->add(0.5, 0.5, 0.5), new ItemUseOnBlockSound($newBlock)); - $world->setBlock($this->position, $newBlock); + } + if($face !== Facing::DOWN){ + if($item instanceof Hoe){ + $item->applyDamage(1); + $newBlock = VanillaBlocks::FARMLAND(); + $world->addSound($this->position->add(0.5, 0.5, 0.5), new ItemUseOnBlockSound($newBlock)); + $world->setBlock($this->position, $newBlock); - return true; - }elseif($item instanceof Shovel && $this->getSide(Facing::UP)->getTypeId() === BlockTypeIds::AIR){ - $item->applyDamage(1); - $newBlock = VanillaBlocks::GRASS_PATH(); - $world->addSound($this->position->add(0.5, 0.5, 0.5), new ItemUseOnBlockSound($newBlock)); - $world->setBlock($this->position, $newBlock); + return true; + }elseif($item instanceof Shovel){ + $item->applyDamage(1); + $newBlock = VanillaBlocks::GRASS_PATH(); + $world->addSound($this->position->add(0.5, 0.5, 0.5), new ItemUseOnBlockSound($newBlock)); + $world->setBlock($this->position, $newBlock); - return true; + return true; + } } return false; From b3390458b42772e3ca0ba20c240d102597871b35 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Oct 2023 11:58:27 +0100 Subject: [PATCH 13/39] Bump phpstan/phpstan from 1.10.38 to 1.10.39 (#6103) Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.38 to 1.10.39. - [Release notes](https://github.com/phpstan/phpstan/releases) - [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md) - [Commits](https://github.com/phpstan/phpstan/compare/1.10.38...1.10.39) --- updated-dependencies: - dependency-name: phpstan/phpstan dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- composer.json | 2 +- composer.lock | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index 61c5d0664..6b73c1555 100644 --- a/composer.json +++ b/composer.json @@ -52,7 +52,7 @@ "symfony/filesystem": "~6.3.0" }, "require-dev": { - "phpstan/phpstan": "1.10.38", + "phpstan/phpstan": "1.10.39", "phpstan/phpstan-phpunit": "^1.1.0", "phpstan/phpstan-strict-rules": "^1.2.0", "phpunit/phpunit": "~10.3.0 || ~10.2.0 || ~10.1.0" diff --git a/composer.lock b/composer.lock index 061eb245b..92f4d0285 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2282bf7835c1ced757460b083813e092", + "content-hash": "6c48ad06b67c3aa3890f004b197d17bc", "packages": [ { "name": "adhocore/json-comment", @@ -1378,16 +1378,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.10.38", + "version": "1.10.39", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "5302bb402c57f00fb3c2c015bac86e0827e4b691" + "reference": "d9dedb0413f678b4d03cbc2279a48f91592c97c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/5302bb402c57f00fb3c2c015bac86e0827e4b691", - "reference": "5302bb402c57f00fb3c2c015bac86e0827e4b691", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/d9dedb0413f678b4d03cbc2279a48f91592c97c4", + "reference": "d9dedb0413f678b4d03cbc2279a48f91592c97c4", "shasum": "" }, "require": { @@ -1436,7 +1436,7 @@ "type": "tidelift" } ], - "time": "2023-10-06T14:19:14+00:00" + "time": "2023-10-17T15:46:26+00:00" }, { "name": "phpstan/phpstan-phpunit", @@ -2964,5 +2964,5 @@ "platform-overrides": { "php": "8.1.0" }, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.3.0" } From c7a358a56fbb78473e11e0e611d85d1ee34524ef Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 12:52:02 +0100 Subject: [PATCH 14/39] World: extract getBlockCollisionBoxes() from getCollisionBoxes() closes #6104 This function has been a footgun for anyone using it, since it also returns entity AABBs by default. In all core use cases, this functionality was disabled, and we were paying a needless (admittedly micro) performance penalty for passing the extra useless argument and useless condition check. --- src/entity/Entity.php | 6 +++--- src/world/World.php | 19 ++++++++++++++++--- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/src/entity/Entity.php b/src/entity/Entity.php index 7e4d7cbde..d26a06d92 100644 --- a/src/entity/Entity.php +++ b/src/entity/Entity.php @@ -842,7 +842,7 @@ abstract class Entity{ protected function checkObstruction(float $x, float $y, float $z) : bool{ $world = $this->getWorld(); - if(count($world->getCollisionBoxes($this, $this->getBoundingBox(), false)) === 0){ + if(count($world->getBlockCollisionBoxes($this->boundingBox)) === 0){ return false; } @@ -1144,7 +1144,7 @@ abstract class Entity{ assert(abs($dx) <= 20 && abs($dy) <= 20 && abs($dz) <= 20, "Movement distance is excessive: dx=$dx, dy=$dy, dz=$dz"); - $list = $this->getWorld()->getCollisionBoxes($this, $moveBB->addCoord($dx, $dy, $dz), false); + $list = $this->getWorld()->getBlockCollisionBoxes($moveBB->addCoord($dx, $dy, $dz)); foreach($list as $bb){ $dy = $bb->calculateYOffset($moveBB, $dy); @@ -1176,7 +1176,7 @@ abstract class Entity{ $stepBB = clone $this->boundingBox; - $list = $this->getWorld()->getCollisionBoxes($this, $stepBB->addCoord($dx, $dy, $dz), false); + $list = $this->getWorld()->getBlockCollisionBoxes($stepBB->addCoord($dx, $dy, $dz)); foreach($list as $bb){ $dy = $bb->calculateYOffset($stepBB, $dy); } diff --git a/src/world/World.php b/src/world/World.php index c0d3438ee..c2236b981 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -1526,7 +1526,7 @@ class World implements ChunkManager{ * * @return AxisAlignedBB[] */ - private function getCollisionBoxesForCell(int $x, int $y, int $z) : array{ + private function getBlockCollisionBoxesForCell(int $x, int $y, int $z) : array{ $block = $this->getBlockAt($x, $y, $z); $boxes = $block->getCollisionBoxes(); @@ -1547,7 +1547,7 @@ class World implements ChunkManager{ * @return AxisAlignedBB[] * @phpstan-return list */ - public function getCollisionBoxes(Entity $entity, AxisAlignedBB $bb, bool $entities = true) : array{ + public function getBlockCollisionBoxes(AxisAlignedBB $bb) : array{ $minX = (int) floor($bb->minX); $minY = (int) floor($bb->minY); $minZ = (int) floor($bb->minZ); @@ -1563,7 +1563,7 @@ class World implements ChunkManager{ for($y = $minY; $y <= $maxY; ++$y){ $relativeBlockHash = World::chunkBlockHash($x, $y, $z); - $boxes = $this->blockCollisionBoxCache[$chunkPosHash][$relativeBlockHash] ??= $this->getCollisionBoxesForCell($x, $y, $z); + $boxes = $this->blockCollisionBoxCache[$chunkPosHash][$relativeBlockHash] ??= $this->getBlockCollisionBoxesForCell($x, $y, $z); foreach($boxes as $blockBB){ if($blockBB->intersectsWith($bb)){ @@ -1574,6 +1574,19 @@ class World implements ChunkManager{ } } + return $collides; + } + + /** + * @deprecated Use {@link World::getBlockCollisionBoxes()} instead (alongside {@link World::getCollidingEntities()} + * if entity collision boxes are also required). + * + * @return AxisAlignedBB[] + * @phpstan-return list + */ + public function getCollisionBoxes(Entity $entity, AxisAlignedBB $bb, bool $entities = true) : array{ + $collides = $this->getBlockCollisionBoxes($bb); + if($entities){ foreach($this->getCollidingEntities($bb->expandedCopy(0.25, 0.25, 0.25), $entity) as $ent){ $collides[] = clone $ent->boundingBox; From ccd2cdd324ca7413b7a0975fd016f097b30c61a9 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 13:13:46 +0100 Subject: [PATCH 15/39] World: improve performance of calculating non-cached AABBs for a cell Avoiding getSide() improved the performance by 2x ... --- src/world/World.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index c2236b981..d017fedcd 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -1531,8 +1531,8 @@ class World implements ChunkManager{ $boxes = $block->getCollisionBoxes(); $cellBB = AxisAlignedBB::one()->offset($x, $y, $z); - foreach(Facing::ALL as $facing){ - $extraBoxes = $block->getSide($facing)->getCollisionBoxes(); + foreach(Facing::OFFSET as [$dx, $dy, $dz]){ + $extraBoxes = $this->getBlockAt($x + $dx, $y + $dy, $z + $dz)->getCollisionBoxes(); foreach($extraBoxes as $extraBox){ if($extraBox->intersectsWith($cellBB)){ $boxes[] = $extraBox; From 6a3ec70c72e79603b2cc618269461204fd578f2b Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 13:25:32 +0100 Subject: [PATCH 16/39] =?UTF-8?q?=C3=82Block:=20use=20Facing::OFFSET=20in?= =?UTF-8?q?=20getSide()=20instead=20of=20the=20comically=20inefficient=20g?= =?UTF-8?q?etBlock()=20+=20throwaway=20Position->getSide()=20This=20improv?= =?UTF-8?q?ed=20the=20function's=20performance=20by=202.3x.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/block/Block.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index 189c0419d..011d81c4f 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -747,8 +747,14 @@ class Block{ * @return Block */ public function getSide(int $side, int $step = 1){ - if($this->position->isValid()){ - return $this->position->getWorld()->getBlock($this->position->getSide($side, $step)); + $position = $this->position; + if($position->isValid()){ + [$dx, $dy, $dz] = Facing::OFFSET[$side] ?? throw new \InvalidArgumentException("Unknown side $side"); + return $position->getWorld()->getBlockAt( + $position->x + ($dx * $step), + $position->y + ($dy * $step), + $position->z + ($dz * $step) + ); } throw new \LogicException("Block does not have a valid world"); From 19a17921845570c77296ada7779db16af1abfddf Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 13:27:44 +0100 Subject: [PATCH 17/39] Fixed behavioural change on invalid Facing introduced by previous commit while this shouldn't be given invalid facings anyway, Vector3::getSide() accepts them and just returns itself. --- src/block/Block.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/block/Block.php b/src/block/Block.php index 011d81c4f..ee1f9500b 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -749,7 +749,7 @@ class Block{ public function getSide(int $side, int $step = 1){ $position = $this->position; if($position->isValid()){ - [$dx, $dy, $dz] = Facing::OFFSET[$side] ?? throw new \InvalidArgumentException("Unknown side $side"); + [$dx, $dy, $dz] = Facing::OFFSET[$side] ?? [0, 0, 0]; return $position->getWorld()->getBlockAt( $position->x + ($dx * $step), $position->y + ($dy * $step), From 114f444ec3574669952ee6b5148d6695a2175e49 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 13:28:40 +0100 Subject: [PATCH 18/39] Update PHPStan baseline --- tests/phpstan/configs/actual-problems.neon | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index 070858e80..80aed8226 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -45,11 +45,26 @@ parameters: count: 1 path: ../../../src/VersionInfo.php + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/block/Block.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/block/Block.php + - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\format\\\\Chunk\\:\\:setBlockStateId\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/block/Block.php + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/block/Block.php + - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" count: 1 From f868c1d8c634f67d4ac346c9a512d4b5d3d1c033 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 16:38:34 +0100 Subject: [PATCH 19/39] Liquid: Update legacy code with Facing::OFFSET --- src/block/Liquid.php | 13 +++------ src/block/utils/MinimumCostFlowCalculator.php | 29 +++++-------------- 2 files changed, 12 insertions(+), 30 deletions(-) diff --git a/src/block/Liquid.php b/src/block/Liquid.php index 9a9e49af4..142aed261 100644 --- a/src/block/Liquid.php +++ b/src/block/Liquid.php @@ -170,16 +170,11 @@ abstract class Liquid extends Transparent{ $world = $this->position->getWorld(); foreach(Facing::HORIZONTAL as $j){ - $x = $this->position->x; - $y = $this->position->y; - $z = $this->position->z; + [$dx, $dy, $dz] = Facing::OFFSET[$j]; - match($j){ - Facing::WEST => --$x, - Facing::EAST => ++$x, - Facing::NORTH => --$z, - Facing::SOUTH => ++$z - }; + $x = $this->position->x + $dx; + $y = $this->position->y + $dy; + $z = $this->position->z + $dz; $sideBlock = $world->getBlockAt($x, $y, $z); $blockDecay = $this->getEffectiveFlowDecay($sideBlock); diff --git a/src/block/utils/MinimumCostFlowCalculator.php b/src/block/utils/MinimumCostFlowCalculator.php index 84b003bbd..a690a7487 100644 --- a/src/block/utils/MinimumCostFlowCalculator.php +++ b/src/block/utils/MinimumCostFlowCalculator.php @@ -58,17 +58,10 @@ final class MinimumCostFlowCalculator{ if($j === $originOpposite || $j === $lastOpposite){ continue; } - - $x = $blockX; - $y = $blockY; - $z = $blockZ; - - match($j){ - Facing::WEST => --$x, - Facing::EAST => ++$x, - Facing::NORTH => --$z, - Facing::SOUTH => ++$z - }; + [$dx, $dy, $dz] = Facing::OFFSET[$j]; + $x = $blockX + $dx; + $y = $blockY + $dy; + $z = $blockZ + $dz; if(!isset($this->flowCostVisited[$hash = World::blockHash($x, $y, $z)])){ if(!$this->world->isInWorld($x, $y, $z) || !$this->canFlowInto($this->world->getBlockAt($x, $y, $z))){ @@ -109,16 +102,10 @@ final class MinimumCostFlowCalculator{ $flowCost = array_fill_keys(Facing::HORIZONTAL, 1000); $maxCost = intdiv(4, $this->flowDecayPerBlock); foreach(Facing::HORIZONTAL as $j){ - $x = $originX; - $y = $originY; - $z = $originZ; - - match($j){ - Facing::WEST => --$x, - Facing::EAST => ++$x, - Facing::NORTH => --$z, - Facing::SOUTH => ++$z - }; + [$dx, $dy, $dz] = Facing::OFFSET[$j]; + $x = $originX + $dx; + $y = $originY + $dy; + $z = $originZ + $dz; if(!$this->world->isInWorld($x, $y, $z) || !$this->canFlowInto($this->world->getBlockAt($x, $y, $z))){ $this->flowCostVisited[World::blockHash($x, $y, $z)] = self::BLOCKED; From 73659318f602c553ef8f96e52f8f8b9129452463 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 16:46:36 +0100 Subject: [PATCH 20/39] World: Avoid unnecessary Vector3 usages in neighbour block update scheduling The old code was allocating 6 Vector3s which were all immediately discarded. In addition, we didn't need to take the performance hit of reading Vector3 properties when we could have just passed integers directly. The real performance difference of this is likely to be close to zero, but it's still worth doing. --- src/world/World.php | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index d017fedcd..8c8ba82c8 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -1455,9 +1455,9 @@ class World implements ChunkManager{ $this->scheduledBlockUpdateQueue->insert(new Vector3((int) $pos->x, (int) $pos->y, (int) $pos->z), $delay + $this->server->getTick()); } - private function tryAddToNeighbourUpdateQueue(Vector3 $pos) : void{ - if($this->isInWorld($pos->x, $pos->y, $pos->z)){ - $hash = World::blockHash($pos->x, $pos->y, $pos->z); + private function tryAddToNeighbourUpdateQueue(int $x, int $y, int $z) : void{ + if($this->isInWorld($x, $y, $z)){ + $hash = World::blockHash($x, $y, $z); if(!isset($this->neighbourBlockUpdateQueueIndex[$hash])){ $this->neighbourBlockUpdateQueue->enqueue($hash); $this->neighbourBlockUpdateQueueIndex[$hash] = true; @@ -1465,17 +1465,28 @@ class World implements ChunkManager{ } } + /** + * Identical to {@link World::notifyNeighbourBlockUpdate()}, but without the Vector3 requirement. We don't want or + * need Vector3 in the places where this is called. + * + * TODO: make this the primary method in PM6 + */ + private function internalNotifyNeighbourBlockUpdate(int $x, int $y, int $z) : void{ + $this->tryAddToNeighbourUpdateQueue($x, $y, $z); + foreach(Facing::OFFSET as [$dx, $dy, $dz]){ + $this->tryAddToNeighbourUpdateQueue($x + $dx, $y + $dy, $z + $dz); + } + } + /** * Notify the blocks at and around the position that the block at the position may have changed. * This will cause onNearbyBlockChange() to be called for these blocks. + * TODO: Accept plain integers in PM6 - the Vector3 requirement is an unnecessary inconvenience * * @see Block::onNearbyBlockChange() */ public function notifyNeighbourBlockUpdate(Vector3 $pos) : void{ - $this->tryAddToNeighbourUpdateQueue($pos); - foreach($pos->sides() as $side){ - $this->tryAddToNeighbourUpdateQueue($side); - } + $this->internalNotifyNeighbourBlockUpdate($pos->getFloorX(), $pos->getFloorY(), $pos->getFloorZ()); } /** @@ -1943,7 +1954,7 @@ class World implements ChunkManager{ if($update){ $this->updateAllLight($x, $y, $z); - $this->notifyNeighbourBlockUpdate($pos); + $this->internalNotifyNeighbourBlockUpdate($x, $y, $z); } $this->timings->setBlock->stopTiming(); From f1440324a7753e4d01afa456c9c9cc78f7f3d3a1 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 16:56:15 +0100 Subject: [PATCH 21/39] Update PHPStan baselines --- tests/phpstan/configs/actual-problems.neon | 27 +++++----------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index 80aed8226..f5d93af84 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -155,21 +155,6 @@ parameters: count: 1 path: ../../../src/block/DragonEgg.php - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/block/Farmland.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/block/Farmland.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/block/Farmland.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" count: 1 @@ -952,12 +937,12 @@ parameters: - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\world\\\\World\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - @@ -982,12 +967,12 @@ parameters: - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\world\\\\World\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - @@ -1017,12 +1002,12 @@ parameters: - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\world\\\\World\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 + count: 2 path: ../../../src/world/World.php - From ada37899aa063365157def8b508b20dcf50d7507 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 17:02:22 +0100 Subject: [PATCH 22/39] Liquid: improve code legibility and fix a bunch of PHPStan errors --- src/block/Liquid.php | 27 +++++++++++++--------- tests/phpstan/configs/actual-problems.neon | 6 ++--- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/block/Liquid.php b/src/block/Liquid.php index 142aed261..640af3752 100644 --- a/src/block/Liquid.php +++ b/src/block/Liquid.php @@ -255,13 +255,17 @@ abstract class Liquid extends Transparent{ $world = $this->position->getWorld(); + $x = $this->position->getFloorX(); + $y = $this->position->getFloorY(); + $z = $this->position->getFloorZ(); + if(!$this->isSource()){ $smallestFlowDecay = -100; $this->adjacentSources = 0; - $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($this->position->x, $this->position->y, $this->position->z - 1), $smallestFlowDecay); - $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($this->position->x, $this->position->y, $this->position->z + 1), $smallestFlowDecay); - $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($this->position->x - 1, $this->position->y, $this->position->z), $smallestFlowDecay); - $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($this->position->x + 1, $this->position->y, $this->position->z), $smallestFlowDecay); + $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($x, $y, $z - 1), $smallestFlowDecay); + $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($x, $y, $z + 1), $smallestFlowDecay); + $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($x - 1, $y, $z), $smallestFlowDecay); + $smallestFlowDecay = $this->getSmallestFlowDecay($world->getBlockAt($x + 1, $y, $z), $smallestFlowDecay); $newDecay = $smallestFlowDecay + $multiplier; $falling = false; @@ -270,13 +274,13 @@ abstract class Liquid extends Transparent{ $newDecay = -1; } - if($this->getEffectiveFlowDecay($world->getBlockAt($this->position->x, $this->position->y + 1, $this->position->z)) >= 0){ + if($this->getEffectiveFlowDecay($world->getBlockAt($x, $y + 1, $z)) >= 0){ $falling = true; } $minAdjacentSources = $this->getMinAdjacentSourcesToFormSource(); if($minAdjacentSources !== null && $this->adjacentSources >= $minAdjacentSources){ - $bottomBlock = $world->getBlockAt($this->position->x, $this->position->y - 1, $this->position->z); + $bottomBlock = $world->getBlockAt($x, $y - 1, $z); if($bottomBlock->isSolid() || ($bottomBlock instanceof Liquid && $bottomBlock->hasSameTypeId($this) && $bottomBlock->isSource())){ $newDecay = 0; $falling = false; @@ -285,17 +289,17 @@ abstract class Liquid extends Transparent{ if($falling !== $this->falling || (!$falling && $newDecay !== $this->decay)){ if(!$falling && $newDecay < 0){ - $world->setBlock($this->position, VanillaBlocks::AIR()); + $world->setBlockAt($x, $y, $z, VanillaBlocks::AIR()); return; } $this->falling = $falling; $this->decay = $falling ? 0 : $newDecay; - $world->setBlock($this->position, $this); //local block update will cause an update to be scheduled + $world->setBlockAt($x, $y, $z, $this); //local block update will cause an update to be scheduled } } - $bottomBlock = $world->getBlockAt($this->position->x, $this->position->y - 1, $this->position->z); + $bottomBlock = $world->getBlockAt($x, $y - 1, $z); $this->flowIntoBlock($bottomBlock, 0, true); @@ -308,8 +312,9 @@ abstract class Liquid extends Transparent{ if($adjacentDecay <= self::MAX_DECAY){ $calculator = new MinimumCostFlowCalculator($world, $this->getFlowDecayPerBlock(), $this->canFlowInto(...)); - foreach($calculator->getOptimalFlowDirections($this->position->getFloorX(), $this->position->getFloorY(), $this->position->getFloorZ()) as $facing){ - $this->flowIntoBlock($world->getBlock($this->position->getSide($facing)), $adjacentDecay, false); + foreach($calculator->getOptimalFlowDirections($x, $y, $z) as $facing){ + [$dx, $dy, $dz] = Facing::OFFSET[$facing]; + $this->flowIntoBlock($world->getBlockAt($x + $dx, $y + $dy, $z + $dz), $adjacentDecay, false); } } } diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index f5d93af84..5763c4367 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -287,7 +287,7 @@ parameters: - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 11 + count: 4 path: ../../../src/block/Liquid.php - @@ -297,7 +297,7 @@ parameters: - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 11 + count: 4 path: ../../../src/block/Liquid.php - @@ -307,7 +307,7 @@ parameters: - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 11 + count: 4 path: ../../../src/block/Liquid.php - From 9474324f757c0089b6a4f425871f63dc53b359bf Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 17:02:40 +0100 Subject: [PATCH 23/39] Liquid: simplify code --- src/block/Liquid.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/block/Liquid.php b/src/block/Liquid.php index 640af3752..3a84728ae 100644 --- a/src/block/Liquid.php +++ b/src/block/Liquid.php @@ -188,17 +188,17 @@ abstract class Liquid extends Transparent{ if($blockDecay >= 0){ $realDecay = $blockDecay - ($decay - 8); - $vX += ($x - $this->position->x) * $realDecay; - $vY += ($y - $this->position->y) * $realDecay; - $vZ += ($z - $this->position->z) * $realDecay; + $vX += $dx * $realDecay; + $vY += $dy * $realDecay; + $vZ += $dz * $realDecay; } continue; }else{ $realDecay = $blockDecay - $decay; - $vX += ($x - $this->position->x) * $realDecay; - $vY += ($y - $this->position->y) * $realDecay; - $vZ += ($z - $this->position->z) * $realDecay; + $vX += $dx * $realDecay; + $vY += $dy * $realDecay; + $vZ += $dz * $realDecay; } } From dbb5a32a969b9dd989eff331b45c2c5bca5c8f32 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 19 Oct 2023 17:09:13 +0100 Subject: [PATCH 24/39] Liquid: eliminate unnecessary Position allocations and getSide() calls --- src/block/Liquid.php | 20 ++++++++++++-------- tests/phpstan/configs/actual-problems.neon | 15 --------------- 2 files changed, 12 insertions(+), 23 deletions(-) diff --git a/src/block/Liquid.php b/src/block/Liquid.php index 3a84728ae..6404cf908 100644 --- a/src/block/Liquid.php +++ b/src/block/Liquid.php @@ -165,6 +165,10 @@ abstract class Liquid extends Transparent{ $vX = $vY = $vZ = 0; + $x = $this->position->getFloorX(); + $y = $this->position->getFloorY(); + $z = $this->position->getFloorZ(); + $decay = $this->getEffectiveFlowDecay($this); $world = $this->position->getWorld(); @@ -172,11 +176,11 @@ abstract class Liquid extends Transparent{ foreach(Facing::HORIZONTAL as $j){ [$dx, $dy, $dz] = Facing::OFFSET[$j]; - $x = $this->position->x + $dx; - $y = $this->position->y + $dy; - $z = $this->position->z + $dz; + $sideX = $x + $dx; + $sideY = $y + $dy; + $sideZ = $z + $dz; - $sideBlock = $world->getBlockAt($x, $y, $z); + $sideBlock = $world->getBlockAt($sideX, $sideY, $sideZ); $blockDecay = $this->getEffectiveFlowDecay($sideBlock); if($blockDecay < 0){ @@ -184,7 +188,7 @@ abstract class Liquid extends Transparent{ continue; } - $blockDecay = $this->getEffectiveFlowDecay($world->getBlockAt($x, $y - 1, $z)); + $blockDecay = $this->getEffectiveFlowDecay($world->getBlockAt($sideX, $sideY - 1, $sideZ)); if($blockDecay >= 0){ $realDecay = $blockDecay - ($decay - 8); @@ -206,10 +210,10 @@ abstract class Liquid extends Transparent{ if($this->falling){ foreach(Facing::HORIZONTAL as $facing){ - $pos = $this->position->getSide($facing); + [$dx, $dy, $dz] = Facing::OFFSET[$facing]; if( - !$this->canFlowInto($world->getBlockAt($pos->x, $pos->y, $pos->z)) || - !$this->canFlowInto($world->getBlockAt($pos->x, $pos->y + 1, $pos->z)) + !$this->canFlowInto($world->getBlockAt($x + $dx, $y + $dy, $z + $dz)) || + !$this->canFlowInto($world->getBlockAt($x + $dx, $y + $dy + 1, $z + $dz)) ){ $vector = $vector->normalize()->add(0, -6, 0); break; diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index 5763c4367..a9d3a96a2 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -285,31 +285,16 @@ parameters: count: 1 path: ../../../src/block/Leaves.php - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/block/Liquid.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/block/Liquid.php - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/block/Liquid.php - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/block/Liquid.php - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/block/Liquid.php - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" count: 1 From 7dd3a70d2ea218d5e4f480697fcaa1426446f44e Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 10:16:49 +0100 Subject: [PATCH 25/39] Revert "World: discard tiles on load if they aren't the correct type or no tile is expected" This reverts commit 8f804f6f342e650156767372bac2d42b55297361. This change is too disruptive, since popular plugins like ExtendedBlocks and ExtendedBlocksConverter relied on custom tiles. Deleting them at this stage would prevent these plugins from working, making it impossible to upgrade old data. An alternative solution to this problem will need to be developed. --- src/world/World.php | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index 1103ae8f9..903cc60e2 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -2873,15 +2873,7 @@ class World implements ChunkManager{ }elseif($this->getTile($tilePosition) !== null){ $logger->error("Cannot add tile at x=$tilePosition->x,y=$tilePosition->y,z=$tilePosition->z: Another tile is already at that position"); }else{ - $block = $this->getBlockAt($tilePosition->getFloorX(), $tilePosition->getFloorY(), $tilePosition->getFloorZ()); - $expectedClass = $block->getIdInfo()->getTileClass(); - if($expectedClass === null){ - $logger->error("Cannot add tile at x=$tilePosition->x,y=$tilePosition->y,z=$tilePosition->z: Block at that position (" . $block->getName() . ") does not expect a tile"); - }elseif(!($tile instanceof $expectedClass)){ - $logger->error("Cannot add tile at x=$tilePosition->x,y=$tilePosition->y,z=$tilePosition->z: Tile is of wrong type (expected $expectedClass but have " . get_class($tile) . ")"); - }else{ - $this->addTile($tile); - } + $this->addTile($tile); } } From 8fa5c7cdab4ae09b2259ea062938593d871574a7 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 10:28:46 +0100 Subject: [PATCH 26/39] World: do not apply fake state properties from tile if the block doesn't expect this tile type This was causing a variety of crashes due to incorrect tiles, presumably from PM3 worlds. --- src/world/World.php | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index 903cc60e2..8265aa384 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -1102,19 +1102,22 @@ class World implements ChunkManager{ $blockPosition = BlockPosition::fromVector3($b); $tile = $this->getTileAt($b->x, $b->y, $b->z); - if($tile instanceof Spawnable && count($fakeStateProperties = $tile->getRenderUpdateBugWorkaroundStateProperties($fullBlock)) > 0){ - $originalStateData = $blockTranslator->internalIdToNetworkStateData($fullBlock->getStateId()); - $fakeStateData = new BlockStateData( - $originalStateData->getName(), - array_merge($originalStateData->getStates(), $fakeStateProperties), - $originalStateData->getVersion() - ); - $packets[] = UpdateBlockPacket::create( - $blockPosition, - $blockTranslator->getBlockStateDictionary()->lookupStateIdFromData($fakeStateData) ?? throw new AssumptionFailedError("Unmapped fake blockstate data: " . $fakeStateData->toNbt()), - UpdateBlockPacket::FLAG_NETWORK, - UpdateBlockPacket::DATA_LAYER_NORMAL - ); + if($tile instanceof Spawnable){ + $expectedClass = $fullBlock->getIdInfo()->getTileClass(); + if($expectedClass !== null && $tile instanceof $expectedClass && count($fakeStateProperties = $tile->getRenderUpdateBugWorkaroundStateProperties($fullBlock)) > 0){ + $originalStateData = $blockTranslator->internalIdToNetworkStateData($fullBlock->getStateId()); + $fakeStateData = new BlockStateData( + $originalStateData->getName(), + array_merge($originalStateData->getStates(), $fakeStateProperties), + $originalStateData->getVersion() + ); + $packets[] = UpdateBlockPacket::create( + $blockPosition, + $blockTranslator->getBlockStateDictionary()->lookupStateIdFromData($fakeStateData) ?? throw new AssumptionFailedError("Unmapped fake blockstate data: " . $fakeStateData->toNbt()), + UpdateBlockPacket::FLAG_NETWORK, + UpdateBlockPacket::DATA_LAYER_NORMAL + ); + } } $packets[] = UpdateBlockPacket::create( $blockPosition, From decc18830217d89127c4d0c1ad1bf53550b3709e Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 10:30:50 +0100 Subject: [PATCH 27/39] Release 5.6.1 --- changelogs/5.6.md | 14 ++++++++++++++ src/VersionInfo.php | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/changelogs/5.6.md b/changelogs/5.6.md index d4914f527..257289a4a 100644 --- a/changelogs/5.6.md +++ b/changelogs/5.6.md @@ -18,3 +18,17 @@ Consider using the `mcpe-protocol` directive in `plugin.yml` as a constraint if ## Fixes - Fixed support conditions for hanging roots, cave vines and dead bushes. - Fixed connection conditions for fences, glass panes, iron bars, and walls. + +# 5.6.1 +Released 20th October 2023. + +## Performance +- Improved performance of cactus growth by disabling neighbour updates when only the age property was updated. While this isn't a perfect solution, it provides significant performance gains for servers with large cactus farms. + +## Fixes +- Fixed `tools/generate-bedrock-data-from-packets.php` incorrectly interpreting network meta as blockstates in some cases (broken crafting recipes). +- Fixed crafting recipes involving beds, skulls and some other items not working correctly (incorrectly interpreted data). +- Fixed crashes when flower pot or cauldron blockentities exist in places where they shouldn't (leftovers from upgraded PM3 worlds). +- Fixed `Entity->broadcastSound()` not firing `WorldSoundEvent` (bypassing internal sound system). +- Fixed wooden signs, buttons and doors not being able to be used as furnace fuel. +- Fixed bone meal and tools only working when used on the top side of dirt and grass. Bone meal now works from any side, and tools work on any side except the bottom. diff --git a/src/VersionInfo.php b/src/VersionInfo.php index 38854ac9c..37703b32d 100644 --- a/src/VersionInfo.php +++ b/src/VersionInfo.php @@ -32,7 +32,7 @@ use function str_repeat; final class VersionInfo{ public const NAME = "PocketMine-MP"; public const BASE_VERSION = "5.6.1"; - public const IS_DEVELOPMENT_BUILD = true; + public const IS_DEVELOPMENT_BUILD = false; public const BUILD_CHANNEL = "stable"; /** From 1c5d3b43be265e0e1e78465bf93a49a5e1364a08 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 10:30:50 +0100 Subject: [PATCH 28/39] 5.6.2 is next --- src/VersionInfo.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/VersionInfo.php b/src/VersionInfo.php index 37703b32d..9088094a2 100644 --- a/src/VersionInfo.php +++ b/src/VersionInfo.php @@ -31,8 +31,8 @@ use function str_repeat; final class VersionInfo{ public const NAME = "PocketMine-MP"; - public const BASE_VERSION = "5.6.1"; - public const IS_DEVELOPMENT_BUILD = false; + public const BASE_VERSION = "5.6.2"; + public const IS_DEVELOPMENT_BUILD = true; public const BUILD_CHANNEL = "stable"; /** From eb935ca80f7098a0e711bc1dbb78b44ab59e3420 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 11:20:30 +0100 Subject: [PATCH 29/39] =?UTF-8?q?=C3=82Leaves:=20use=20a=20constant=20for?= =?UTF-8?q?=20max=20distance=20from=20wood?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/block/Leaves.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/block/Leaves.php b/src/block/Leaves.php index 0aa3557a4..7fe9eae74 100644 --- a/src/block/Leaves.php +++ b/src/block/Leaves.php @@ -38,6 +38,8 @@ use pocketmine\world\World; use function mt_rand; class Leaves extends Transparent{ + private const MAX_LOG_DISTANCE = 4; + protected LeavesType $leavesType; //immutable for now protected bool $noDecay = false; protected bool $checkDecay = false; @@ -91,7 +93,7 @@ class Leaves extends Transparent{ return true; } - if($block instanceof Leaves && $distance <= 4){ + if($block instanceof Leaves && $distance <= self::MAX_LOG_DISTANCE){ foreach(Facing::ALL as $side){ if($this->findLog($pos->getSide($side), $visited, $distance + 1)){ return true; From 450ad4220211405238adb0e6e05e649bc041dc31 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 11:37:58 +0100 Subject: [PATCH 30/39] Added some new recommendations to CONTRIBUTING.md --- CONTRIBUTING.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6b47a7fad..a17d29166 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -117,6 +117,19 @@ It's your responsibility to ensure your code matches the formatting and styling If you use PhpStorm, a `Project` code style is provided, which you can use to automatically format new code. You can also use [`php-cs-fixer`](https://github.com/FriendsOfPHP/PHP-CS-Fixer) to format your code. +#### Use `final` and `private` wherever possible +- Changing from `private` to `protected` or `final` to non-`final` doesn't break backwards compatibility, but the opposite does. +- `private` and `final` also enable certain performance optimizations which are otherwise not possible. +- `private` members can be freely changed, added and removed in the future, so it's ideal for internal functions. Abusing `protected` makes internal improvements inconvenient. +- "Let's leave it protected/public in case someone needs it for ... idk what" is **not a valid reason to expose things**. If there isn't a clear reason for something to be accessible from the outside, don't expose it. +- **This is a lesson learned through years of experience.** You may not like it, but it's for the best. + +#### Immutable things are almost always preferred +- Do not add unnecessary setters or public writable properties to classes. As above, "Let's leave it in case someone needs it" is **not a valid reason to expose things**. +- Mutable classes and properties are unpredictable, since code has no way to know if the object it's working with might be randomly modified by another part of the code. This makes it harder to maintain code and debug issues. +- Most classes exist only to hold some data. These are called "data transfer objects" (DTOs). These types of classes should pretty much always be immutable. +- Make use of `final`, `private` and `readonly` modifiers. + ### Recommendations - **Do not edit code directly on github.com.** We recommend learning how to use [`git`](https://git-scm.com). `git` allows you to "clone" a repository onto your computer, so that you can make changes using an IDE. From e4888d71028feb604b330b7a14c6b178bb97dec9 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 12:12:14 +0100 Subject: [PATCH 31/39] =?UTF-8?q?=C3=82CONTRIBUTING.md:=20restructure,=20r?= =?UTF-8?q?eword=20and=20reorganize=20[ci=20skip]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTRIBUTING.md | 92 ++++++++++++++++++++++++------------------------- 1 file changed, 46 insertions(+), 46 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a17d29166..3490542c5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -88,58 +88,58 @@ Depending on the changes, maintainers might ask you to make changes to the PR to ### Requirements The following are required as a minimum for pull requests. PRs that don't meet these requirements will be declined unless updated to meet them. -#### Licensing -PocketMine-MP is licensed under [LGPLv3 license](LICENSE). -By proposing a pull request, you agree to your code being distributed within PocketMine-MP under the same license. -If you take code from other projects, that code MUST be licensed under an LGPL-compatible license. - -#### PRs should be about exactly ONE thing -If you want to make multiple changes, those changes should each be contributed as separate pull requests. **DO NOT** mix unrelated changes. - -#### PRs must not include unnecessary/unrelated changes -Do not include changes which aren't strictly necessary. This makes it harder to review a PR, because the code diff becomes larger and harder to review. -This means: -- don't reformat or rearrange existing code -- don't change things that aren't related to the PR's objective -- don't rewrite existing code just to make it "look nicer" -- don't change PhpDocs to native types in code you didn't write - -#### Tests must be provided -Where possible, PHPUnit tests should be written for new or changed code. -If that's not possible (e.g. for in-game functionality), the code must be tested manually and details of the tests done must be provided. -**Simply saying "Tested" is not acceptable** and will lead to your PR being declined. - -#### Comments and documentation must be written in American English -English is the shared languages of all current maintainers. - -#### Code must be in the PocketMine-MP style -It's your responsibility to ensure your code matches the formatting and styling of the rest of the code. -If you use PhpStorm, a `Project` code style is provided, which you can use to automatically format new code. -You can also use [`php-cs-fixer`](https://github.com/FriendsOfPHP/PHP-CS-Fixer) to format your code. - -#### Use `final` and `private` wherever possible -- Changing from `private` to `protected` or `final` to non-`final` doesn't break backwards compatibility, but the opposite does. -- `private` and `final` also enable certain performance optimizations which are otherwise not possible. -- `private` members can be freely changed, added and removed in the future, so it's ideal for internal functions. Abusing `protected` makes internal improvements inconvenient. -- "Let's leave it protected/public in case someone needs it for ... idk what" is **not a valid reason to expose things**. If there isn't a clear reason for something to be accessible from the outside, don't expose it. -- **This is a lesson learned through years of experience.** You may not like it, but it's for the best. - -#### Immutable things are almost always preferred -- Do not add unnecessary setters or public writable properties to classes. As above, "Let's leave it in case someone needs it" is **not a valid reason to expose things**. -- Mutable classes and properties are unpredictable, since code has no way to know if the object it's working with might be randomly modified by another part of the code. This makes it harder to maintain code and debug issues. -- Most classes exist only to hold some data. These are called "data transfer objects" (DTOs). These types of classes should pretty much always be immutable. -- Make use of `final`, `private` and `readonly` modifiers. +- **All code must be licensed under the [LGPLv3 license](LICENSE)** as per PocketMine-MP's own license, or a compatible license. + - By proposing a pull request, you agree to your code being distributed within PocketMine-MP under the same license. + - If you take code from other projects, that code MUST be licensed under an LGPL-compatible license. +- **PRs should be about ONE thing** + - If you want to make multiple changes, those changes should each be contributed as separate pull requests. **DO NOT** mix unrelated changes. + - **Do not include unnecessary changes.** This makes the code diff larger and more noisy, making it harder to review. + - Don't change things that aren't related to the PR's objective + - Don't reformat or rearrange existing code without a good reason related to the PR's objective + - Don't rewrite existing code just to make it "look nicer" + - Don't change PhpDocs to native types in code you didn't write, unless that's the objective of the PR +- **Test code changes, and tell us what tests have been done.** + - Where possible, PHPUnit tests should be written for new or changed code. If that's not possible (e.g. for in-game functionality), the code must be tested manually and details of the tests done must be provided. + - **Simply saying "Tested" is not acceptable** and could lead to your PR being declined. +- **Code, comments and documentation must be written in American English.** English is the shared languages of all current maintainers. +- **Code must be in the PocketMine-MP style.** + - It's your responsibility to ensure your code matches the formatting and styling of the rest of the code. + - If you use PhpStorm, a `Project` code style is provided, which you can use to automatically format new code. + - You can also use [`php-cs-fixer`](https://github.com/FriendsOfPHP/PHP-CS-Fixer) to format your code. +- **Use `final` and `private` wherever possible**. + - Changing from `private` to `protected` or `final` to non-`final` doesn't break backwards compatibility, but the opposite does. + - `private` and `final` also enable certain performance optimizations which are otherwise not possible. + - `private` members can be freely changed, added and removed in the future, so it's ideal for internal functions. Abusing `protected` makes internal improvements inconvenient. + - "Let's leave it protected/public in case someone needs it for ... idk what" is **not a valid reason to expose things**. If there isn't a clear reason for something to be accessible from the outside, don't expose it. + - **This is a lesson learned through years of experience.** You may not like it, but it's for the best. +- **Immutable things are almost always preferred.** + - Do not add unnecessary setters or public writable properties to classes. As above, "Let's leave it in case someone needs it" is **not a valid reason to expose things**. + - Mutable classes and properties are unpredictable, since code has no way to know if the object it's working with might be randomly modified by another part of the code. This makes it harder to maintain code and debug issues. + - Most classes exist only to hold some data. These are called "data transfer objects" (DTOs). These types of classes should pretty much always be immutable. + - Make use of `final`, `private` and `readonly` modifiers. ### Recommendations - +- **Be patient.** Reviewing pull requests takes a lot of time and energy, and maintainers are often unavailable or busy. Your PR might not receive attention for a while. + - Remember, PRs with small diffs are much easier to review. Small PRs are generally reviewed and merged much faster than large ones. +- **Start small.** Try fixing minor bugs or doing something isolated (e.g. adding a new block or item) before attempting larger changes. + - This helps you get familiar with the codebase, the contribution process, and the expectations of maintainers. + - Check out the [issues page]() for something that you could tackle without too much effort. +- **Do not copy-paste other people's code**. Many PRs involve discussion about the changes, and changes are often requested by reviewers. If you don't understand the code you're copy-pasting, your PR is likely to fail. - **Do not edit code directly on github.com.** We recommend learning how to use [`git`](https://git-scm.com). `git` allows you to "clone" a repository onto your computer, so that you can make changes using an IDE. - **Use an IDE, not a text editor.** We recommend PhpStorm or VSCode. +- **Do not make large pull requests without an RFC.** + - Large changes should be discussed beforehand using the [RFC / Change Proposal](#rfcs--change-proposals) process. + - Large changes are much harder to review, and are more likely to be declined if maintainers don't have a good idea what you're trying to do in advance. - **Create a new branch on your fork for each pull request.** This allows you to use the same fork to make multiple pull requests at the same time. +- **Make your PR diff as small as possible.** Smaller PRs are **much more likely** to be accepted, as they are easier to review. + - Avoid moving code around in files if possible. + - Don't make random CS changes. This makes the diff noisier and harder to review. - **Use descriptive commit titles.** You can see an example [here](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html). -- **Do not include multiple unrelated changes in one commit.** An atomic style for commits is preferred - this means that changes included in a commit should be part of a single distinct change set. See [this link](https://www.freshconsulting.com/atomic-commits/) for more information on atomic commits. See the [documentation on `git add`](https://git-scm.com/docs/git-add) for information on how to isolate local changes for committing. -- **Your pull request will be checked and discussed in due time.** Since the team is scattered all around the world, your PR may not receive any attention for some time. -- **Do not make large pull requests without an RFC.** Large changes should be discussed beforehand using the [RFC / Change Proposal](#rfcs--change-proposals) process. Large changes are much harder to review and are more likely to be declined if maintainers don't have a good idea what you're trying to do in advance. -- **Do not copy-paste code**. There are potential license issues implicit with copy-pasting, and copy-paste usually indicates a lack of understanding of the actual code. Copy-pasted code is obvious a mile off and **any PR like this is likely to be closed**. If you want to use somebody else's code from a Git repository, **use [GIT's cherry-pick feature](https://git-scm.com/docs/git-cherry-pick)** to cherry-pick the commit. +- **Split unrelated changes into multiple commits.** + - An atomic style for commits is preferred - this means that changes included in a commit should be part of a single distinct change set. + - If you need to use "and" or "multiple changes" in your commit message, the commit probably needs to be split up. There are exceptions, but this is a good rule of thumb. + - See [this link](https://www.freshconsulting.com/atomic-commits/) for more information on atomic commits. + - See the [documentation on `git add -i` or `git add -p`](https://git-scm.com/docs/git-add) for information on how to split up local changes for committing. **Thanks for contributing to PocketMine-MP!** From 1f461977d442cccb2ce02613b1e1b9f9a2539342 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 17:28:19 +0100 Subject: [PATCH 32/39] Block: Avoid useless Vector3 allocations in getHorizontalSides and getAllSides --- src/block/Block.php | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index ee1f9500b..0bbb8d370 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -768,8 +768,14 @@ class Block{ */ public function getHorizontalSides() : \Generator{ $world = $this->position->getWorld(); - foreach($this->position->sidesAroundAxis(Axis::Y) as $vector3){ - yield $world->getBlock($vector3); + foreach(Facing::HORIZONTAL as $facing){ + [$dx, $dy, $dz] = Facing::OFFSET[$facing]; + //TODO: yield Facing as the key? + yield $world->getBlockAt( + $this->position->x + $dx, + $this->position->y + $dy, + $this->position->z + $dz + ); } } @@ -781,8 +787,13 @@ class Block{ */ public function getAllSides() : \Generator{ $world = $this->position->getWorld(); - foreach($this->position->sides() as $vector3){ - yield $world->getBlock($vector3); + foreach(Facing::OFFSET as [$dx, $dy, $dz]){ + //TODO: yield Facing as the key? + yield $world->getBlockAt( + $this->position->x + $dx, + $this->position->y + $dy, + $this->position->z + $dz + ); } } From 8e17aed4f44a1a7116530508823ac6b41e00c31e Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 20 Oct 2023 17:43:04 +0100 Subject: [PATCH 33/39] Fix build --- src/block/Block.php | 1 - tests/phpstan/configs/actual-problems.neon | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index 0bbb8d370..5d87db879 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -42,7 +42,6 @@ use pocketmine\item\enchantment\ItemEnchantmentTags; use pocketmine\item\enchantment\VanillaEnchantments; use pocketmine\item\Item; use pocketmine\item\ItemBlock; -use pocketmine\math\Axis; use pocketmine\math\AxisAlignedBB; use pocketmine\math\Facing; use pocketmine\math\RayTraceResult; diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index a9d3a96a2..cf7e9b02f 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -47,12 +47,12 @@ parameters: - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 + count: 3 path: ../../../src/block/Block.php - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 + count: 3 path: ../../../src/block/Block.php - @@ -62,7 +62,7 @@ parameters: - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\world\\\\World\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 + count: 3 path: ../../../src/block/Block.php - From 73b1fba53c49c83ee987f6ce84743e87fb0eb065 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 11:46:08 +0100 Subject: [PATCH 34/39] Fixed Promise calling rejection handler given after being successfully resolved closes #6110 this is a weird use case, but it should work nonetheless. --- src/promise/Promise.php | 11 +++++-- src/promise/PromiseResolver.php | 8 ++--- src/promise/PromiseSharedData.php | 6 ++-- tests/phpunit/promise/PromiseTest.php | 42 +++++++++++++++++++++++++++ 4 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 tests/phpunit/promise/PromiseTest.php diff --git a/src/promise/Promise.php b/src/promise/Promise.php index e7188197c..bafec0979 100644 --- a/src/promise/Promise.php +++ b/src/promise/Promise.php @@ -41,8 +41,11 @@ final class Promise{ * @phpstan-param \Closure() : void $onFailure */ public function onCompletion(\Closure $onSuccess, \Closure $onFailure) : void{ - if($this->shared->resolved){ - $this->shared->result === null ? $onFailure() : $onSuccess($this->shared->result); + $state = $this->shared->state; + if($state === true){ + $onSuccess($this->shared->result); + }elseif($state === false){ + $onFailure(); }else{ $this->shared->onSuccess[spl_object_id($onSuccess)] = $onSuccess; $this->shared->onFailure[spl_object_id($onFailure)] = $onFailure; @@ -50,6 +53,8 @@ final class Promise{ } public function isResolved() : bool{ - return $this->shared->resolved; + //TODO: perhaps this should return true when rejected? currently there's no way to tell if a promise was + //rejected or just hasn't been resolved yet + return $this->shared->state === true; } } diff --git a/src/promise/PromiseResolver.php b/src/promise/PromiseResolver.php index 97b181d0b..2019f261d 100644 --- a/src/promise/PromiseResolver.php +++ b/src/promise/PromiseResolver.php @@ -41,10 +41,10 @@ final class PromiseResolver{ * @phpstan-param TValue $value */ public function resolve(mixed $value) : void{ - if($this->shared->resolved){ + if($this->shared->state !== null){ throw new \LogicException("Promise has already been resolved/rejected"); } - $this->shared->resolved = true; + $this->shared->state = true; $this->shared->result = $value; foreach($this->shared->onSuccess as $c){ $c($value); @@ -54,10 +54,10 @@ final class PromiseResolver{ } public function reject() : void{ - if($this->shared->resolved){ + if($this->shared->state !== null){ throw new \LogicException("Promise has already been resolved/rejected"); } - $this->shared->resolved = true; + $this->shared->state = false; foreach($this->shared->onFailure as $c){ $c(); } diff --git a/src/promise/PromiseSharedData.php b/src/promise/PromiseSharedData.php index be667eadb..8bc2691f4 100644 --- a/src/promise/PromiseSharedData.php +++ b/src/promise/PromiseSharedData.php @@ -41,8 +41,8 @@ final class PromiseSharedData{ */ public array $onFailure = []; - public bool $resolved = false; + public ?bool $state = null; - /** @phpstan-var TValue|null */ - public mixed $result = null; + /** @phpstan-var TValue */ + public mixed $result; } diff --git a/tests/phpunit/promise/PromiseTest.php b/tests/phpunit/promise/PromiseTest.php new file mode 100644 index 000000000..7198f4f61 --- /dev/null +++ b/tests/phpunit/promise/PromiseTest.php @@ -0,0 +1,42 @@ +resolve(null); + $resolver->getPromise()->onCompletion( + function(mixed $value) : void{ + self::assertNull($value); + }, + function() : void{ + self::fail("Promise should not be rejected"); + } + ); + } +} From 41c5f6356547427c53e73b63ffad101eddbe5f2b Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 12:17:41 +0100 Subject: [PATCH 35/39] World: remove dead code --- src/world/World.php | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index 8c8ba82c8..391c1fe24 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -973,11 +973,6 @@ class World implements ChunkManager{ } $block = $this->getBlockAt($x, $y, $z); - $replacement = $block->readStateFromWorld(); //for blocks like fences, force recalculation of connected AABBs - if($replacement !== $block){ - $replacement->position($this, $x, $y, $z); - $block = $replacement; - } if(BlockUpdateEvent::hasHandlers()){ $ev = new BlockUpdateEvent($block); From 9fcc9f433829c1f35716857e0861b50dae915618 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 12:24:02 +0100 Subject: [PATCH 36/39] StringToItemParser: added missing blocks closes #6108 --- src/item/StringToItemParser.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/item/StringToItemParser.php b/src/item/StringToItemParser.php index d482e4bef..50e34744d 100644 --- a/src/item/StringToItemParser.php +++ b/src/item/StringToItemParser.php @@ -205,6 +205,7 @@ final class StringToItemParser extends StringToTParser{ $result->registerBlock("carpet", fn() => Blocks::CARPET()); $result->registerBlock("carrot_block", fn() => Blocks::CARROTS()); $result->registerBlock("carrots", fn() => Blocks::CARROTS()); + $result->registerBlock("cartography_table", fn() => Blocks::CARTOGRAPHY_TABLE()); $result->registerBlock("carved_pumpkin", fn() => Blocks::CARVED_PUMPKIN()); $result->registerBlock("cauldron", fn() => Blocks::CAULDRON()); $result->registerBlock("cave_vines", fn() => Blocks::CAVE_VINES()); @@ -975,6 +976,7 @@ final class StringToItemParser extends StringToTParser{ $result->registerBlock("slime", fn() => Blocks::SLIME()); $result->registerBlock("slime_block", fn() => Blocks::SLIME()); $result->registerBlock("small_dripleaf", fn() => Blocks::SMALL_DRIPLEAF()); + $result->registerBlock("smithing_table", fn() => Blocks::SMITHING_TABLE()); $result->registerBlock("smoker", fn() => Blocks::SMOKER()); $result->registerBlock("smooth_basalt", fn() => Blocks::SMOOTH_BASALT()); $result->registerBlock("smooth_quartz", fn() => Blocks::SMOOTH_QUARTZ()); @@ -1047,6 +1049,8 @@ final class StringToItemParser extends StringToTParser{ $result->registerBlock("stripped_acacia_wood", fn() => Blocks::ACACIA_WOOD()->setStripped(true)); $result->registerBlock("stripped_birch_log", fn() => Blocks::BIRCH_LOG()->setStripped(true)); $result->registerBlock("stripped_birch_wood", fn() => Blocks::BIRCH_WOOD()->setStripped(true)); + $result->registerBlock("stripped_cherry_log", fn() => Blocks::CHERRY_LOG()->setStripped(true)); + $result->registerBlock("stripped_cherry_wood", fn() => Blocks::CHERRY_WOOD()->setStripped(true)); $result->registerBlock("stripped_crimson_hyphae", fn() => Blocks::CRIMSON_HYPHAE()->setStripped(true)); $result->registerBlock("stripped_crimson_stem", fn() => Blocks::CRIMSON_STEM()->setStripped(true)); $result->registerBlock("stripped_dark_oak_log", fn() => Blocks::DARK_OAK_LOG()->setStripped(true)); From af432c1a7f07ac1a6d4ad6ab35cd823aabd821cb Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 12:33:36 +0100 Subject: [PATCH 37/39] Give neighbour block updates its own timer this way we aren't conflating them with scheduled updates, which are usually caused by e.g. water --- src/world/World.php | 6 +++--- src/world/WorldTimings.php | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/world/World.php b/src/world/World.php index 391c1fe24..61aedf8d5 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -948,9 +948,7 @@ class World implements ChunkManager{ $this->providerGarbageCollectionTicker = 0; } - //Do block updates $this->timings->scheduledBlockUpdates->startTiming(); - //Delayed updates while($this->scheduledBlockUpdateQueue->count() > 0 && $this->scheduledBlockUpdateQueue->current()["priority"] <= $currentTick){ /** @var Vector3 $vec */ @@ -962,7 +960,9 @@ class World implements ChunkManager{ $block = $this->getBlock($vec); $block->onScheduledUpdate(); } + $this->timings->scheduledBlockUpdates->stopTiming(); + $this->timings->neighbourBlockUpdates->startTiming(); //Normal updates while($this->neighbourBlockUpdateQueue->count() > 0){ $index = $this->neighbourBlockUpdateQueue->dequeue(); @@ -987,7 +987,7 @@ class World implements ChunkManager{ $block->onNearbyBlockChange(); } - $this->timings->scheduledBlockUpdates->stopTiming(); + $this->timings->neighbourBlockUpdates->stopTiming(); $this->timings->entityTick->startTiming(); //Update entities that need update diff --git a/src/world/WorldTimings.php b/src/world/WorldTimings.php index 5c1a56011..2d3a2090c 100644 --- a/src/world/WorldTimings.php +++ b/src/world/WorldTimings.php @@ -34,6 +34,7 @@ class WorldTimings{ public TimingsHandler $doChunkUnload; public TimingsHandler $scheduledBlockUpdates; + public TimingsHandler $neighbourBlockUpdates; public TimingsHandler $randomChunkUpdates; public TimingsHandler $randomChunkUpdatesChunkSelection; public TimingsHandler $doChunkGC; @@ -77,6 +78,7 @@ class WorldTimings{ $this->doChunkUnload = self::newTimer($name, "Unload Chunks"); $this->scheduledBlockUpdates = self::newTimer($name, "Scheduled Block Updates"); + $this->neighbourBlockUpdates = self::newTimer($name, "Neighbour Block Updates"); $this->randomChunkUpdates = self::newTimer($name, "Random Chunk Updates"); $this->randomChunkUpdatesChunkSelection = self::newTimer($name, "Random Chunk Updates - Chunk Selection"); $this->doChunkGC = self::newTimer($name, "Garbage Collection"); From f655eda3b3239d6fbd8186a839308c15b4734fcb Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 16:05:13 +0100 Subject: [PATCH 38/39] Player: bypass slow function call for some reason the isSpectator() call here can take upwards of 2 microseconds, for no obvious reason. Subsequent calls are much faster, so I think there's some weird cache thing going on here. --- src/player/Player.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/player/Player.php b/src/player/Player.php index 0afa0bffe..0ee9d7dc2 100644 --- a/src/player/Player.php +++ b/src/player/Player.php @@ -1219,7 +1219,7 @@ class Player extends Human implements CommandSender, ChunkListener, IPlayer{ } protected function checkGroundState(float $wantedX, float $wantedY, float $wantedZ, float $dx, float $dy, float $dz) : void{ - if($this->isSpectator()){ + if($this->gamemode === GameMode::SPECTATOR){ $this->onGround = false; }else{ $bb = clone $this->boundingBox; From d637370b8346df86a2f5fc349f1bcaeb91a1d7d3 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 23 Oct 2023 17:38:04 +0100 Subject: [PATCH 39/39] Wipe internal block AABB cache only for specific blocks that need it the vast majority of blocks don't need this cache erasing, so it's costing performance for no good reason. --- src/block/Block.php | 9 +++------ src/block/Door.php | 2 ++ src/block/Fence.php | 2 ++ src/block/Stair.php | 2 ++ src/block/Thin.php | 2 ++ 5 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/block/Block.php b/src/block/Block.php index 5d87db879..a1d553b9d 100644 --- a/src/block/Block.php +++ b/src/block/Block.php @@ -346,17 +346,13 @@ class Block{ /** * Called when this block is created, set, or has a neighbouring block update, to re-detect dynamic properties which - * are not saved on the world. - * - * Clears any cached precomputed objects, such as bounding boxes. Remove any outdated precomputed things such as - * AABBs and force recalculation. + * are not saved in the blockstate ID. + * If any such properties are updated, don't forget to clear things like AABB caches if necessary. * * A replacement block may be returned. This is useful if the block type changed due to reading of world data (e.g. * data from a block entity). */ public function readStateFromWorld() : Block{ - $this->collisionBoxes = null; - return $this; } @@ -596,6 +592,7 @@ class Block{ */ final public function position(World $world, int $x, int $y, int $z) : void{ $this->position = new Position($x, $y, $z, $world); + $this->collisionBoxes = null; } /** diff --git a/src/block/Door.php b/src/block/Door.php index c97c5bb1e..82ddaab51 100644 --- a/src/block/Door.php +++ b/src/block/Door.php @@ -51,6 +51,8 @@ class Door extends Transparent{ public function readStateFromWorld() : Block{ parent::readStateFromWorld(); + $this->collisionBoxes = null; + //copy door properties from other half $other = $this->getSide($this->top ? Facing::DOWN : Facing::UP); if($other instanceof Door && $other->hasSameTypeId($this)){ diff --git a/src/block/Fence.php b/src/block/Fence.php index 4fa571b67..30caaa4cf 100644 --- a/src/block/Fence.php +++ b/src/block/Fence.php @@ -40,6 +40,8 @@ class Fence extends Transparent{ public function readStateFromWorld() : Block{ parent::readStateFromWorld(); + $this->collisionBoxes = null; + foreach(Facing::HORIZONTAL as $facing){ $block = $this->getSide($facing); if($block instanceof static || $block instanceof FenceGate || $block->getSupportType(Facing::opposite($facing)) === SupportType::FULL){ diff --git a/src/block/Stair.php b/src/block/Stair.php index 25d1da8d9..1acaac962 100644 --- a/src/block/Stair.php +++ b/src/block/Stair.php @@ -49,6 +49,8 @@ class Stair extends Transparent{ public function readStateFromWorld() : Block{ parent::readStateFromWorld(); + $this->collisionBoxes = null; + $clockwise = Facing::rotateY($this->facing, true); if(($backFacing = $this->getPossibleCornerFacing(false)) !== null){ $this->shape = $backFacing === $clockwise ? StairShape::OUTER_RIGHT : StairShape::OUTER_LEFT; diff --git a/src/block/Thin.php b/src/block/Thin.php index bf82c3e58..dde2d7d84 100644 --- a/src/block/Thin.php +++ b/src/block/Thin.php @@ -39,6 +39,8 @@ class Thin extends Transparent{ public function readStateFromWorld() : Block{ parent::readStateFromWorld(); + $this->collisionBoxes = null; + foreach(Facing::HORIZONTAL as $facing){ $side = $this->getSide($facing); if($side instanceof Thin || $side instanceof Wall || $side->getSupportType(Facing::opposite($facing)) === SupportType::FULL){