# L~1

# LightGemBlock_vtbl

struct /*VFT*/ LightGemBlock_vtbl
{
  void (__fastcall *~BlockLegacy)(BlockLegacy *this);
  const Block *(__fastcall *getStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  const Block *(__fastcall *getModBlockStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  std::shared_ptr<BlockActor> *(__fastcall *newBlockEntity)(BlockLegacy *this, std::shared_ptr<BlockActor> *result, const BlockPos *, const Block *);
  const Block *(__fastcall *getNextBlockPermutation)(BlockLegacy *this, const Block *);
  bool (__fastcall *hasTag)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *);
  bool (__fastcall *getCollisionShape)(BlockLegacy *this, AABB *, const Block *, BlockSource *, const BlockPos *, Actor *);
  bool (__fastcall *isObstructingChests)(BlockLegacy *this, BlockSource *, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *, int *);
  void (__fastcall *addAABBs)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *);
  const AABB *(__fastcall *getAABB)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, AABB *, bool);
  bool (__fastcall *addCollisionShapes)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *, Actor *);
  const AABB *(__fastcall *getOutline)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  bool (__fastcall *getLiquidClipVolume)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  void (__fastcall *onProjectileHit)(BlockLegacy *this, BlockSource *, const BlockPos *, const Actor *);
  bool (__fastcall *liquidCanFlowIntoFromDirection)(BlockLegacy *this, unsigned __int8, const std::function<Block const & __cdecl(BlockPos const &)> *, const BlockPos *);
  bool (__fastcall *hasVariableLighting)(BlockLegacy *this);
  bool (__fastcall *isStrippable)(BlockLegacy *this, const Block *);
  const Block *(__fastcall *getStrippedBlock)(BlockLegacy *this, const Block *);
  bool (__fastcall *canProvideSupport)(BlockLegacy *this, const Block *, unsigned __int8, BlockSupportType);
  bool (__fastcall *canConnect)(BlockLegacy *this, const Block *, unsigned __int8, const Block *);
  void (__fastcall *getConnectedDirections)(BlockLegacy *this, const Block *, const BlockPos *, BlockSource *, bool *, bool *, bool *, bool *);
  bool (__fastcall *isStemBlock)(BlockLegacy *this);
  bool (__fastcall *isContainerBlock)(BlockLegacy *this);
  bool (__fastcall *isCraftingBlock)(BlockLegacy *this);
  bool (__fastcall *isWaterBlocking)(BlockLegacy *this);
  bool (__fastcall *isHurtableBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceGateBlock)(BlockLegacy *this);
  bool (__fastcall *isThinFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isWallBlock)(BlockLegacy *this);
  bool (__fastcall *isStairBlock)(BlockLegacy *this);
  bool (__fastcall *isSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoubleSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoorBlock)(BlockLegacy *this);
  bool (__fastcall *isRailBlock)(BlockLegacy *this);
  bool (__fastcall *isButtonBlock)(BlockLegacy *this);
  bool (__fastcall *canHurtAndBreakItem)(BlockLegacy *this);
  bool (__fastcall *isSignalSource)(BlockLegacy *this);
  bool (__fastcall *canBeOriginalSurface)(BlockLegacy *this);
  bool (__fastcall *isValidAuxValue)(BlockLegacy *this, int);
  void (__fastcall *setTargetLandBlocks)(BlockLegacy *this, const std::vector<std::string> *);
  bool (__fastcall *canFillAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *sanitizeFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *onFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getDirectSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  bool (__fastcall *waterSpreadCausesSpawn)(BlockLegacy *this);
  bool (__fastcall *canContainLiquid)(BlockLegacy *this);
  bool (__fastcall *shouldConnectToRedstone)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  void (__fastcall *handleRain)(BlockLegacy *this, BlockSource *, const BlockPos *, float);
  bool (__fastcall *canBeUsedInCommands)(BlockLegacy *this, const BaseGameVersion *);
  float (__fastcall *getThickness)(BlockLegacy *this);
  float (__fastcall *getFlexibility)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *checkIsPathable)(BlockLegacy *this, Actor *, const BlockPos *, const BlockPos *);
  bool (__fastcall *shouldDispense)(BlockLegacy *this, BlockSource *, Container *);
  bool (__fastcall *dispense)(BlockLegacy *this, BlockSource *, Container *, int, const Vec3 *, unsigned __int8);
  void (__fastcall *transformOnFall)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *onRedstoneUpdate)(BlockLegacy *this, BlockSource *, const BlockPos *, int, bool);
  void (__fastcall *onMove)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *detachesOnPistonMove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *movedByPiston)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureNeighborBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *setupRedstoneComponent)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *specialUse)(BlockLegacy *this, Player *, const BlockPos *, ItemStack *);
  BlockProperty (__fastcall *getRedstoneProperty)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *updateEntityAfterFallOn)(BlockLegacy *this, IActorMovementProxy *);
  bool (__fastcall *isBounceBlock)(BlockLegacy *this);
  bool (__fastcall *ignoreEntitiesOnPistonMove)(BlockLegacy *this, const Block *);
  bool (__fastcall *onFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, FertilizerType);
  bool (__fastcall *mayConsumeFertilizer)(BlockLegacy *this, BlockSource *);
  bool (__fastcall *canBeFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *mayPick)(BlockLegacy *this, BlockSource *, const Block *, bool);
  bool (__fastcall *mayPick)(BlockLegacy *this);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, unsigned __int8);
  bool (__fastcall *mayPlaceOn)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *tryToPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const ActorBlockSyncMessage *);
  bool (__fastcall *breaksFallingBlocks)(BlockLegacy *this, const Block *);
  void (__fastcall *destroy)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, Actor *);
  bool (__fastcall *playerWillDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  bool (__fastcall *getIgnoresDestroyPermissions)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *neighborChanged)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *getSecondPart)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  int (__fastcall *getResourceCount)(BlockLegacy *this, Random *, const Block *, int, bool);
  ItemInstance *(__fastcall *getResourceItem)(BlockLegacy *this, ItemInstance *result, Random *, const Block *, int);
  ItemInstance *(__fastcall *asItemInstance)(BlockLegacy *this, ItemInstance *result, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *spawnResources)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  void (__fastcall *trySpawnResourcesOnExplosion)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  bool (__fastcall *spawnBurnResources)(BlockLegacy *this, BlockSource *, float, float, float);
  const Block *(__fastcall *getPlacementBlock)(BlockLegacy *this, Actor *, const BlockPos *, unsigned __int8, const Vec3 *, int);
  int (__fastcall *calcVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *isAttachedTo)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  bool (__fastcall *attack)(BlockLegacy *this, Player *, const BlockPos *);
  void (__fastcall *handleEntityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, Vec3 *);
  void (__fastcall *entityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  int (__fastcall *getExperienceDrop)(BlockLegacy *this, Random *);
  bool (__fastcall *canBeBuiltOver)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *triggerEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, int, int);
  void (__fastcall *executeEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *, Actor *);
  void (__fastcall *executeEvent)(BlockLegacy *this, const std::string *, RenderParams *);
  bool (__fastcall *executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  bool (__fastcall *executeTriggerChain)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  const MobSpawnerData *(__fastcall *getMobToSpawn)(BlockLegacy *this, const SpawnConditions *, BlockSource *);
  bool (__fastcall *shouldStopFalling)(BlockLegacy *this, Actor *);
  bool (__fastcall *pushesUpFallingBlocks)(BlockLegacy *this);
  float (__fastcall *calcGroundFriction)(BlockLegacy *this, Mob *, const BlockPos *);
  bool (__fastcall *canHaveExtraData)(BlockLegacy *this);
  bool (__fastcall *hasComparatorSignal)(BlockLegacy *this);
  int (__fastcall *getComparatorSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, unsigned __int8);
  bool (__fastcall *onDig)(BlockLegacy *this, const Block *, Actor *, ItemStack *, const BlockPos *);
  bool (__fastcall *canSlide)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *canSpawnAt)(BlockLegacy *this, const BlockSource *, const BlockPos *);
  void (__fastcall *notifySpawnedAt)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getIconYOffset)(BlockLegacy *this);
  std::string *(__fastcall *buildDescriptionId)(BlockLegacy *this, std::string *result, const Block *);
  bool (__fastcall *isAuxValueRelevantForPicking)(BlockLegacy *this);
  int (__fastcall *getColor)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getColor)(BlockLegacy *this, const Block *);
  int (__fastcall *getColorAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getColorForParticle)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *isSeasonTinted)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  void (__fastcall *onGraphicsModeChanged)(BlockLegacy *this, const BlockGraphicsModeChangeContext *);
  float (__fastcall *getShadeBrightness)(BlockLegacy *this, const Block *);
  const AABB *(__fastcall *getVisualShapeInWorld)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, AABB *, bool);
  const AABB *(__fastcall *getVisualShape)(BlockLegacy *this, const Block *, AABB *, bool);
  const AABB *(__fastcall *getUIShape)(BlockLegacy *this, const Block *, AABB *);
  int (__fastcall *telemetryVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getVariant)(BlockLegacy *this, const Block *);
  bool (__fastcall *canSpawnOn)(BlockLegacy *this);
  const Block *(__fastcall *getRenderBlock)(BlockLegacy *this);
  unsigned __int8 (__fastcall *getMappedFace)(BlockLegacy *this, unsigned __int8, const Block *);
  bool (__fastcall *renderTwoFaced)(BlockLegacy *this);
  Flip (__fastcall *getFaceFlip)(BlockLegacy *this, unsigned __int8, const Block *);
  void (__fastcall *animateTick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  BlockLegacy *(__fastcall *init)(BlockLegacy *this);
  BlockLegacy *(__fastcall *setLightBlock)(BlockLegacy *this, Brightness);
  BlockLegacy *(__fastcall *setLightEmission)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setExplodeable)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFlammable)(BlockLegacy *this, FlameOdds, BurnOdds);
  BlockLegacy *(__fastcall *setDestroyTime)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFriction)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *addProperty)(BlockLegacy *this, BlockProperty);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *, unsigned __int64);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *);
  BlockLegacy *(__fastcall *setAllowsRunes)(BlockLegacy *this, bool);
  BlockLegacy *(__fastcall *setMapColor)(BlockLegacy *this, const mce::Color *);
  bool (__fastcall *canBeSilkTouched)(BlockLegacy *this);
  ItemInstance *(__fastcall *getSilkTouchItemInstance)(BlockLegacy *this, ItemInstance *result, const Block *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const Vec3 *, const Vec3 *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const AABB *);
  const Block *(__fastcall *tryLegacyUpgrade)(BlockLegacy *this, unsigned __int16);
  bool (__fastcall *dealsContactDamage)(BlockLegacy *this, const Actor *, const Block *, bool);
  void (__fastcall *onRemove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onExploded)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  void (__fastcall *onStandOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOff)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onPlayerPlacing)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, unsigned __int8);
  void (__fastcall *onPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onFallOn)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *playerDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  void (__fastcall *tick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  bool (__fastcall *shouldRandomTick)(BlockLegacy *this);
  bool (__fastcall *isInteractiveBlock)(BlockLegacy *this);
  HitResult *(__fastcall *clip)(BlockLegacy *this, HitResult *result, BlockSource *, const BlockPos *, const Vec3 *, const Vec3 *, bool);
  bool (__fastcall *use)(BlockLegacy *this, Player *, const BlockPos *, unsigned __int8);
  bool (__fastcall *canSurvive)(BlockLegacy *this, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this);
  int (__fastcall *getExtraRenderLayers)(BlockLegacy *this);
  float (__fastcall *getExplosionResistance)(BlockLegacy *this, Actor *);
  Brightness *(__fastcall *getLightEmission)(BlockLegacy *this, Brightness *result, const Block *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result, BlockSource *, const BlockPos *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result);
  bool (__fastcall *isCropBlock)(BlockLegacy *this);
  void (__fastcall *_executeEvent)(BlockLegacy *this, const std::string *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  bool (__fastcall *_executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *_forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
};

# LiquidBlockDynamic

struct __cppobj LiquidBlockDynamic : LiquidBlock
{
};

# LiquidBlockDynamic_vtbl

struct /*VFT*/ LiquidBlockDynamic_vtbl
{
  void (__fastcall *~BlockLegacy)(BlockLegacy *this);
  const Block *(__fastcall *getStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  const Block *(__fastcall *getModBlockStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  std::shared_ptr<BlockActor> *(__fastcall *newBlockEntity)(BlockLegacy *this, std::shared_ptr<BlockActor> *result, const BlockPos *, const Block *);
  const Block *(__fastcall *getNextBlockPermutation)(BlockLegacy *this, const Block *);
  bool (__fastcall *hasTag)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *);
  bool (__fastcall *getCollisionShape)(BlockLegacy *this, AABB *, const Block *, BlockSource *, const BlockPos *, Actor *);
  bool (__fastcall *isObstructingChests)(BlockLegacy *this, BlockSource *, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *, int *);
  void (__fastcall *addAABBs)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *);
  const AABB *(__fastcall *getAABB)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, AABB *, bool);
  bool (__fastcall *addCollisionShapes)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *, Actor *);
  const AABB *(__fastcall *getOutline)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  bool (__fastcall *getLiquidClipVolume)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  void (__fastcall *onProjectileHit)(BlockLegacy *this, BlockSource *, const BlockPos *, const Actor *);
  bool (__fastcall *liquidCanFlowIntoFromDirection)(BlockLegacy *this, unsigned __int8, const std::function<Block const & __cdecl(BlockPos const &)> *, const BlockPos *);
  bool (__fastcall *hasVariableLighting)(BlockLegacy *this);
  bool (__fastcall *isStrippable)(BlockLegacy *this, const Block *);
  const Block *(__fastcall *getStrippedBlock)(BlockLegacy *this, const Block *);
  bool (__fastcall *canProvideSupport)(BlockLegacy *this, const Block *, unsigned __int8, BlockSupportType);
  bool (__fastcall *canConnect)(BlockLegacy *this, const Block *, unsigned __int8, const Block *);
  void (__fastcall *getConnectedDirections)(BlockLegacy *this, const Block *, const BlockPos *, BlockSource *, bool *, bool *, bool *, bool *);
  bool (__fastcall *isStemBlock)(BlockLegacy *this);
  bool (__fastcall *isContainerBlock)(BlockLegacy *this);
  bool (__fastcall *isCraftingBlock)(BlockLegacy *this);
  bool (__fastcall *isWaterBlocking)(BlockLegacy *this);
  bool (__fastcall *isHurtableBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceGateBlock)(BlockLegacy *this);
  bool (__fastcall *isThinFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isWallBlock)(BlockLegacy *this);
  bool (__fastcall *isStairBlock)(BlockLegacy *this);
  bool (__fastcall *isSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoubleSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoorBlock)(BlockLegacy *this);
  bool (__fastcall *isRailBlock)(BlockLegacy *this);
  bool (__fastcall *isButtonBlock)(BlockLegacy *this);
  bool (__fastcall *canHurtAndBreakItem)(BlockLegacy *this);
  bool (__fastcall *isSignalSource)(BlockLegacy *this);
  bool (__fastcall *canBeOriginalSurface)(BlockLegacy *this);
  bool (__fastcall *isValidAuxValue)(BlockLegacy *this, int);
  void (__fastcall *setTargetLandBlocks)(BlockLegacy *this, const std::vector<std::string> *);
  bool (__fastcall *canFillAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *sanitizeFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *onFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getDirectSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  bool (__fastcall *waterSpreadCausesSpawn)(BlockLegacy *this);
  bool (__fastcall *canContainLiquid)(BlockLegacy *this);
  bool (__fastcall *shouldConnectToRedstone)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  void (__fastcall *handleRain)(BlockLegacy *this, BlockSource *, const BlockPos *, float);
  bool (__fastcall *canBeUsedInCommands)(BlockLegacy *this, const BaseGameVersion *);
  float (__fastcall *getThickness)(BlockLegacy *this);
  float (__fastcall *getFlexibility)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *checkIsPathable)(BlockLegacy *this, Actor *, const BlockPos *, const BlockPos *);
  bool (__fastcall *shouldDispense)(BlockLegacy *this, BlockSource *, Container *);
  bool (__fastcall *dispense)(BlockLegacy *this, BlockSource *, Container *, int, const Vec3 *, unsigned __int8);
  void (__fastcall *transformOnFall)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *onRedstoneUpdate)(BlockLegacy *this, BlockSource *, const BlockPos *, int, bool);
  void (__fastcall *onMove)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *detachesOnPistonMove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *movedByPiston)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureNeighborBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *setupRedstoneComponent)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *specialUse)(BlockLegacy *this, Player *, const BlockPos *, ItemStack *);
  BlockProperty (__fastcall *getRedstoneProperty)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *updateEntityAfterFallOn)(BlockLegacy *this, IActorMovementProxy *);
  bool (__fastcall *isBounceBlock)(BlockLegacy *this);
  bool (__fastcall *ignoreEntitiesOnPistonMove)(BlockLegacy *this, const Block *);
  bool (__fastcall *onFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, FertilizerType);
  bool (__fastcall *mayConsumeFertilizer)(BlockLegacy *this, BlockSource *);
  bool (__fastcall *canBeFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *mayPick)(BlockLegacy *this, BlockSource *, const Block *, bool);
  bool (__fastcall *mayPick)(BlockLegacy *this);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, unsigned __int8);
  bool (__fastcall *mayPlaceOn)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *tryToPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const ActorBlockSyncMessage *);
  bool (__fastcall *breaksFallingBlocks)(BlockLegacy *this, const Block *);
  void (__fastcall *destroy)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, Actor *);
  bool (__fastcall *playerWillDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  bool (__fastcall *getIgnoresDestroyPermissions)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *neighborChanged)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *getSecondPart)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  int (__fastcall *getResourceCount)(BlockLegacy *this, Random *, const Block *, int, bool);
  ItemInstance *(__fastcall *getResourceItem)(BlockLegacy *this, ItemInstance *result, Random *, const Block *, int);
  ItemInstance *(__fastcall *asItemInstance)(BlockLegacy *this, ItemInstance *result, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *spawnResources)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  void (__fastcall *trySpawnResourcesOnExplosion)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  bool (__fastcall *spawnBurnResources)(BlockLegacy *this, BlockSource *, float, float, float);
  const Block *(__fastcall *getPlacementBlock)(BlockLegacy *this, Actor *, const BlockPos *, unsigned __int8, const Vec3 *, int);
  int (__fastcall *calcVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *isAttachedTo)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  bool (__fastcall *attack)(BlockLegacy *this, Player *, const BlockPos *);
  void (__fastcall *handleEntityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, Vec3 *);
  void (__fastcall *entityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  int (__fastcall *getExperienceDrop)(BlockLegacy *this, Random *);
  bool (__fastcall *canBeBuiltOver)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *triggerEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, int, int);
  void (__fastcall *executeEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *, Actor *);
  void (__fastcall *executeEvent)(BlockLegacy *this, const std::string *, RenderParams *);
  bool (__fastcall *executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  bool (__fastcall *executeTriggerChain)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  const MobSpawnerData *(__fastcall *getMobToSpawn)(BlockLegacy *this, const SpawnConditions *, BlockSource *);
  bool (__fastcall *shouldStopFalling)(BlockLegacy *this, Actor *);
  bool (__fastcall *pushesUpFallingBlocks)(BlockLegacy *this);
  float (__fastcall *calcGroundFriction)(BlockLegacy *this, Mob *, const BlockPos *);
  bool (__fastcall *canHaveExtraData)(BlockLegacy *this);
  bool (__fastcall *hasComparatorSignal)(BlockLegacy *this);
  int (__fastcall *getComparatorSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, unsigned __int8);
  bool (__fastcall *onDig)(BlockLegacy *this, const Block *, Actor *, ItemStack *, const BlockPos *);
  bool (__fastcall *canSlide)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *canSpawnAt)(BlockLegacy *this, const BlockSource *, const BlockPos *);
  void (__fastcall *notifySpawnedAt)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getIconYOffset)(BlockLegacy *this);
  std::string *(__fastcall *buildDescriptionId)(BlockLegacy *this, std::string *result, const Block *);
  bool (__fastcall *isAuxValueRelevantForPicking)(BlockLegacy *this);
  int (__fastcall *getColor)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getColor)(BlockLegacy *this, const Block *);
  int (__fastcall *getColorAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getColorForParticle)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *isSeasonTinted)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  void (__fastcall *onGraphicsModeChanged)(BlockLegacy *this, const BlockGraphicsModeChangeContext *);
  float (__fastcall *getShadeBrightness)(BlockLegacy *this, const Block *);
  const AABB *(__fastcall *getVisualShapeInWorld)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, AABB *, bool);
  const AABB *(__fastcall *getVisualShape)(BlockLegacy *this, const Block *, AABB *, bool);
  const AABB *(__fastcall *getUIShape)(BlockLegacy *this, const Block *, AABB *);
  int (__fastcall *telemetryVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getVariant)(BlockLegacy *this, const Block *);
  bool (__fastcall *canSpawnOn)(BlockLegacy *this);
  const Block *(__fastcall *getRenderBlock)(BlockLegacy *this);
  unsigned __int8 (__fastcall *getMappedFace)(BlockLegacy *this, unsigned __int8, const Block *);
  bool (__fastcall *renderTwoFaced)(BlockLegacy *this);
  Flip (__fastcall *getFaceFlip)(BlockLegacy *this, unsigned __int8, const Block *);
  void (__fastcall *animateTick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  BlockLegacy *(__fastcall *init)(BlockLegacy *this);
  BlockLegacy *(__fastcall *setLightBlock)(BlockLegacy *this, Brightness);
  BlockLegacy *(__fastcall *setLightEmission)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setExplodeable)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFlammable)(BlockLegacy *this, FlameOdds, BurnOdds);
  BlockLegacy *(__fastcall *setDestroyTime)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFriction)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *addProperty)(BlockLegacy *this, BlockProperty);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *, unsigned __int64);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *);
  BlockLegacy *(__fastcall *setAllowsRunes)(BlockLegacy *this, bool);
  BlockLegacy *(__fastcall *setMapColor)(BlockLegacy *this, const mce::Color *);
  bool (__fastcall *canBeSilkTouched)(BlockLegacy *this);
  ItemInstance *(__fastcall *getSilkTouchItemInstance)(BlockLegacy *this, ItemInstance *result, const Block *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const Vec3 *, const Vec3 *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const AABB *);
  const Block *(__fastcall *tryLegacyUpgrade)(BlockLegacy *this, unsigned __int16);
  bool (__fastcall *dealsContactDamage)(BlockLegacy *this, const Actor *, const Block *, bool);
  void (__fastcall *onRemove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onExploded)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  void (__fastcall *onStandOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOff)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onPlayerPlacing)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, unsigned __int8);
  void (__fastcall *onPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onFallOn)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *playerDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  void (__fastcall *tick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  bool (__fastcall *shouldRandomTick)(BlockLegacy *this);
  bool (__fastcall *isInteractiveBlock)(BlockLegacy *this);
  HitResult *(__fastcall *clip)(BlockLegacy *this, HitResult *result, BlockSource *, const BlockPos *, const Vec3 *, const Vec3 *, bool);
  bool (__fastcall *use)(BlockLegacy *this, Player *, const BlockPos *, unsigned __int8);
  bool (__fastcall *canSurvive)(BlockLegacy *this, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this);
  int (__fastcall *getExtraRenderLayers)(BlockLegacy *this);
  float (__fastcall *getExplosionResistance)(BlockLegacy *this, Actor *);
  Brightness *(__fastcall *getLightEmission)(BlockLegacy *this, Brightness *result, const Block *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result, BlockSource *, const BlockPos *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result);
  bool (__fastcall *isCropBlock)(BlockLegacy *this);
  void (__fastcall *_executeEvent)(BlockLegacy *this, const std::string *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  bool (__fastcall *_executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *_forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
};

# LiquidBlockStatic

struct __cppobj LiquidBlockStatic : LiquidBlock
{
};

# LiquidBlockStatic_vtbl

struct /*VFT*/ LiquidBlockStatic_vtbl
{
  void (__fastcall *~BlockLegacy)(BlockLegacy *this);
  const Block *(__fastcall *getStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  const Block *(__fastcall *getModBlockStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  std::shared_ptr<BlockActor> *(__fastcall *newBlockEntity)(BlockLegacy *this, std::shared_ptr<BlockActor> *result, const BlockPos *, const Block *);
  const Block *(__fastcall *getNextBlockPermutation)(BlockLegacy *this, const Block *);
  bool (__fastcall *hasTag)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *);
  bool (__fastcall *getCollisionShape)(BlockLegacy *this, AABB *, const Block *, BlockSource *, const BlockPos *, Actor *);
  bool (__fastcall *isObstructingChests)(BlockLegacy *this, BlockSource *, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *, int *);
  void (__fastcall *addAABBs)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *);
  const AABB *(__fastcall *getAABB)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, AABB *, bool);
  bool (__fastcall *addCollisionShapes)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *, Actor *);
  const AABB *(__fastcall *getOutline)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  bool (__fastcall *getLiquidClipVolume)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  void (__fastcall *onProjectileHit)(BlockLegacy *this, BlockSource *, const BlockPos *, const Actor *);
  bool (__fastcall *liquidCanFlowIntoFromDirection)(BlockLegacy *this, unsigned __int8, const std::function<Block const & __cdecl(BlockPos const &)> *, const BlockPos *);
  bool (__fastcall *hasVariableLighting)(BlockLegacy *this);
  bool (__fastcall *isStrippable)(BlockLegacy *this, const Block *);
  const Block *(__fastcall *getStrippedBlock)(BlockLegacy *this, const Block *);
  bool (__fastcall *canProvideSupport)(BlockLegacy *this, const Block *, unsigned __int8, BlockSupportType);
  bool (__fastcall *canConnect)(BlockLegacy *this, const Block *, unsigned __int8, const Block *);
  void (__fastcall *getConnectedDirections)(BlockLegacy *this, const Block *, const BlockPos *, BlockSource *, bool *, bool *, bool *, bool *);
  bool (__fastcall *isStemBlock)(BlockLegacy *this);
  bool (__fastcall *isContainerBlock)(BlockLegacy *this);
  bool (__fastcall *isCraftingBlock)(BlockLegacy *this);
  bool (__fastcall *isWaterBlocking)(BlockLegacy *this);
  bool (__fastcall *isHurtableBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceGateBlock)(BlockLegacy *this);
  bool (__fastcall *isThinFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isWallBlock)(BlockLegacy *this);
  bool (__fastcall *isStairBlock)(BlockLegacy *this);
  bool (__fastcall *isSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoubleSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoorBlock)(BlockLegacy *this);
  bool (__fastcall *isRailBlock)(BlockLegacy *this);
  bool (__fastcall *isButtonBlock)(BlockLegacy *this);
  bool (__fastcall *canHurtAndBreakItem)(BlockLegacy *this);
  bool (__fastcall *isSignalSource)(BlockLegacy *this);
  bool (__fastcall *canBeOriginalSurface)(BlockLegacy *this);
  bool (__fastcall *isValidAuxValue)(BlockLegacy *this, int);
  void (__fastcall *setTargetLandBlocks)(BlockLegacy *this, const std::vector<std::string> *);
  bool (__fastcall *canFillAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *sanitizeFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *onFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getDirectSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  bool (__fastcall *waterSpreadCausesSpawn)(BlockLegacy *this);
  bool (__fastcall *canContainLiquid)(BlockLegacy *this);
  bool (__fastcall *shouldConnectToRedstone)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  void (__fastcall *handleRain)(BlockLegacy *this, BlockSource *, const BlockPos *, float);
  bool (__fastcall *canBeUsedInCommands)(BlockLegacy *this, const BaseGameVersion *);
  float (__fastcall *getThickness)(BlockLegacy *this);
  float (__fastcall *getFlexibility)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *checkIsPathable)(BlockLegacy *this, Actor *, const BlockPos *, const BlockPos *);
  bool (__fastcall *shouldDispense)(BlockLegacy *this, BlockSource *, Container *);
  bool (__fastcall *dispense)(BlockLegacy *this, BlockSource *, Container *, int, const Vec3 *, unsigned __int8);
  void (__fastcall *transformOnFall)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *onRedstoneUpdate)(BlockLegacy *this, BlockSource *, const BlockPos *, int, bool);
  void (__fastcall *onMove)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *detachesOnPistonMove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *movedByPiston)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureNeighborBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *setupRedstoneComponent)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *specialUse)(BlockLegacy *this, Player *, const BlockPos *, ItemStack *);
  BlockProperty (__fastcall *getRedstoneProperty)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *updateEntityAfterFallOn)(BlockLegacy *this, IActorMovementProxy *);
  bool (__fastcall *isBounceBlock)(BlockLegacy *this);
  bool (__fastcall *ignoreEntitiesOnPistonMove)(BlockLegacy *this, const Block *);
  bool (__fastcall *onFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, FertilizerType);
  bool (__fastcall *mayConsumeFertilizer)(BlockLegacy *this, BlockSource *);
  bool (__fastcall *canBeFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *mayPick)(BlockLegacy *this, BlockSource *, const Block *, bool);
  bool (__fastcall *mayPick)(BlockLegacy *this);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, unsigned __int8);
  bool (__fastcall *mayPlaceOn)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *tryToPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const ActorBlockSyncMessage *);
  bool (__fastcall *breaksFallingBlocks)(BlockLegacy *this, const Block *);
  void (__fastcall *destroy)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, Actor *);
  bool (__fastcall *playerWillDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  bool (__fastcall *getIgnoresDestroyPermissions)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *neighborChanged)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *getSecondPart)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  int (__fastcall *getResourceCount)(BlockLegacy *this, Random *, const Block *, int, bool);
  ItemInstance *(__fastcall *getResourceItem)(BlockLegacy *this, ItemInstance *result, Random *, const Block *, int);
  ItemInstance *(__fastcall *asItemInstance)(BlockLegacy *this, ItemInstance *result, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *spawnResources)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  void (__fastcall *trySpawnResourcesOnExplosion)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  bool (__fastcall *spawnBurnResources)(BlockLegacy *this, BlockSource *, float, float, float);
  const Block *(__fastcall *getPlacementBlock)(BlockLegacy *this, Actor *, const BlockPos *, unsigned __int8, const Vec3 *, int);
  int (__fastcall *calcVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *isAttachedTo)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  bool (__fastcall *attack)(BlockLegacy *this, Player *, const BlockPos *);
  void (__fastcall *handleEntityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, Vec3 *);
  void (__fastcall *entityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  int (__fastcall *getExperienceDrop)(BlockLegacy *this, Random *);
  bool (__fastcall *canBeBuiltOver)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *triggerEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, int, int);
  void (__fastcall *executeEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *, Actor *);
  void (__fastcall *executeEvent)(BlockLegacy *this, const std::string *, RenderParams *);
  bool (__fastcall *executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  bool (__fastcall *executeTriggerChain)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  const MobSpawnerData *(__fastcall *getMobToSpawn)(BlockLegacy *this, const SpawnConditions *, BlockSource *);
  bool (__fastcall *shouldStopFalling)(BlockLegacy *this, Actor *);
  bool (__fastcall *pushesUpFallingBlocks)(BlockLegacy *this);
  float (__fastcall *calcGroundFriction)(BlockLegacy *this, Mob *, const BlockPos *);
  bool (__fastcall *canHaveExtraData)(BlockLegacy *this);
  bool (__fastcall *hasComparatorSignal)(BlockLegacy *this);
  int (__fastcall *getComparatorSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, unsigned __int8);
  bool (__fastcall *onDig)(BlockLegacy *this, const Block *, Actor *, ItemStack *, const BlockPos *);
  bool (__fastcall *canSlide)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *canSpawnAt)(BlockLegacy *this, const BlockSource *, const BlockPos *);
  void (__fastcall *notifySpawnedAt)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getIconYOffset)(BlockLegacy *this);
  std::string *(__fastcall *buildDescriptionId)(BlockLegacy *this, std::string *result, const Block *);
  bool (__fastcall *isAuxValueRelevantForPicking)(BlockLegacy *this);
  int (__fastcall *getColor)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getColor)(BlockLegacy *this, const Block *);
  int (__fastcall *getColorAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getColorForParticle)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *isSeasonTinted)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  void (__fastcall *onGraphicsModeChanged)(BlockLegacy *this, const BlockGraphicsModeChangeContext *);
  float (__fastcall *getShadeBrightness)(BlockLegacy *this, const Block *);
  const AABB *(__fastcall *getVisualShapeInWorld)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, AABB *, bool);
  const AABB *(__fastcall *getVisualShape)(BlockLegacy *this, const Block *, AABB *, bool);
  const AABB *(__fastcall *getUIShape)(BlockLegacy *this, const Block *, AABB *);
  int (__fastcall *telemetryVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getVariant)(BlockLegacy *this, const Block *);
  bool (__fastcall *canSpawnOn)(BlockLegacy *this);
  const Block *(__fastcall *getRenderBlock)(BlockLegacy *this);
  unsigned __int8 (__fastcall *getMappedFace)(BlockLegacy *this, unsigned __int8, const Block *);
  bool (__fastcall *renderTwoFaced)(BlockLegacy *this);
  Flip (__fastcall *getFaceFlip)(BlockLegacy *this, unsigned __int8, const Block *);
  void (__fastcall *animateTick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  BlockLegacy *(__fastcall *init)(BlockLegacy *this);
  BlockLegacy *(__fastcall *setLightBlock)(BlockLegacy *this, Brightness);
  BlockLegacy *(__fastcall *setLightEmission)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setExplodeable)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFlammable)(BlockLegacy *this, FlameOdds, BurnOdds);
  BlockLegacy *(__fastcall *setDestroyTime)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFriction)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *addProperty)(BlockLegacy *this, BlockProperty);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *, unsigned __int64);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *);
  BlockLegacy *(__fastcall *setAllowsRunes)(BlockLegacy *this, bool);
  BlockLegacy *(__fastcall *setMapColor)(BlockLegacy *this, const mce::Color *);
  bool (__fastcall *canBeSilkTouched)(BlockLegacy *this);
  ItemInstance *(__fastcall *getSilkTouchItemInstance)(BlockLegacy *this, ItemInstance *result, const Block *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const Vec3 *, const Vec3 *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const AABB *);
  const Block *(__fastcall *tryLegacyUpgrade)(BlockLegacy *this, unsigned __int16);
  bool (__fastcall *dealsContactDamage)(BlockLegacy *this, const Actor *, const Block *, bool);
  void (__fastcall *onRemove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onExploded)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  void (__fastcall *onStandOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOff)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onPlayerPlacing)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, unsigned __int8);
  void (__fastcall *onPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onFallOn)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *playerDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  void (__fastcall *tick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  bool (__fastcall *shouldRandomTick)(BlockLegacy *this);
  bool (__fastcall *isInteractiveBlock)(BlockLegacy *this);
  HitResult *(__fastcall *clip)(BlockLegacy *this, HitResult *result, BlockSource *, const BlockPos *, const Vec3 *, const Vec3 *, bool);
  bool (__fastcall *use)(BlockLegacy *this, Player *, const BlockPos *, unsigned __int8);
  bool (__fastcall *canSurvive)(BlockLegacy *this, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this);
  int (__fastcall *getExtraRenderLayers)(BlockLegacy *this);
  float (__fastcall *getExplosionResistance)(BlockLegacy *this, Actor *);
  Brightness *(__fastcall *getLightEmission)(BlockLegacy *this, Brightness *result, const Block *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result, BlockSource *, const BlockPos *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result);
  bool (__fastcall *isCropBlock)(BlockLegacy *this);
  void (__fastcall *_executeEvent)(BlockLegacy *this, const std::string *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  bool (__fastcall *_executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *_forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
};

# LogBlock

struct __cppobj LogBlock : RotatedPillarBlock
{
};

# LogBlock_vtbl

struct /*VFT*/ LogBlock_vtbl
{
  void (__fastcall *~BlockLegacy)(BlockLegacy *this);
  const Block *(__fastcall *getStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  const Block *(__fastcall *getModBlockStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  std::shared_ptr<BlockActor> *(__fastcall *newBlockEntity)(BlockLegacy *this, std::shared_ptr<BlockActor> *result, const BlockPos *, const Block *);
  const Block *(__fastcall *getNextBlockPermutation)(BlockLegacy *this, const Block *);
  bool (__fastcall *hasTag)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *);
  bool (__fastcall *getCollisionShape)(BlockLegacy *this, AABB *, const Block *, BlockSource *, const BlockPos *, Actor *);
  bool (__fastcall *isObstructingChests)(BlockLegacy *this, BlockSource *, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *, int *);
  void (__fastcall *addAABBs)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *);
  const AABB *(__fastcall *getAABB)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, AABB *, bool);
  bool (__fastcall *addCollisionShapes)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *, Actor *);
  const AABB *(__fastcall *getOutline)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  bool (__fastcall *getLiquidClipVolume)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  void (__fastcall *onProjectileHit)(BlockLegacy *this, BlockSource *, const BlockPos *, const Actor *);
  bool (__fastcall *liquidCanFlowIntoFromDirection)(BlockLegacy *this, unsigned __int8, const std::function<Block const & __cdecl(BlockPos const &)> *, const BlockPos *);
  bool (__fastcall *hasVariableLighting)(BlockLegacy *this);
  bool (__fastcall *isStrippable)(BlockLegacy *this, const Block *);
  const Block *(__fastcall *getStrippedBlock)(BlockLegacy *this, const Block *);
  bool (__fastcall *canProvideSupport)(BlockLegacy *this, const Block *, unsigned __int8, BlockSupportType);
  bool (__fastcall *canConnect)(BlockLegacy *this, const Block *, unsigned __int8, const Block *);
  void (__fastcall *getConnectedDirections)(BlockLegacy *this, const Block *, const BlockPos *, BlockSource *, bool *, bool *, bool *, bool *);
  bool (__fastcall *isStemBlock)(BlockLegacy *this);
  bool (__fastcall *isContainerBlock)(BlockLegacy *this);
  bool (__fastcall *isCraftingBlock)(BlockLegacy *this);
  bool (__fastcall *isWaterBlocking)(BlockLegacy *this);
  bool (__fastcall *isHurtableBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceGateBlock)(BlockLegacy *this);
  bool (__fastcall *isThinFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isWallBlock)(BlockLegacy *this);
  bool (__fastcall *isStairBlock)(BlockLegacy *this);
  bool (__fastcall *isSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoubleSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoorBlock)(BlockLegacy *this);
  bool (__fastcall *isRailBlock)(BlockLegacy *this);
  bool (__fastcall *isButtonBlock)(BlockLegacy *this);
  bool (__fastcall *canHurtAndBreakItem)(BlockLegacy *this);
  bool (__fastcall *isSignalSource)(BlockLegacy *this);
  bool (__fastcall *canBeOriginalSurface)(BlockLegacy *this);
  bool (__fastcall *isValidAuxValue)(BlockLegacy *this, int);
  void (__fastcall *setTargetLandBlocks)(BlockLegacy *this, const std::vector<std::string> *);
  bool (__fastcall *canFillAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *sanitizeFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *onFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getDirectSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  bool (__fastcall *waterSpreadCausesSpawn)(BlockLegacy *this);
  bool (__fastcall *canContainLiquid)(BlockLegacy *this);
  bool (__fastcall *shouldConnectToRedstone)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  void (__fastcall *handleRain)(BlockLegacy *this, BlockSource *, const BlockPos *, float);
  bool (__fastcall *canBeUsedInCommands)(BlockLegacy *this, const BaseGameVersion *);
  float (__fastcall *getThickness)(BlockLegacy *this);
  float (__fastcall *getFlexibility)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *checkIsPathable)(BlockLegacy *this, Actor *, const BlockPos *, const BlockPos *);
  bool (__fastcall *shouldDispense)(BlockLegacy *this, BlockSource *, Container *);
  bool (__fastcall *dispense)(BlockLegacy *this, BlockSource *, Container *, int, const Vec3 *, unsigned __int8);
  void (__fastcall *transformOnFall)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *onRedstoneUpdate)(BlockLegacy *this, BlockSource *, const BlockPos *, int, bool);
  void (__fastcall *onMove)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *detachesOnPistonMove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *movedByPiston)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureNeighborBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *setupRedstoneComponent)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *specialUse)(BlockLegacy *this, Player *, const BlockPos *, ItemStack *);
  BlockProperty (__fastcall *getRedstoneProperty)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *updateEntityAfterFallOn)(BlockLegacy *this, IActorMovementProxy *);
  bool (__fastcall *isBounceBlock)(BlockLegacy *this);
  bool (__fastcall *ignoreEntitiesOnPistonMove)(BlockLegacy *this, const Block *);
  bool (__fastcall *onFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, FertilizerType);
  bool (__fastcall *mayConsumeFertilizer)(BlockLegacy *this, BlockSource *);
  bool (__fastcall *canBeFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *mayPick)(BlockLegacy *this, BlockSource *, const Block *, bool);
  bool (__fastcall *mayPick)(BlockLegacy *this);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, unsigned __int8);
  bool (__fastcall *mayPlaceOn)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *tryToPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const ActorBlockSyncMessage *);
  bool (__fastcall *breaksFallingBlocks)(BlockLegacy *this, const Block *);
  void (__fastcall *destroy)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, Actor *);
  bool (__fastcall *playerWillDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  bool (__fastcall *getIgnoresDestroyPermissions)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *neighborChanged)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *getSecondPart)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  int (__fastcall *getResourceCount)(BlockLegacy *this, Random *, const Block *, int, bool);
  ItemInstance *(__fastcall *getResourceItem)(BlockLegacy *this, ItemInstance *result, Random *, const Block *, int);
  ItemInstance *(__fastcall *asItemInstance)(BlockLegacy *this, ItemInstance *result, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *spawnResources)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  void (__fastcall *trySpawnResourcesOnExplosion)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  bool (__fastcall *spawnBurnResources)(BlockLegacy *this, BlockSource *, float, float, float);
  const Block *(__fastcall *getPlacementBlock)(BlockLegacy *this, Actor *, const BlockPos *, unsigned __int8, const Vec3 *, int);
  int (__fastcall *calcVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *isAttachedTo)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  bool (__fastcall *attack)(BlockLegacy *this, Player *, const BlockPos *);
  void (__fastcall *handleEntityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, Vec3 *);
  void (__fastcall *entityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  int (__fastcall *getExperienceDrop)(BlockLegacy *this, Random *);
  bool (__fastcall *canBeBuiltOver)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *triggerEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, int, int);
  void (__fastcall *executeEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *, Actor *);
  void (__fastcall *executeEvent)(BlockLegacy *this, const std::string *, RenderParams *);
  bool (__fastcall *executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  bool (__fastcall *executeTriggerChain)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  const MobSpawnerData *(__fastcall *getMobToSpawn)(BlockLegacy *this, const SpawnConditions *, BlockSource *);
  bool (__fastcall *shouldStopFalling)(BlockLegacy *this, Actor *);
  bool (__fastcall *pushesUpFallingBlocks)(BlockLegacy *this);
  float (__fastcall *calcGroundFriction)(BlockLegacy *this, Mob *, const BlockPos *);
  bool (__fastcall *canHaveExtraData)(BlockLegacy *this);
  bool (__fastcall *hasComparatorSignal)(BlockLegacy *this);
  int (__fastcall *getComparatorSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, unsigned __int8);
  bool (__fastcall *onDig)(BlockLegacy *this, const Block *, Actor *, ItemStack *, const BlockPos *);
  bool (__fastcall *canSlide)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *canSpawnAt)(BlockLegacy *this, const BlockSource *, const BlockPos *);
  void (__fastcall *notifySpawnedAt)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getIconYOffset)(BlockLegacy *this);
  std::string *(__fastcall *buildDescriptionId)(BlockLegacy *this, std::string *result, const Block *);
  bool (__fastcall *isAuxValueRelevantForPicking)(BlockLegacy *this);
  int (__fastcall *getColor)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getColor)(BlockLegacy *this, const Block *);
  int (__fastcall *getColorAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getColorForParticle)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *isSeasonTinted)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  void (__fastcall *onGraphicsModeChanged)(BlockLegacy *this, const BlockGraphicsModeChangeContext *);
  float (__fastcall *getShadeBrightness)(BlockLegacy *this, const Block *);
  const AABB *(__fastcall *getVisualShapeInWorld)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, AABB *, bool);
  const AABB *(__fastcall *getVisualShape)(BlockLegacy *this, const Block *, AABB *, bool);
  const AABB *(__fastcall *getUIShape)(BlockLegacy *this, const Block *, AABB *);
  int (__fastcall *telemetryVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getVariant)(BlockLegacy *this, const Block *);
  bool (__fastcall *canSpawnOn)(BlockLegacy *this);
  const Block *(__fastcall *getRenderBlock)(BlockLegacy *this);
  unsigned __int8 (__fastcall *getMappedFace)(BlockLegacy *this, unsigned __int8, const Block *);
  bool (__fastcall *renderTwoFaced)(BlockLegacy *this);
  Flip (__fastcall *getFaceFlip)(BlockLegacy *this, unsigned __int8, const Block *);
  void (__fastcall *animateTick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  BlockLegacy *(__fastcall *init)(BlockLegacy *this);
  BlockLegacy *(__fastcall *setLightBlock)(BlockLegacy *this, Brightness);
  BlockLegacy *(__fastcall *setLightEmission)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setExplodeable)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFlammable)(BlockLegacy *this, FlameOdds, BurnOdds);
  BlockLegacy *(__fastcall *setDestroyTime)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFriction)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *addProperty)(BlockLegacy *this, BlockProperty);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *, unsigned __int64);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *);
  BlockLegacy *(__fastcall *setAllowsRunes)(BlockLegacy *this, bool);
  BlockLegacy *(__fastcall *setMapColor)(BlockLegacy *this, const mce::Color *);
  bool (__fastcall *canBeSilkTouched)(BlockLegacy *this);
  ItemInstance *(__fastcall *getSilkTouchItemInstance)(BlockLegacy *this, ItemInstance *result, const Block *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const Vec3 *, const Vec3 *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const AABB *);
  const Block *(__fastcall *tryLegacyUpgrade)(BlockLegacy *this, unsigned __int16);
  bool (__fastcall *dealsContactDamage)(BlockLegacy *this, const Actor *, const Block *, bool);
  void (__fastcall *onRemove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onExploded)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  void (__fastcall *onStandOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOff)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onPlayerPlacing)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, unsigned __int8);
  void (__fastcall *onPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onFallOn)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *playerDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  void (__fastcall *tick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  bool (__fastcall *shouldRandomTick)(BlockLegacy *this);
  bool (__fastcall *isInteractiveBlock)(BlockLegacy *this);
  HitResult *(__fastcall *clip)(BlockLegacy *this, HitResult *result, BlockSource *, const BlockPos *, const Vec3 *, const Vec3 *, bool);
  bool (__fastcall *use)(BlockLegacy *this, Player *, const BlockPos *, unsigned __int8);
  bool (__fastcall *canSurvive)(BlockLegacy *this, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this);
  int (__fastcall *getExtraRenderLayers)(BlockLegacy *this);
  float (__fastcall *getExplosionResistance)(BlockLegacy *this, Actor *);
  Brightness *(__fastcall *getLightEmission)(BlockLegacy *this, Brightness *result, const Block *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result, BlockSource *, const BlockPos *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result);
  bool (__fastcall *isCropBlock)(BlockLegacy *this);
  void (__fastcall *_executeEvent)(BlockLegacy *this, const std::string *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  bool (__fastcall *_executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *_forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
};

# LoomBlock

struct __cppobj LoomBlock : FaceDirectionalBlock
{
};

# LoomBlock_vtbl

struct /*VFT*/ LoomBlock_vtbl
{
  void (__fastcall *~BlockLegacy)(BlockLegacy *this);
  const Block *(__fastcall *getStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  const Block *(__fastcall *getModBlockStateFromLegacyData)(BlockLegacy *this, unsigned __int16);
  std::shared_ptr<BlockActor> *(__fastcall *newBlockEntity)(BlockLegacy *this, std::shared_ptr<BlockActor> *result, const BlockPos *, const Block *);
  const Block *(__fastcall *getNextBlockPermutation)(BlockLegacy *this, const Block *);
  bool (__fastcall *hasTag)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *);
  bool (__fastcall *getCollisionShape)(BlockLegacy *this, AABB *, const Block *, BlockSource *, const BlockPos *, Actor *);
  bool (__fastcall *isObstructingChests)(BlockLegacy *this, BlockSource *, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *);
  Vec3 *(__fastcall *randomlyModifyPosition)(BlockLegacy *this, Vec3 *result, const BlockPos *, int *);
  void (__fastcall *addAABBs)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *);
  const AABB *(__fastcall *getAABB)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, AABB *, bool);
  bool (__fastcall *addCollisionShapes)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, const AABB *, std::vector<AABB> *, Actor *);
  const AABB *(__fastcall *getOutline)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  bool (__fastcall *getLiquidClipVolume)(BlockLegacy *this, BlockSource *, const BlockPos *, AABB *);
  void (__fastcall *onProjectileHit)(BlockLegacy *this, BlockSource *, const BlockPos *, const Actor *);
  bool (__fastcall *liquidCanFlowIntoFromDirection)(BlockLegacy *this, unsigned __int8, const std::function<Block const & __cdecl(BlockPos const &)> *, const BlockPos *);
  bool (__fastcall *hasVariableLighting)(BlockLegacy *this);
  bool (__fastcall *isStrippable)(BlockLegacy *this, const Block *);
  const Block *(__fastcall *getStrippedBlock)(BlockLegacy *this, const Block *);
  bool (__fastcall *canProvideSupport)(BlockLegacy *this, const Block *, unsigned __int8, BlockSupportType);
  bool (__fastcall *canConnect)(BlockLegacy *this, const Block *, unsigned __int8, const Block *);
  void (__fastcall *getConnectedDirections)(BlockLegacy *this, const Block *, const BlockPos *, BlockSource *, bool *, bool *, bool *, bool *);
  bool (__fastcall *isStemBlock)(BlockLegacy *this);
  bool (__fastcall *isContainerBlock)(BlockLegacy *this);
  bool (__fastcall *isCraftingBlock)(BlockLegacy *this);
  bool (__fastcall *isWaterBlocking)(BlockLegacy *this);
  bool (__fastcall *isHurtableBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isFenceGateBlock)(BlockLegacy *this);
  bool (__fastcall *isThinFenceBlock)(BlockLegacy *this);
  bool (__fastcall *isWallBlock)(BlockLegacy *this);
  bool (__fastcall *isStairBlock)(BlockLegacy *this);
  bool (__fastcall *isSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoubleSlabBlock)(BlockLegacy *this);
  bool (__fastcall *isDoorBlock)(BlockLegacy *this);
  bool (__fastcall *isRailBlock)(BlockLegacy *this);
  bool (__fastcall *isButtonBlock)(BlockLegacy *this);
  bool (__fastcall *canHurtAndBreakItem)(BlockLegacy *this);
  bool (__fastcall *isSignalSource)(BlockLegacy *this);
  bool (__fastcall *canBeOriginalSurface)(BlockLegacy *this);
  bool (__fastcall *isValidAuxValue)(BlockLegacy *this, int);
  void (__fastcall *setTargetLandBlocks)(BlockLegacy *this, const std::vector<std::string> *);
  bool (__fastcall *canFillAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *sanitizeFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *onFillBlock)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getDirectSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  bool (__fastcall *waterSpreadCausesSpawn)(BlockLegacy *this);
  bool (__fastcall *canContainLiquid)(BlockLegacy *this);
  bool (__fastcall *shouldConnectToRedstone)(BlockLegacy *this, BlockSource *, const BlockPos *, int);
  void (__fastcall *handleRain)(BlockLegacy *this, BlockSource *, const BlockPos *, float);
  bool (__fastcall *canBeUsedInCommands)(BlockLegacy *this, const BaseGameVersion *);
  float (__fastcall *getThickness)(BlockLegacy *this);
  float (__fastcall *getFlexibility)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *checkIsPathable)(BlockLegacy *this, Actor *, const BlockPos *, const BlockPos *);
  bool (__fastcall *shouldDispense)(BlockLegacy *this, BlockSource *, Container *);
  bool (__fastcall *dispense)(BlockLegacy *this, BlockSource *, Container *, int, const Vec3 *, unsigned __int8);
  void (__fastcall *transformOnFall)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *onRedstoneUpdate)(BlockLegacy *this, BlockSource *, const BlockPos *, int, bool);
  void (__fastcall *onMove)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *detachesOnPistonMove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *movedByPiston)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onStructureNeighborBlockPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *setupRedstoneComponent)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *specialUse)(BlockLegacy *this, Player *, const BlockPos *, ItemStack *);
  BlockProperty (__fastcall *getRedstoneProperty)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *updateEntityAfterFallOn)(BlockLegacy *this, IActorMovementProxy *);
  bool (__fastcall *isBounceBlock)(BlockLegacy *this);
  bool (__fastcall *ignoreEntitiesOnPistonMove)(BlockLegacy *this, const Block *);
  bool (__fastcall *onFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, FertilizerType);
  bool (__fastcall *mayConsumeFertilizer)(BlockLegacy *this, BlockSource *);
  bool (__fastcall *canBeFertilized)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *mayPick)(BlockLegacy *this, BlockSource *, const Block *, bool);
  bool (__fastcall *mayPick)(BlockLegacy *this);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *mayPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, unsigned __int8);
  bool (__fastcall *mayPlaceOn)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *tryToPlace)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const ActorBlockSyncMessage *);
  bool (__fastcall *breaksFallingBlocks)(BlockLegacy *this, const Block *);
  void (__fastcall *destroy)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, Actor *);
  bool (__fastcall *playerWillDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  bool (__fastcall *getIgnoresDestroyPermissions)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *neighborChanged)(BlockLegacy *this, BlockSource *, const BlockPos *, const BlockPos *);
  bool (__fastcall *getSecondPart)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  int (__fastcall *getResourceCount)(BlockLegacy *this, Random *, const Block *, int, bool);
  ItemInstance *(__fastcall *getResourceItem)(BlockLegacy *this, ItemInstance *result, Random *, const Block *, int);
  ItemInstance *(__fastcall *asItemInstance)(BlockLegacy *this, ItemInstance *result, BlockSource *, const BlockPos *, const Block *);
  void (__fastcall *spawnResources)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  void (__fastcall *trySpawnResourcesOnExplosion)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, std::vector<Item const *> *, float, int, bool);
  bool (__fastcall *spawnBurnResources)(BlockLegacy *this, BlockSource *, float, float, float);
  const Block *(__fastcall *getPlacementBlock)(BlockLegacy *this, Actor *, const BlockPos *, unsigned __int8, const Vec3 *, int);
  int (__fastcall *calcVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *isAttachedTo)(BlockLegacy *this, BlockSource *, const BlockPos *, BlockPos *);
  bool (__fastcall *attack)(BlockLegacy *this, Player *, const BlockPos *);
  void (__fastcall *handleEntityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, Vec3 *);
  void (__fastcall *entityInside)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  int (__fastcall *getExperienceDrop)(BlockLegacy *this, Random *);
  bool (__fastcall *canBeBuiltOver)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *triggerEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, int, int);
  void (__fastcall *executeEvent)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, const std::string *, Actor *);
  void (__fastcall *executeEvent)(BlockLegacy *this, const std::string *, RenderParams *);
  bool (__fastcall *executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  bool (__fastcall *executeTriggerChain)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, RenderParams *);
  const MobSpawnerData *(__fastcall *getMobToSpawn)(BlockLegacy *this, const SpawnConditions *, BlockSource *);
  bool (__fastcall *shouldStopFalling)(BlockLegacy *this, Actor *);
  bool (__fastcall *pushesUpFallingBlocks)(BlockLegacy *this);
  float (__fastcall *calcGroundFriction)(BlockLegacy *this, Mob *, const BlockPos *);
  bool (__fastcall *canHaveExtraData)(BlockLegacy *this);
  bool (__fastcall *hasComparatorSignal)(BlockLegacy *this);
  int (__fastcall *getComparatorSignal)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *, unsigned __int8);
  bool (__fastcall *onDig)(BlockLegacy *this, const Block *, Actor *, ItemStack *, const BlockPos *);
  bool (__fastcall *canSlide)(BlockLegacy *this, BlockSource *, const BlockPos *);
  bool (__fastcall *canSpawnAt)(BlockLegacy *this, const BlockSource *, const BlockPos *);
  void (__fastcall *notifySpawnedAt)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getIconYOffset)(BlockLegacy *this);
  std::string *(__fastcall *buildDescriptionId)(BlockLegacy *this, std::string *result, const Block *);
  bool (__fastcall *isAuxValueRelevantForPicking)(BlockLegacy *this);
  int (__fastcall *getColor)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  int (__fastcall *getColor)(BlockLegacy *this, const Block *);
  int (__fastcall *getColorAtPos)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getColorForParticle)(BlockLegacy *this, BlockSource *, const BlockPos *, const Block *);
  bool (__fastcall *isSeasonTinted)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  void (__fastcall *onGraphicsModeChanged)(BlockLegacy *this, const BlockGraphicsModeChangeContext *);
  float (__fastcall *getShadeBrightness)(BlockLegacy *this, const Block *);
  const AABB *(__fastcall *getVisualShapeInWorld)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *, AABB *, bool);
  const AABB *(__fastcall *getVisualShape)(BlockLegacy *this, const Block *, AABB *, bool);
  const AABB *(__fastcall *getUIShape)(BlockLegacy *this, const Block *, AABB *);
  int (__fastcall *telemetryVariant)(BlockLegacy *this, BlockSource *, const BlockPos *);
  int (__fastcall *getVariant)(BlockLegacy *this, const Block *);
  bool (__fastcall *canSpawnOn)(BlockLegacy *this);
  const Block *(__fastcall *getRenderBlock)(BlockLegacy *this);
  unsigned __int8 (__fastcall *getMappedFace)(BlockLegacy *this, unsigned __int8, const Block *);
  bool (__fastcall *renderTwoFaced)(BlockLegacy *this);
  Flip (__fastcall *getFaceFlip)(BlockLegacy *this, unsigned __int8, const Block *);
  void (__fastcall *animateTick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  BlockLegacy *(__fastcall *init)(BlockLegacy *this);
  BlockLegacy *(__fastcall *setLightBlock)(BlockLegacy *this, Brightness);
  BlockLegacy *(__fastcall *setLightEmission)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setExplodeable)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFlammable)(BlockLegacy *this, FlameOdds, BurnOdds);
  BlockLegacy *(__fastcall *setDestroyTime)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *setFriction)(BlockLegacy *this, float);
  BlockLegacy *(__fastcall *addProperty)(BlockLegacy *this, BlockProperty);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *, unsigned __int64);
  BlockLegacy *(__fastcall *addState)(BlockLegacy *this, const ItemState *);
  BlockLegacy *(__fastcall *setAllowsRunes)(BlockLegacy *this, bool);
  BlockLegacy *(__fastcall *setMapColor)(BlockLegacy *this, const mce::Color *);
  bool (__fastcall *canBeSilkTouched)(BlockLegacy *this);
  ItemInstance *(__fastcall *getSilkTouchItemInstance)(BlockLegacy *this, ItemInstance *result, const Block *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const Vec3 *, const Vec3 *);
  void (__fastcall *setVisualShape)(BlockLegacy *this, const AABB *);
  const Block *(__fastcall *tryLegacyUpgrade)(BlockLegacy *this, unsigned __int16);
  bool (__fastcall *dealsContactDamage)(BlockLegacy *this, const Actor *, const Block *, bool);
  void (__fastcall *onRemove)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onExploded)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *);
  void (__fastcall *onStandOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOn)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onStepOff)(BlockLegacy *this, Actor *, const BlockPos *);
  void (__fastcall *onPlayerPlacing)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, unsigned __int8);
  void (__fastcall *onPlace)(BlockLegacy *this, BlockSource *, const BlockPos *);
  void (__fastcall *onFallOn)(BlockLegacy *this, BlockSource *, const BlockPos *, Actor *, float);
  void (__fastcall *playerDestroy)(BlockLegacy *this, Player *, const BlockPos *, const Block *);
  void (__fastcall *tick)(BlockLegacy *this, BlockSource *, const BlockPos *, Random *);
  bool (__fastcall *shouldRandomTick)(BlockLegacy *this);
  bool (__fastcall *isInteractiveBlock)(BlockLegacy *this);
  HitResult *(__fastcall *clip)(BlockLegacy *this, HitResult *result, BlockSource *, const BlockPos *, const Vec3 *, const Vec3 *, bool);
  bool (__fastcall *use)(BlockLegacy *this, Player *, const BlockPos *, unsigned __int8);
  bool (__fastcall *canSurvive)(BlockLegacy *this, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this, const Block *, BlockSource *, const BlockPos *);
  BlockRenderLayer (__fastcall *getRenderLayer)(BlockLegacy *this);
  int (__fastcall *getExtraRenderLayers)(BlockLegacy *this);
  float (__fastcall *getExplosionResistance)(BlockLegacy *this, Actor *);
  Brightness *(__fastcall *getLightEmission)(BlockLegacy *this, Brightness *result, const Block *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result, BlockSource *, const BlockPos *);
  mce::Color *(__fastcall *getMapColor)(BlockLegacy *this, mce::Color *result);
  bool (__fastcall *isCropBlock)(BlockLegacy *this);
  void (__fastcall *_executeEvent)(BlockLegacy *this, const std::string *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  bool (__fastcall *_executeTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
  void (__fastcall *_forceExecuteTrigger)(BlockLegacy *this, const DefinitionTrigger *, std::vector<std::pair<std::string const ,std::string const >> *, RenderParams *);
};

# LiquidBlockDynamic::_isWaterBlocking::__l2::<lambda_8753e3e2c964419cd3ca54ef4aa910e0>

struct __cppobj LiquidBlockDynamic::_isWaterBlocking::__l2::<lambda_8753e3e2c964419cd3ca54ef4aa910e0>
{
  BlockSource *region;
};

# LiquidBlockDynamic::_tick::__l14::<lambda_9d3abc43e60a372a4c1449731c4eccf4>

struct __cppobj LiquidBlockDynamic::_tick::__l14::<lambda_9d3abc43e60a372a4c1449731c4eccf4>
{
  BlockSource *region;
};

# LiquidBlock::_getFlow::__l2::<lambda_fa17df8128e3f8a192db888154b3d3b5>

struct __cppobj LiquidBlock::_getFlow::__l2::<lambda_fa17df8128e3f8a192db888154b3d3b5>
{
  BlockSource *region;
};

# LevelChunk::dispatchDiscarded::__l8::<lambda_b05c8633756ede86e0085075296ffdf4>

struct __cppobj LevelChunk::dispatchDiscarded::__l8::<lambda_b05c8633756ede86e0085075296ffdf4>
{
  LevelChunk *const __this;
};

# LevelChunk::dispatchDiscarded::__l6::<lambda_7e550d308087b323c40961bd8a95b31e>

struct __cppobj LevelChunk::dispatchDiscarded::__l6::<lambda_7e550d308087b323c40961bd8a95b31e>
{
  LevelChunk *const __this;
};

# LevelChunk::_deserializeEntity::__l62::<lambda_e730e59afd708588e54d5fda33208af3>

struct __cppobj LevelChunk::_deserializeEntity::__l62::<lambda_e730e59afd708588e54d5fda33208af3>
{
  Actor *e;
};

# LevelChunk::tick::__l68::<lambda_c9489825addfe16a9a8db98b6ee5df66>

struct __cppobj LevelChunk::tick::__l68::<lambda_c9489825addfe16a9a8db98b6ee5df66>
{
  BlockSource *tickRegion;
  LevelChunk *const __this;
};

# LevelChunk::placeCallbacks::__l16::<lambda_b203c4622786623f9033bcea377d326d>

struct __cppobj LevelChunk::placeCallbacks::__l16::<lambda_b203c4622786623f9033bcea377d326d>
{
  const Block *current;
  const BlockPos *block;
  BlockSource **currentSource;
};

# Level::onChunkLoaded::__l2::<lambda_0ef2822173d5b8a5ef203e7af699e202>

struct __cppobj Level::onChunkLoaded::__l2::<lambda_0ef2822173d5b8a5ef203e7af699e202>
{
  Level *const __this;
  LevelChunk *lc;
};

# Level::_createMapSavedData::__l16::<lambda_f1555f1e58cec47c9031888d46e7efb5>

struct __cppobj Level::_createMapSavedData::__l16::<lambda_f1555f1e58cec47c9031888d46e7efb5>
{
  MapItemSavedData *map;
};

# Level::updateWeather::__l33::<lambda_b1af1ce5902a4c9f7f55fd7f2a949733>

struct __cppobj Level::updateWeather::__l33::<lambda_b1af1ce5902a4c9f7f55fd7f2a949733>
{
  float rainLevel;
  float lightningLevel;
};

# Level::onChunkLoaded::__l2::<lambda_f9b8f47e938e6803a09813fea5f157f8>

struct __cppobj Level::onChunkLoaded::__l2::<lambda_f9b8f47e938e6803a09813fea5f157f8>
{
  LevelChunk *lc;
  int *minDist;
};

# Level::onChunkLoaded::__l30::<lambda_81ad5d212105c32820291771f7d3c0a6>

struct __cppobj Level::onChunkLoaded::__l30::<lambda_81ad5d212105c32820291771f7d3c0a6>
{
  LevelChunk *lc;
};

# Level::onChunkLoaded::__l28::<lambda_e9cf92e95dd2f1e36bc11aef5b889cc5>

struct __cppobj Level::onChunkLoaded::__l28::<lambda_e9cf92e95dd2f1e36bc11aef5b889cc5>
{
  LevelChunk *lc;
};

# Level::getPrimaryLocalPlayer::__l2::<lambda_3b1480696f6bd10785516eaa84ce8176>

struct __cppobj Level::getPrimaryLocalPlayer::__l2::<lambda_3b1480696f6bd10785516eaa84ce8176>
{
};

# Level::getPlayerFromServerId::__l2::<lambda_def4d35878b1753257b8db4c5542c0da>

struct __cppobj Level::getPlayerFromServerId::__l2::<lambda_def4d35878b1753257b8db4c5542c0da>
{
  const std::string *serverId;
};

# Level::getPlayer::__l2::<lambda_c5a3c3ec8cdce10ad87dcb85a394f32b>

struct __cppobj Level::getPlayer::__l2::<lambda_c5a3c3ec8cdce10ad87dcb85a394f32b>
{
  const mce::UUID *uuid;
};

# Level::getPlayer::__l2::<lambda_6f35cfbf2df31005590578316aed03cb>

struct __cppobj Level::getPlayer::__l2::<lambda_6f35cfbf2df31005590578316aed03cb>
{
  const std::string *name;
};

# Level::getTickingArea::__l2::<lambda_e28cd9f46e03ff8fb9b0bd2167c62794>

struct __cppobj Level::getTickingArea::__l2::<lambda_e28cd9f46e03ff8fb9b0bd2167c62794>
{
  ITickingArea **tickingArea;
  const mce::UUID *UUID;
};

# Level::saveBiomeData::__l5::<lambda_43b86c3c7ac68a83a87f163c8910cb5a>

struct __cppobj Level::saveBiomeData::__l5::<lambda_43b86c3c7ac68a83a87f163c8910cb5a>
{
  std::unique_ptr<ListTag> *biomeTags;
};

# Level::dispatchChangeLevelUpCostServerEvent::__l2::<lambda_62555859f850797a6053b56708848a37>

struct __cppobj Level::dispatchChangeLevelUpCostServerEvent::__l2::<lambda_62555859f850797a6053b56708848a37>
{
  int *level;
};

# Level::dispatchChangeSwimStateServerEvent::__l2::<lambda_39d87b78ce6862c59053b7595cae19d8>

struct __cppobj Level::dispatchChangeSwimStateServerEvent::__l2::<lambda_39d87b78ce6862c59053b7595cae19d8>
{
  const std::string *entityId;
  bool *fromState;
  bool *toState;
};

# Level::dispatchMobGriefingBlockServerEvent::__l2::<lambda_844e7640a58d2da0b7c5f9fd29603b9e>

struct __cppobj Level::dispatchMobGriefingBlockServerEvent::__l2::<lambda_844e7640a58d2da0b7c5f9fd29603b9e>
{
  Actor *entity;
  const Block **block;
  const BlockPos *pos;
};

# Level::dispatchWillTeleportToServerEvent::__l2::<lambda_4568a9392b972976b788863dd8523694>

struct __cppobj Level::dispatchWillTeleportToServerEvent::__l2::<lambda_4568a9392b972976b788863dd8523694>
{
  Actor *entity;
  AutomaticID<Dimension,int> *fromId;
  AutomaticID<Dimension,int> *toId;
  Vec3 *targetPos;
  std::string *cause;
};

# Level::setStoryline::__l5::<lambda_4432e1f403cdb6965973ea412fdf9022>

struct __cppobj Level::setStoryline::__l5::<lambda_4432e1f403cdb6965973ea412fdf9022>
{
  Level *const __this;
};

# Level::loadStoryline::__l11::<lambda_1950a0e0324f260c86c8edf84f836c57>

struct __cppobj Level::loadStoryline::__l11::<lambda_1950a0e0324f260c86c8edf84f836c57>
{
  Level *const __this;
};

# Level::_resetBiomeData::__l2::<lambda_570153edbc3615433a6a124221b146dd>

struct __cppobj Level::_resetBiomeData::__l2::<lambda_570153edbc3615433a6a124221b146dd>
{
};

# Level::savePlayers::__l5::<lambda_cf6c0ef5dbb1e77d4a21f49af7e971ea>

struct __cppobj Level::savePlayers::__l5::<lambda_cf6c0ef5dbb1e77d4a21f49af7e971ea>
{
  Level *const __this;
};

# Level::setGlobalTime::__l8::<lambda_d9db0f1241dee4525bf1c5f1cfca1dac>

struct __cppobj Level::setGlobalTime::__l8::<lambda_d9db0f1241dee4525bf1c5f1cfca1dac>
{
  int *resTime;
};

# Level::extinguishFire::__l13::<lambda_e97b152e2004850035457058b20550f5>

struct __cppobj Level::extinguishFire::__l13::<lambda_e97b152e2004850035457058b20550f5>
{
  const BlockPos *pos;
  const Player *player;
};

# Level::extinguishFire::__l8::<lambda_f2f69efcb4faa21d2368e460c9dcb3bf>

struct __cppobj Level::extinguishFire::__l8::<lambda_f2f69efcb4faa21d2368e460c9dcb3bf>
{
  const BlockPos *pos;
  const Player *player;
};

# Level::getRuntimeEntity::__l2::<lambda_ba632cde4b296184a4de2d76d1e846c1>

struct __cppobj Level::getRuntimeEntity::__l2::<lambda_ba632cde4b296184a4de2d76d1e846c1>
{
  bool *getRemoved;
  ActorRuntimeID *actorId;
};

# Level::addPlayer::__l19::<lambda_770ec3be5c23f2e53417eeef4dc5cbe1>

struct __cppobj Level::addPlayer::__l19::<lambda_770ec3be5c23f2e53417eeef4dc5cbe1>
{
  Player *playerReference;
};

# Level::addPlayer::__l28::<lambda_04289e40d066215c65f00b8d3afcab2e>

struct __cppobj Level::addPlayer::__l28::<lambda_04289e40d066215c65f00b8d3afcab2e>
{
  PlayerListEntry *newEntry;
};

# Level::addEntity::__l60::<lambda_e539a44e2bb2bfbd94c397630d6c7428>

struct __cppobj Level::addEntity::__l60::<lambda_e539a44e2bb2bfbd94c397630d6c7428>
{
  Actor **entity;
};

# Level::broadcastLevelEvent::__l2::<lambda_e6644e07e16ef7373f5a4a27f90c05a7>

struct __cppobj Level::broadcastLevelEvent::__l2::<lambda_e6644e07e16ef7373f5a4a27f90c05a7>
{
  LevelEvent *type;
  const Vec3 *pos;
  int *data;
};

# Level::_saveSomeChunks::__l16::<lambda_78e106e718aed8526d253940c459e0e2>

struct __cppobj Level::_saveSomeChunks::__l16::<lambda_78e106e718aed8526d253940c459e0e2>
{
  Level *const __this;
};

# Level::tick::__l44::<lambda_d801cc119a549d5b09c82e081bdf6a86>

struct __cppobj Level::tick::__l44::<lambda_d801cc119a549d5b09c82e081bdf6a86>
{
  Level *const __this;
};

# Level::tick::__l21::<lambda_261e06e6e970ed26883d192fd11ae3ff>

struct __cppobj Level::tick::__l21::<lambda_261e06e6e970ed26883d192fd11ae3ff>
{
  Level *const __this;
};

# Level::tick::__l21::<lambda_630322dc0e8499c0c0c1906e22c549ba>

struct __cppobj Level::tick::__l21::<lambda_630322dc0e8499c0c0c1906e22c549ba>
{
  int activePlayerCount;
};

# Level::tick::__l21::<lambda_288825918c1f46ce697b504deee54028>

struct __cppobj Level::tick::__l21::<lambda_288825918c1f46ce697b504deee54028>
{
};

# Level::_cleanupDisconnectedPlayers::__l20::<lambda_a62c9014151c1f7ab5ebe72b970e9a5f>

struct __cppobj Level::_cleanupDisconnectedPlayers::__l20::<lambda_a62c9014151c1f7ab5ebe72b970e9a5f>
{
  std::_Vector_iterator<std::_Vector_val<std::_Simple_types<std::unique_ptr<Player> > > > *player;
};

# Level::_playerChangeDimension::__l117::<lambda_f689de84aedc818b4cd84ee5055b81bc>

struct __cppobj Level::_playerChangeDimension::__l117::<lambda_f689de84aedc818b4cd84ee5055b81bc>
{
  Player **player;
  ChangeDimensionRequest *changeRequest;
};

# Level::_playerChangeDimension::__l99::<lambda_32a87d934327375cf66ecb975391fbb5>

struct __cppobj Level::_playerChangeDimension::__l99::<lambda_32a87d934327375cf66ecb975391fbb5>
{
  Player **player;
  ChangeDimensionRequest *changeRequest;
};

# Level::_playerChangeDimension::__l97::<lambda_0eb0902982883f7d2b7347cff8f3d358>

struct __cppobj Level::_playerChangeDimension::__l97::<lambda_0eb0902982883f7d2b7347cff8f3d358>
{
  Player **player;
  ChangeDimensionRequest *changeRequest;
};

# Level::_playerChangeDimension::__l54::<lambda_2d70bcf37e0254832f31f9d271b0d5dd>

struct __cppobj Level::_playerChangeDimension::__l54::<lambda_2d70bcf37e0254832f31f9d271b0d5dd>
{
  Player **player;
  ChangeDimensionRequest *changeRequest;
};

# Level::dispatchEntityChangeDimensionServerEvent::__l2::<lambda_4cd291ebd4a0f9233dbb383f9850785b>

struct __cppobj Level::dispatchEntityChangeDimensionServerEvent::__l2::<lambda_4cd291ebd4a0f9233dbb383f9850785b>
{
  Actor *entity;
  AutomaticID<Dimension,int> *fromId;
  AutomaticID<Dimension,int> *toId;
  Vec3 *fromPos;
  Vec3 *targetPos;
};

# Level::startLeaveGame::__l2::<lambda_58ed010a235a406de9e0e29d52acbaf8>

struct __cppobj Level::startLeaveGame::__l2::<lambda_58ed010a235a406de9e0e29d52acbaf8>
{
};

# Level::initialize::__l43::<lambda_21aaf2eade9b271517ea5a1b147f37a7>

struct __cppobj Level::initialize::__l43::<lambda_21aaf2eade9b271517ea5a1b147f37a7>
{
  Level *const __this;
};

# LargeCaveFeature

struct __cppobj __declspec(align(8)) LargeCaveFeature
{
  LargeCaveFeature_vtbl *__vftable /*VFT*/;
  const __int16 mSeaLevel;
};

# LargeCaveFeature_vtbl

struct /*VFT*/ LargeCaveFeature_vtbl
{
  void (__fastcall *~LargeCaveFeature)(LargeCaveFeature *this);
  bool (__fastcall *carve)(LargeCaveFeature *this, BlockVolume *, BiomeSource *, Random *, const ChunkPos *, const Vec3 *, const Vec3 *, int, int, int, int, int, int, float, float);
};

# LayerFilters::FilterBase<3,3,LayerValues::PreBiome,LayerValues::PreBiome>

struct __cppobj LayerFilters::FilterBase<3,3,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerFilters::AddEdgeCoolWarm

struct __cppobj LayerFilters::AddEdgeCoolWarm : LayerFilters::FilterBase<3,3,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerDetails::BufferAccessor<LayerValues::PreBiome>

const struct __cppobj LayerDetails::BufferAccessor<LayerValues::PreBiome>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::NeighborhoodReader<LayerValues::PreBiome,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<LayerValues::PreBiome,1,1>
{
  const LayerDetails::BufferAccessor<LayerValues::PreBiome> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::BufferAccessor<LayerValues::PreBiome>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<LayerValues::PreBiome>::TypedBits
{
  char *mLocation;
};

# LayerFilters::AddEdgeHeatIce

struct __cppobj LayerFilters::AddEdgeHeatIce : LayerFilters::FilterBase<3,3,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerFilters::FilterBase<1,1,LayerValues::PreBiome,LayerValues::PreBiome>

struct __cppobj LayerFilters::FilterBase<1,1,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerFilters::AddEdgeSpecial

struct __cppobj LayerFilters::AddEdgeSpecial : LayerFilters::FilterBase<1,1,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerDetails::NeighborhoodReader<LayerValues::PreBiome,0,0>

struct __cppobj LayerDetails::NeighborhoodReader<LayerValues::PreBiome,0,0>
{
  const LayerDetails::BufferAccessor<LayerValues::PreBiome> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerFilters::FilterBase<3,3,enum LayerValues::Terrain,enum LayerValues::Terrain>

struct __cppobj LayerFilters::FilterBase<3,3,enum LayerValues::Terrain,enum LayerValues::Terrain>
{
};

# LayerFilters::AddIsland

struct __cppobj LayerFilters::AddIsland : LayerFilters::FilterBase<3,3,enum LayerValues::Terrain,enum LayerValues::Terrain>
{
};

# LayerDetails::BufferAccessor<enum LayerValues::Terrain>

const struct __cppobj LayerDetails::BufferAccessor<enum LayerValues::Terrain>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::NeighborhoodReader<enum LayerValues::Terrain,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<enum LayerValues::Terrain,1,1>
{
  const LayerDetails::BufferAccessor<enum LayerValues::Terrain> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::BufferAccessor<enum LayerValues::Terrain>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<enum LayerValues::Terrain>::TypedBits
{
  char *mLocation;
};

# LayerFilters::AddIslandWithTemperature

struct __cppobj LayerFilters::AddIslandWithTemperature : LayerFilters::FilterBase<3,3,LayerValues::PreBiome,LayerValues::PreBiome>
{
};

# LayerFilters::FilterBase<3,3,Biome *,Biome *>

struct __cppobj LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
};

# LayerFilters::AddBiomeIsland

struct __cppobj LayerFilters::AddBiomeIsland : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  Biome *mDefaultIsland;
  Biome *mSpecialIsland;
  std::vector<Biome *> mShallowOceanBiomes;
};

# LayerDetails::BufferAccessor<Biome *>

const struct __cppobj LayerDetails::BufferAccessor<Biome *>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::NeighborhoodReader<Biome *,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<Biome *,1,1>
{
  const LayerDetails::BufferAccessor<Biome *> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::BufferAccessor<Biome *>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<Biome *>::TypedBits
{
  char *mLocation;
};

# LayerFilters::AddMushroomIsland

struct __cppobj LayerFilters::AddMushroomIsland : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  Biome *mMushroomBiome;
  const BiomeRegistry *mBiomeRegistry;
};

# LayerFilters::FilterBase<3,3,enum BiomeTemperatureCategory,enum BiomeTemperatureCategory>

struct __cppobj LayerFilters::FilterBase<3,3,enum BiomeTemperatureCategory,enum BiomeTemperatureCategory>
{
};

# LayerFilters::AddOceanEdge

struct __cppobj LayerFilters::AddOceanEdge : LayerFilters::FilterBase<3,3,enum BiomeTemperatureCategory,enum BiomeTemperatureCategory>
{
};

# LayerDetails::BufferAccessor<enum BiomeTemperatureCategory>

const struct __cppobj LayerDetails::BufferAccessor<enum BiomeTemperatureCategory>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::NeighborhoodReader<enum BiomeTemperatureCategory,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<enum BiomeTemperatureCategory,1,1>
{
  const LayerDetails::BufferAccessor<enum BiomeTemperatureCategory> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::BufferAccessor<enum BiomeTemperatureCategory>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<enum BiomeTemperatureCategory>::TypedBits
{
  char *mLocation;
};

# LayerDetails::TransferData<enum BiomeTemperatureCategory>

struct __cppobj LayerDetails::TransferData<enum BiomeTemperatureCategory> : LayerDetails::Storage
{
};

# Layer<enum BiomeTemperatureCategory>

struct __cppobj Layer<enum BiomeTemperatureCategory> : LayerDetails::LayerBase
{
};

# Layer<enum BiomeTemperatureCategory>_vtbl

struct /*VFT*/ Layer<enum BiomeTemperatureCategory>_vtbl
{
  void (__fastcall *~LayerBase)(LayerDetails::LayerBase *this);
  void (__fastcall *init)(LayerDetails::LayerBase *this, __int64);
  LayerDetails::TransferData<enum BiomeTemperatureCategory> *(__fastcall *_allocateAndFill)(Layer<enum BiomeTemperatureCategory> *this, LayerDetails::TransferData<enum BiomeTemperatureCategory> *result, unsigned __int64, int, int, unsigned int, unsigned int);
};

# LayerDetails::WorkingData<enum BiomeTemperatureCategory,char>

struct __cppobj LayerDetails::WorkingData<enum BiomeTemperatureCategory,char> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<char> mParentArea;
  LayerDetails::BufferAccessor<enum BiomeTemperatureCategory> mResult;
};

# LayerFilters::FilterBase<1,1,LayerValues::PreBiome,enum LayerValues::Terrain>

struct __cppobj LayerFilters::FilterBase<1,1,LayerValues::PreBiome,enum LayerValues::Terrain>
{
};

# LayerFilters::AddSnow

struct __cppobj LayerFilters::AddSnow : LayerFilters::FilterBase<1,1,LayerValues::PreBiome,enum LayerValues::Terrain>
{
};

# LayerDetails::NeighborhoodReader<enum LayerValues::Terrain,0,0>

struct __cppobj LayerDetails::NeighborhoodReader<enum LayerValues::Terrain,0,0>
{
  const LayerDetails::BufferAccessor<enum LayerValues::Terrain> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerFilters::FilterBase<1,1,Biome *,LayerValues::PreBiome>

struct __cppobj LayerFilters::FilterBase<1,1,Biome *,LayerValues::PreBiome>
{
};

# LayerFilters::BiomeInit

struct __cppobj LayerFilters::BiomeInit : LayerFilters::FilterBase<1,1,Biome *,LayerValues::PreBiome>
{
  Biome *mFallbackBiome;
  Biome *mDefaultOcean;
  std::vector<std::pair<Biome *,unsigned int>> mRegularBiomes[5];
  std::vector<std::pair<Biome *,unsigned int>> mSpecialBiomes[5];
};

# LayerFilters::BiomeInit::{ctor}::__l2::<lambda_9992a4e10bae7d8205d059b5a3db59b1>

struct __cppobj LayerFilters::BiomeInit::{ctor}::__l2::<lambda_9992a4e10bae7d8205d059b5a3db59b1>
{
  LayerFilters::BiomeInit *const __this;
  GeneratorType generator;
  const WellKnownBiomeTags *wellKnownBiomeTags;
};

# LayerDetails::TransferData<enum LayerValues::Terrain>

struct __cppobj LayerDetails::TransferData<enum LayerValues::Terrain> : LayerDetails::Storage
{
};

# Layer<enum LayerValues::Terrain>

struct __cppobj Layer<enum LayerValues::Terrain> : LayerDetails::LayerBase
{
};

# Layer<enum LayerValues::Terrain>_vtbl

struct /*VFT*/ Layer<enum LayerValues::Terrain>_vtbl
{
  void (__fastcall *~LayerBase)(LayerDetails::LayerBase *this);
  void (__fastcall *init)(LayerDetails::LayerBase *this, __int64);
  LayerDetails::TransferData<enum LayerValues::Terrain> *(__fastcall *_allocateAndFill)(Layer<enum LayerValues::Terrain> *this, LayerDetails::TransferData<enum LayerValues::Terrain> *result, unsigned __int64, int, int, unsigned int, unsigned int);
};

# LayerDetails::WorkingData<enum LayerValues::Terrain,char>

struct __cppobj LayerDetails::WorkingData<enum LayerValues::Terrain,char> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<char> mParentArea;
  LayerDetails::BufferAccessor<enum LayerValues::Terrain> mResult;
};

# LayerDetails::WorkingData<Biome *,Biome *>

struct __cppobj LayerDetails::WorkingData<Biome *,Biome *> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<Biome *> mParentArea;
  LayerDetails::BufferAccessor<Biome *> mResult;
};

# LayerFilters::PromoteCenter

struct __cppobj LayerFilters::PromoteCenter : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  Biome *mFrom;
  Biome *mTo;
};

# LayerFilters::FilterBase<1,1,Biome *,Biome *>

struct __cppobj LayerFilters::FilterBase<1,1,Biome *,Biome *>
{
};

# LayerFilters::RareBiomeSpot

struct __cppobj LayerFilters::RareBiomeSpot : LayerFilters::FilterBase<1,1,Biome *,Biome *>
{
  unsigned int mChance;
  Biome *mFromBiome;
  Biome *mToBiome;
};

# LayerDetails::NeighborhoodReader<Biome *,0,0>

struct __cppobj LayerDetails::NeighborhoodReader<Biome *,0,0>
{
  const LayerDetails::BufferAccessor<Biome *> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::TransferData<int>

struct __cppobj LayerDetails::TransferData<int> : LayerDetails::Storage
{
};

# Layer<int>

struct __cppobj Layer<int> : LayerDetails::LayerBase
{
};

# Layer<int>_vtbl

struct /*VFT*/ Layer<int>_vtbl
{
  void (__fastcall *~LayerBase)(LayerDetails::LayerBase *this);
  void (__fastcall *init)(LayerDetails::LayerBase *this, __int64);
  LayerDetails::TransferData<int> *(__fastcall *_allocateAndFill)(Layer<int> *this, LayerDetails::TransferData<int> *result, unsigned __int64, int, int, unsigned int, unsigned int);
};

# LayerResult<int>

struct __cppobj LayerResult<int>
{
  std::unique_ptr<char [0]> mResult;
};

# LayerFilters::RemoveTooMuchOcean

struct __cppobj LayerFilters::RemoveTooMuchOcean : LayerFilters::FilterBase<3,3,enum LayerValues::Terrain,enum LayerValues::Terrain>
{
};

# LayerFilters::FilterBase<1,1,int,Biome *>

struct __cppobj LayerFilters::FilterBase<1,1,int,Biome *>
{
};

# LayerFilters::RiverInit

struct __cppobj LayerFilters::RiverInit : LayerFilters::FilterBase<1,1,int,Biome *>
{
  std::vector<Biome *> mNoRiverBiomes;
};

# LayerFilters::FilterBase<3,3,bool,int>

struct __cppobj LayerFilters::FilterBase<3,3,bool,int>
{
};

# LayerFilters::River

struct __cppobj LayerFilters::River : LayerFilters::FilterBase<3,3,bool,int>
{
};

# LayerDetails::BufferAccessor<int>

const struct __cppobj LayerDetails::BufferAccessor<int>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::NeighborhoodReader<int,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<int,1,1>
{
  const LayerDetails::BufferAccessor<int> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerDetails::BufferAccessor<int>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<int>::TypedBits
{
  char *mLocation;
};

# LayerFilters::Shore

struct __cppobj LayerFilters::Shore : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  Biome *mDefaultShore;
  std::vector<Biome *> mOceanBiomes;
};

# LayerFilters::Shore::{ctor}::__l2::<lambda_015742ae0ada2836f6edae37732d006b>

struct __cppobj LayerFilters::Shore::{ctor}::__l2::<lambda_015742ae0ada2836f6edae37732d006b>
{
  LayerFilters::Shore *const __this;
  const WellKnownBiomeTags *wellKnownBiomeTags;
  const TagRegistry<IDType<BiomeTagIDType>,IDType<BiomeTagSetIDType> > *tagRegistry;
};

# leveldb::WriteBatch::Handler_vtbl

struct /*VFT*/ leveldb::WriteBatch::Handler_vtbl
{
  void (__fastcall *~Handler)(leveldb::WriteBatch::Handler *this);
  void (__fastcall *Put)(leveldb::WriteBatch::Handler *this, const leveldb::Slice *, const leveldb::Slice *);
  void (__fastcall *Delete)(leveldb::WriteBatch::Handler *this, const leveldb::Slice *);
};

# leveldb::SnappyCompressor

struct __cppobj leveldb::SnappyCompressor : leveldb::Compressor
{
};

# leveldb::SnappyCompressor_vtbl

struct /*VFT*/ leveldb::SnappyCompressor_vtbl
{
  void (__fastcall *~Compressor)(leveldb::Compressor *this);
  void (__fastcall *compressImpl)(leveldb::Compressor *this, const char *, unsigned __int64, std::string *);
  bool (__fastcall *decompress)(leveldb::Compressor *this, const char *, unsigned __int64, std::string *);
};

# leveldb::WritableFileEncrypted

struct __cppobj leveldb::WritableFileEncrypted : leveldb::WritableFile
{
  leveldb::WritableFile *_writableFile;
  std::shared_ptr<Crypto::Symmetric::Symmetric> _encryption;
  std::unique_ptr<Crypto::encryptedFileHeader> _header;
};

# leveldb::WritableFileEncrypted_vtbl

struct /*VFT*/ leveldb::WritableFileEncrypted_vtbl
{
  void (__fastcall *~WritableFile)(leveldb::WritableFile *this);
  leveldb::Status *(__fastcall *Append)(leveldb::WritableFile *this, leveldb::Status *result, const leveldb::Slice *);
  leveldb::Status *(__fastcall *Close)(leveldb::WritableFile *this, leveldb::Status *result);
  leveldb::Status *(__fastcall *Flush)(leveldb::WritableFile *this, leveldb::Status *result);
  leveldb::Status *(__fastcall *Sync)(leveldb::WritableFile *this, leveldb::Status *result);
};

# leveldb::RandomAccessFileEncrypted

struct __cppobj leveldb::RandomAccessFileEncrypted : leveldb::RandomAccessFile
{
  std::string _fname;
  std::string _plainText;
};

# leveldb::RandomAccessFileEncrypted_vtbl

struct /*VFT*/ leveldb::RandomAccessFileEncrypted_vtbl
{
  void (__fastcall *~RandomAccessFile)(leveldb::RandomAccessFile *this);
  leveldb::Status *(__fastcall *Read)(leveldb::RandomAccessFile *this, leveldb::Status *result, unsigned __int64, unsigned __int64, leveldb::Slice *, char *);
};

# leveldb::SequentialFileEncrypted

struct __cppobj leveldb::SequentialFileEncrypted : leveldb::SequentialFile
{
  leveldb::SequentialFile *_file;
  std::shared_ptr<Crypto::Symmetric::Symmetric> _encryption;
};

# leveldb::SequentialFileEncrypted_vtbl

struct /*VFT*/ leveldb::SequentialFileEncrypted_vtbl
{
  void (__fastcall *~SequentialFile)(leveldb::SequentialFile *this);
  leveldb::Status *(__fastcall *Read)(leveldb::SequentialFile *this, leveldb::Status *result, unsigned __int64, leveldb::Slice *, char *);
  leveldb::Status *(__fastcall *Skip)(leveldb::SequentialFile *this, leveldb::Status *result, unsigned __int64);
};

# LevelDataKeys::<lambda_3706ef742d48c1423f3f015aece06911>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_3706ef742d48c1423f3f015aece06911>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_3706ef742d48c1423f3f015aece06911>

struct __cppobj LevelDataKeys::<lambda_3706ef742d48c1423f3f015aece06911>
{
};

# LevelDataKeys::<lambda_a5ecd424459dfed82e15d43379f33eb2>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_a5ecd424459dfed82e15d43379f33eb2>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_a5ecd424459dfed82e15d43379f33eb2>

struct __cppobj LevelDataKeys::<lambda_a5ecd424459dfed82e15d43379f33eb2>
{
};

# LevelDataKeys::<lambda_1e286bad036ff412532c4fd09b6e3461>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_1e286bad036ff412532c4fd09b6e3461>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_1e286bad036ff412532c4fd09b6e3461>

struct __cppobj LevelDataKeys::<lambda_1e286bad036ff412532c4fd09b6e3461>
{
};

# LevelDataKeys::<lambda_f19e53da620c154cf882a07d1daa3aea>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_f19e53da620c154cf882a07d1daa3aea>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_f19e53da620c154cf882a07d1daa3aea>

struct __cppobj LevelDataKeys::<lambda_f19e53da620c154cf882a07d1daa3aea>
{
};

# LevelDataKeys::<lambda_b807af132855a80273355f618781e99d>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_b807af132855a80273355f618781e99d>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_b807af132855a80273355f618781e99d>

struct __cppobj LevelDataKeys::<lambda_b807af132855a80273355f618781e99d>
{
};

# LevelDataKeys::<lambda_987415cb37efd41b96d58c495eb29210>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_987415cb37efd41b96d58c495eb29210>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_987415cb37efd41b96d58c495eb29210>

struct __cppobj LevelDataKeys::<lambda_987415cb37efd41b96d58c495eb29210>
{
};

# LevelDataKeys::<lambda_f71f067103adb4818575247cea288628>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_f71f067103adb4818575247cea288628>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_f71f067103adb4818575247cea288628>

struct __cppobj LevelDataKeys::<lambda_f71f067103adb4818575247cea288628>
{
};

# LevelDataKeys::<lambda_311412fea0a17664b4503a0f8f142b15>::()::__l2::Literal

struct __cppobj LevelDataKeys::<lambda_311412fea0a17664b4503a0f8f142b15>::()::__l2::Literal
{
};

# LevelDataKeys::<lambda_311412fea0a17664b4503a0f8f142b15>

struct __cppobj LevelDataKeys::<lambda_311412fea0a17664b4503a0f8f142b15>
{
};

# LevelStorage::loadAllPlayerIDs::__l2::<lambda_0b21d1fdee641c7fd9f8bb10d08f4742>

struct __cppobj LevelStorage::loadAllPlayerIDs::__l2::<lambda_0b21d1fdee641c7fd9f8bb10d08f4742>
{
  std::vector<std::string> *names;
};

# LevelListCache::_notifyStorageChanged::__l2::<lambda_14e7db5b10a98936dbca6c44e1512104>

struct __cppobj LevelListCache::_notifyStorageChanged::__l2::<lambda_14e7db5b10a98936dbca6c44e1512104>
{
};

# LevelListCache::_notifyLevelDeleted::__l2::<lambda_5e7a884ed5c655ce3816e80cec638d33>

struct __cppobj LevelListCache::_notifyLevelDeleted::__l2::<lambda_5e7a884ed5c655ce3816e80cec638d33>
{
  const std::string levelId;
};

# LevelListCache::_notifyLevelUpdated::__l2::<lambda_5e760967f12ca5aac62297d113e4cfb6>

struct __cppobj LevelListCache::_notifyLevelUpdated::__l2::<lambda_5e760967f12ca5aac62297d113e4cfb6>
{
  const std::string levelId;
};

# LevelListCache::_notifyNewLevelFound::__l2::<lambda_4d159bb9c0c898cb2470000c7052e0fd>

struct __cppobj LevelListCache::_notifyNewLevelFound::__l2::<lambda_4d159bb9c0c898cb2470000c7052e0fd>
{
  const std::string levelId;
};

# LevelListCache::onSave::__l2::<lambda_93f72c86fef1a3ed895ce75580cacfcf>

struct __cppobj LevelListCache::onSave::__l2::<lambda_93f72c86fef1a3ed895ce75580cacfcf>
{
  LevelListCache *const __this;
};

# LevelListCache::onSave::__l7::<lambda_62ab792fea28505aa394d236a83328e2>

struct __cppobj LevelListCache::onSave::__l7::<lambda_62ab792fea28505aa394d236a83328e2>
{
  const std::string levelId;
  LevelListCache::onSave::__l2::<lambda_93f72c86fef1a3ed895ce75580cacfcf> updateLevelCallback;
};

# LevelListCache::createLevelStorageObserver::__l2::<lambda_8a245240b6d16f89a69ef11d35471a70>

struct __cppobj LevelListCache::createLevelStorageObserver::__l2::<lambda_8a245240b6d16f89a69ef11d35471a70>
{
  LevelListCache *const __this;
};

# LootItem

struct __cppobj LootItem : LootPoolEntry
{
  const Item *mItem;
  int mAuxValue;
  std::vector<std::unique_ptr<LootItemFunction>> mFunctions;
  std::string mOriginalItemName;
};

# LootItem_vtbl

struct /*VFT*/ LootItem_vtbl
{
  bool (__fastcall *_createItem)(LootPoolEntry *this, std::vector<ItemStack> *, Random *, LootTableContext *);
  void (__fastcall *~LootPoolEntry)(LootPoolEntry *this);
};

# LootItemConditions

struct __cppobj LootItemConditions
{
};

# LootItemFunctions

struct __cppobj LootItemFunctions
{
};

# LootTableReference

struct __cppobj LootTableReference : LootPoolEntry
{
  std::string mDir;
};

# LootTableReference_vtbl

struct /*VFT*/ LootTableReference_vtbl
{
  bool (__fastcall *_createItem)(LootPoolEntry *this, std::vector<ItemStack> *, Random *, LootTableContext *);
  void (__fastcall *~LootPoolEntry)(LootPoolEntry *this);
};

# LootTableEntry

struct __cppobj LootTableEntry : LootPoolEntry
{
  std::unique_ptr<LootTable> mTable;
};

# LootTableEntry_vtbl

struct /*VFT*/ LootTableEntry_vtbl
{
  bool (__fastcall *_createItem)(LootPoolEntry *this, std::vector<ItemStack> *, Random *, LootTableContext *);
  void (__fastcall *~LootPoolEntry)(LootPoolEntry *this);
};

# LootingEnchantFunction

struct __cppobj LootingEnchantFunction : LootItemFunction
{
  RandomValueBounds mValue;
};

# LootingEnchantFunction_vtbl

struct /*VFT*/ LootingEnchantFunction_vtbl
{
  void (__fastcall *~LootItemFunction)(LootItemFunction *this);
  int (__fastcall *apply)(LootItemFunction *this, ItemInstance *, Random *, const Trade *, LootTableContext *);
  void (__fastcall *apply)(LootItemFunction *this, ItemInstance *, Random *, LootTableContext *);
  int (__fastcall *apply)(LootItemFunction *this, ItemStack *, Random *, const Trade *, LootTableContext *);
  void (__fastcall *apply)(LootItemFunction *this, ItemStack *, Random *, LootTableContext *);
};

# LootItemFunction::<lambda_d316b43db0170cdd341f3ab366d58b89>

struct __cppobj LootItemFunction::<lambda_d316b43db0170cdd341f3ab366d58b89>
{
};

# LootItemFunction::<lambda_61643f56ba4db7a6851a7549b0e4f779>

struct __cppobj LootItemFunction::<lambda_61643f56ba4db7a6851a7549b0e4f779>
{
};

# LootItemFunction::<lambda_72d39394e90fd3614e0223c081a0beef>

struct __cppobj LootItemFunction::<lambda_72d39394e90fd3614e0223c081a0beef>
{
};

# LootItemFunction::<lambda_9457dc616f9532f34ee54d6bbd35b6e4>

struct __cppobj LootItemFunction::<lambda_9457dc616f9532f34ee54d6bbd35b6e4>
{
};

# LootItemFunction::<lambda_2a291667887ba97b9b3625c61ad78fda>

struct __cppobj LootItemFunction::<lambda_2a291667887ba97b9b3625c61ad78fda>
{
};

# LootItemFunction::<lambda_618efdc6b14b92bb68e625517ba8a93e>

struct __cppobj LootItemFunction::<lambda_618efdc6b14b92bb68e625517ba8a93e>
{
};

# LootItemFunction::<lambda_7e854feaf0a898604548e00b2a113d29>

struct __cppobj LootItemFunction::<lambda_7e854feaf0a898604548e00b2a113d29>
{
};

# LootItemFunction::<lambda_faf723f06b4464011c41e369388e798a>

struct __cppobj LootItemFunction::<lambda_faf723f06b4464011c41e369388e798a>
{
};

# LootItemFunction::<lambda_2419d00cf468831caae0b6c8747e66d3>

struct __cppobj LootItemFunction::<lambda_2419d00cf468831caae0b6c8747e66d3>
{
};

# LootItemFunction::<lambda_657184245f71b52edd78d6689ffbfa7f>

struct __cppobj LootItemFunction::<lambda_657184245f71b52edd78d6689ffbfa7f>
{
};

# LootItemFunction::<lambda_5d994b31f7f8b623a25098531302f351>

struct __cppobj LootItemFunction::<lambda_5d994b31f7f8b623a25098531302f351>
{
};

# LootItemFunction::<lambda_c7966863ebfc7bad7bf7c849f758effc>

struct __cppobj LootItemFunction::<lambda_c7966863ebfc7bad7bf7c849f758effc>
{
};

# LootItemFunction::<lambda_faa0d62726a97852c913790ca721d3a5>

struct __cppobj LootItemFunction::<lambda_faa0d62726a97852c913790ca721d3a5>
{
};

# LootItemFunction::<lambda_82fdb864ba2449d836507a32d157c272>

struct __cppobj LootItemFunction::<lambda_82fdb864ba2449d836507a32d157c272>
{
};

# LootItemFunction::<lambda_ffde0df301838824548be043faf18524>

struct __cppobj LootItemFunction::<lambda_ffde0df301838824548be043faf18524>
{
};

# LootItemFunction::<lambda_19af873077ad3ff3faeda23460b35a1c>

struct __cppobj LootItemFunction::<lambda_19af873077ad3ff3faeda23460b35a1c>
{
};

# LootItemFunction::<lambda_7431db39ae4db6756c39604d17dffa15>

struct __cppobj LootItemFunction::<lambda_7431db39ae4db6756c39604d17dffa15>
{
};

# LootItemFunction::<lambda_2c5cf65e5f6aacb512a20c32c1957c0e>

struct __cppobj LootItemFunction::<lambda_2c5cf65e5f6aacb512a20c32c1957c0e>
{
};

# LootItemFunction::<lambda_02b63048a554c0f413895ea6b43d8af4>

struct __cppobj LootItemFunction::<lambda_02b63048a554c0f413895ea6b43d8af4>
{
};

# LootItemFunction::<lambda_fa19087d4e9e7b7a2002a55db0e9f9f3>

struct __cppobj LootItemFunction::<lambda_fa19087d4e9e7b7a2002a55db0e9f9f3>
{
};

# LootItemFunction::<lambda_0c29b44337f5070b17c1dd431383cde9>

struct __cppobj LootItemFunction::<lambda_0c29b44337f5070b17c1dd431383cde9>
{
};

# LootItemFunction::<lambda_9907fc2f53421624758cef833c0a91ba>

struct __cppobj LootItemFunction::<lambda_9907fc2f53421624758cef833c0a91ba>
{
};

# LootItemFunction::<lambda_4735856ae15dce4f4cacc09e7a91d1bc>

struct __cppobj LootItemFunction::<lambda_4735856ae15dce4f4cacc09e7a91d1bc>
{
};

# LootItemActorHasMarkVariantCondition

struct __cppobj __declspec(align(8)) LootItemActorHasMarkVariantCondition : LootItemCondition
{
  int mValue;
};

# LootItemActorHasMarkVariantCondition_vtbl

struct /*VFT*/ LootItemActorHasMarkVariantCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemKilledByPlayerCondition

struct __cppobj LootItemKilledByPlayerCondition : LootItemCondition
{
};

# LootItemKilledByPlayerCondition_vtbl

struct /*VFT*/ LootItemKilledByPlayerCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemKilledByPlayerOrPetsCondition

struct __cppobj LootItemKilledByPlayerOrPetsCondition : LootItemCondition
{
};

# LootItemKilledByPlayerOrPetsCondition_vtbl

struct /*VFT*/ LootItemKilledByPlayerOrPetsCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemKilledByActorCondition

struct __cppobj LootItemKilledByActorCondition : LootItemCondition
{
  ActorDefinitionIdentifier mActorId;
};

# LootItemKilledByActorCondition_vtbl

struct /*VFT*/ LootItemKilledByActorCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemRandomChanceCondition

struct __cppobj __declspec(align(8)) LootItemRandomChanceCondition : LootItemCondition
{
  float mChance;
};

# LootItemRandomChanceCondition_vtbl

struct /*VFT*/ LootItemRandomChanceCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemRandomDifficultyChanceCondition

struct __cppobj LootItemRandomDifficultyChanceCondition : LootItemCondition
{
  std::vector<float> mChances;
};

# LootItemRandomDifficultyChanceCondition_vtbl

struct /*VFT*/ LootItemRandomDifficultyChanceCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemRandomChanceWithLootingCondition

struct __cppobj LootItemRandomChanceWithLootingCondition : LootItemCondition
{
  float mChance;
  float mLootingMultiplier;
};

# LootItemRandomChanceWithLootingCondition_vtbl

struct /*VFT*/ LootItemRandomChanceWithLootingCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootItemRandomChanceWithSpecialModifierCondition

struct __cppobj __declspec(align(8)) LootItemRandomChanceWithSpecialModifierCondition : LootItemCondition
{
  float mChance;
};

# LootItemRandomChanceWithSpecialModifierCondition_vtbl

struct /*VFT*/ LootItemRandomChanceWithSpecialModifierCondition_vtbl
{
  void (__fastcall *~LootItemCondition)(LootItemCondition *this);
  bool (__fastcall *applies)(LootItemCondition *this, Random *, LootTableContext *);
};

# LootTable::fill::__l2::<lambda_ad9ae3546f41f9c20bd1456b91aad58f>

struct __cppobj LootTable::fill::__l2::<lambda_ad9ae3546f41f9c20bd1456b91aad58f>
{
  LootTableContext *context;
  LootTable *const __this;
  std::vector<ItemStack> *items;
};

# LanNetworkScanner

struct __cppobj LanNetworkScanner
{
  LanNetworkScanner_vtbl *__vftable /*VFT*/;
  NetworkHandler *mScanServer;
  RakNetInstance *mRakInstance;
  RakPeerHelper *mFindPeerHelper;
  RakNet::RakPeerInterface *mClientFindPeer;
  unsigned int mLastPingTime;
  LanScannerCallback *m_callback;
  int mPingPort;
  std::vector<std::string> mBroadcastAddresses;
  int mPingPortv6;
  std::vector<std::string> mMulticastAddressesV6;
  bool mEnablePing;
  unsigned int mPingMSInterval;
};

# LanNetworkScanner_vtbl

struct /*VFT*/ LanNetworkScanner_vtbl
{
  void (__fastcall *~LanNetworkScanner)(LanNetworkScanner *this);
};

# LanScannerCallback

struct __cppobj LanScannerCallback
{
  LanScannerCallback_vtbl *__vftable /*VFT*/;
  ScriptInstance *m_instance;
};

# LanScannerCallback_vtbl

struct /*VFT*/ LanScannerCallback_vtbl
{
  void (__fastcall *~LanScannerCallback)(LanScannerCallback *this);
};

# LoginScreenController::_registerBindings::__l2::<lambda_4e0edec5501ebda37dc325a9761b510d>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_4e0edec5501ebda37dc325a9761b510d>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_4290614e5955914be7cb4b8cb788df4e>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_4290614e5955914be7cb4b8cb788df4e>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_5248686c78775e518998743e782d4bc5>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_5248686c78775e518998743e782d4bc5>
{
};

# LoginScreenController::_registerBindings::__l2::<lambda_4f4980ba8d7050b55f79923ec2568145>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_4f4980ba8d7050b55f79923ec2568145>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_c5c09a4ae5b508a36d3cc321335fa1e8>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_c5c09a4ae5b508a36d3cc321335fa1e8>
{
  const int *SERVER_COUNT;
};

# LoginScreenController::_registerBindings::__l2::<lambda_c86672a12739f53ccb8deb94c52727f1>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_c86672a12739f53ccb8deb94c52727f1>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_c519f466419701247a810cc1a67ca983>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_c519f466419701247a810cc1a67ca983>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_56985565276deb11390f8739bb0460b0>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_56985565276deb11390f8739bb0460b0>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_b796b15f1ebec9c811d64d816693b52f>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_b796b15f1ebec9c811d64d816693b52f>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_55192afc01402db307678b3ac7dc75b6>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_55192afc01402db307678b3ac7dc75b6>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_9730a376fe71ff16426f091926cfb7f2>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_9730a376fe71ff16426f091926cfb7f2>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_84343cdf514d98e6cadbd3e69c19600c>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_84343cdf514d98e6cadbd3e69c19600c>
{
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_222f42d050976c39bbcb9a26c8e2c9b8>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_222f42d050976c39bbcb9a26c8e2c9b8>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_fbf2cdf5ec55a90eb37bdb86c9de1204>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_fbf2cdf5ec55a90eb37bdb86c9de1204>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerBindings::__l2::<lambda_772f2fa8994f89808ada916648e84625>

struct __cppobj LoginScreenController::_registerBindings::__l2::<lambda_772f2fa8994f89808ada916648e84625>
{
  const int SERVER_COUNT;
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_0db1a43a6d230dbff0836fb974e3f63d>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_0db1a43a6d230dbff0836fb974e3f63d>
{
  LoginScreenController *const __this;
};

# LoginScreenController::_registerEventHandlers::__l2::<lambda_ad9bd46fa219a3fb0d96d7802ca42f4b>

struct __cppobj LoginScreenController::_registerEventHandlers::__l2::<lambda_ad9bd46fa219a3fb0d96d7802ca42f4b>
{
  LoginScreenController *const __this;
};

# LoginScreenModel::verifyAccessLocal::__l2::<lambda_c8d3bb90c209164a23312ba3f61ca706>

struct __cppobj LoginScreenModel::verifyAccessLocal::__l2::<lambda_c8d3bb90c209164a23312ba3f61ca706>
{
  LoginScreenModel *const __this;
};

# LoginScreenModel::verifyAccessLocal::__l2::<lambda_a2b16ccdfe218af073b627292e116ef9>

struct __cppobj LoginScreenModel::verifyAccessLocal::__l2::<lambda_a2b16ccdfe218af073b627292e116ef9>
{
};

# LoginStateMachine::startDebugLogin::__l2::<lambda_3620d03fbdd6c8ab213e047d44137b5a>

struct __cppobj LoginStateMachine::startDebugLogin::__l2::<lambda_3620d03fbdd6c8ab213e047d44137b5a>
{
  LoginStateMachine *const __this;
};

# LoginStateMachine::startDebugLogin::__l2::<lambda_a2bb7d6fc5032f64dd1881e05ce71a99>

struct __cppobj LoginStateMachine::startDebugLogin::__l2::<lambda_a2bb7d6fc5032f64dd1881e05ce71a99>
{
  LoginStateMachine *const __this;
};

# LoginStateMachine::startLogin::__l2::<lambda_4872023d8636e589e8f5018f575c5ec3>

struct __cppobj LoginStateMachine::startLogin::__l2::<lambda_4872023d8636e589e8f5018f575c5ec3>
{
  LoginStateMachine *const __this;
};

# LoginStateMachine::startLogin::__l2::<lambda_fb6f1b59d3f71e749bca4af365259153>

struct __cppobj LoginStateMachine::startLogin::__l2::<lambda_fb6f1b59d3f71e749bca4af365259153>
{
  LoginStateMachine *const __this;
};

# ListenOnRemoveComponentDescription::buildSchema::__l2::<lambda_2263154651339cb8205d1ed56ed14662>

struct __cppobj ListenOnRemoveComponentDescription::buildSchema::__l2::<lambda_2263154651339cb8205d1ed56ed14662>
{
};

# ListenOnRemoveComponentDescription::buildSchema::__l2::<lambda_e1dd14ee924ced353243dbe54de2c330>

struct __cppobj ListenOnRemoveComponentDescription::buildSchema::__l2::<lambda_e1dd14ee924ced353243dbe54de2c330>
{
  const BlockComponentFactory *factory;
};

# LabTableContainerManagerModel

struct __cppobj __declspec(align(8)) LabTableContainerManagerModel : LevelContainerManagerModel
{
  BlockPos mBlockPos;
};

# LabTableContainerManagerModel_vtbl

struct /*VFT*/ LabTableContainerManagerModel_vtbl
{
  void (__fastcall *~IContainerManager)(IContainerManager *this);
  ContainerID (__fastcall *getContainerId)(IContainerManager *this);
  void (__fastcall *setContainerId)(IContainerManager *this, ContainerID);
  ContainerType (__fastcall *getContainerType)(IContainerManager *this);
  void (__fastcall *setContainerType)(IContainerManager *this, ContainerType);
  void (__fastcall *serverInitItemStackIds)(IContainerManager *this);
  std::vector<ItemStack> *(__fastcall *getItemCopies)(IContainerManager *this, std::vector<ItemStack> *result);
  void (__fastcall *setSlot)(IContainerManager *this, int, const ItemStack *, bool);
  const ItemStack *(__fastcall *getSlot)(IContainerManager *this, int);
  void (__fastcall *setData)(IContainerManager *this, int, int);
  void (__fastcall *broadcastChanges)(IContainerManager *this);
  bool (__fastcall *validateContainer)(IContainerManager *this);
  bool (__fastcall *isValid)(ContainerManagerModel *this, float);
  ContainerScreenContext *(__fastcall *_postInit)(ContainerManagerModel *this, ContainerScreenContext *result);
};

# LabTableContainerManagerController

struct __cppobj __declspec(align(8)) LabTableContainerManagerController : ContainerManagerController
{
  std::weak_ptr<LabTableContainerManagerModel> mModel;
  std::unique_ptr<CraftableCompounds> mCraftableCompounds;
  _BYTE mResultContainer[1];
};

# LabTableContainerManagerController_vtbl

struct /*VFT*/ LabTableContainerManagerController_vtbl
{
  void (__fastcall *~ContainerManagerController)(ContainerManagerController *this);
  void (__fastcall *registerContainerCallbacks)(ContainerManagerController *this);
  const ItemStackBase *(__fastcall *getTakeableItemStackBase)(ContainerManagerController *this, const SlotData *);
  void (__fastcall *handleTakeAmount)(ContainerManagerController *this, const SlotData *, int, const SlotData *);
  void (__fastcall *handleTakeAll)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceAll)(ContainerManagerController *this, const SelectedSlotInfo *, const SlotData *);
  void (__fastcall *handleTakeHalf)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceOne)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceAmount)(ContainerManagerController *this, const SlotData *, int, const SlotData *);
  int (__fastcall *handleAutoPlace)(ContainerManagerController *this, const SlotData *, int, const std::vector<AutoPlaceItem> *, std::vector<AutoPlaceResult> *);
  int (__fastcall *handleAutoPlaceStack)(ContainerManagerController *this, const SlotData *, ItemTakeType, const std::vector<AutoPlaceItem> *, std::vector<AutoPlaceResult> *);
  void (__fastcall *handleSplitSingle)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handleSplitMultiple)(ContainerManagerController *this, const SelectedSlotInfo *, const ItemInstance *, const SlotData *);
  void (__fastcall *handleCoalesce)(ContainerManagerController *this, const SlotData *, const std::vector<std::string> *);
  bool (__fastcall *handleSwap)(ContainerManagerController *this, const SlotData *, const SlotData *);
  bool (__fastcall *handleDrop)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  bool (__fastcall *handleDestroy)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  bool (__fastcall *handleDestroy)(ContainerManagerController *this, const SelectedSlotInfo *, const ItemTransferAmount);
  bool (__fastcall *handleConsume)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  void (__fastcall *handleAddToStack)(ContainerManagerController *this, const SlotData *, const SlotData *, ItemTakeType);
  void (__fastcall *closeContainers)(ContainerManagerController *this);
  const std::vector<ContainerSplitControl> *(__fastcall *getSplitItems)(ContainerManagerController *this);
  bool (__fastcall *isOutputSlot)(ContainerManagerController *this, const std::string *);
  void (__fastcall *_onItemTransferredFrom)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemTransferredTo)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemAcquired)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemPlaced)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
};

# LabTableScreenController

struct __cppobj __declspec(align(8)) LabTableScreenController : ContainerScreenController
{
  std::shared_ptr<LabTableContainerManagerController> mManagerController;
  bool mStillValid;
};

# LabTableScreenController_vtbl

struct /*VFT*/ LabTableScreenController_vtbl
{
  void (__fastcall *~IScreenController)(IScreenController *this);
  ui::DirtyFlag (__fastcall *tick)(IScreenController *this);
  ui::ViewRequest (__fastcall *handleEvent)(IScreenController *this, ScreenEvent *);
  std::optional<std::string > *(__fastcall *getRoute)(IScreenController *this, std::optional<std::string > *result);
  void (__fastcall *setScreenState)(IScreenController *this, const std::vector<std::pair<std::string,std::string >> *);
  void (__fastcall *onOpen)(ScreenController *this);
  void (__fastcall *onTerminate)(ScreenController *this);
  void (__fastcall *onInit)(ScreenController *this);
  void (__fastcall *onDelete)(ScreenController *this);
  bool (__fastcall *canExit)(ScreenController *this);
  ui::ViewRequest (__fastcall *tryExit)(ScreenController *this);
  bool (__fastcall *areControllerTabsEnabled)(ScreenController *this);
  void (__fastcall *onCreation)(ScreenController *this);
  void (__fastcall *logCreationTime)(ScreenController *this, const std::string *, long double, long double, unsigned __int8);
  void (__fastcall *onLeave)(ScreenController *this);
  void (__fastcall *leaveScreen)(ScreenController *this);
  ui::DirtyFlag (__fastcall *handleGameEventNotification)(ScreenController *this, ui::GameEventNotification);
  bool (__fastcall *bind)(ScreenController *this, const std::string *, unsigned int, const std::string *, UIPropertyBag *);
  bool (__fastcall *bind)(ScreenController *this, const std::string *, unsigned int, int, const std::string *, unsigned int, const std::string *, UIPropertyBag *);
  void (__fastcall *handleLicenseChanged)(ScreenController *this);
  void (__fastcall *onDictationEvent)(ScreenController *this, const std::string *);
  void (__fastcall *setAssociatedBlockPos)(ScreenController *this, const BlockPos *);
  void (__fastcall *setAssociatedEntityUniqueID)(ScreenController *this, const ActorUniqueID);
  void (__fastcall *setSuspendInput)(ScreenController *this, bool);
  float (__fastcall *getCallbackInterval)(ScreenController *this);
  void (__fastcall *onRender)(ScreenController *this);
  void (__fastcall *addStaticScreenVars)(ScreenController *this, Json::Value *);
  std::string *(__fastcall *getAdditionalScreenInfo)(ScreenController *this, std::string *result);
  std::string *(__fastcall *getTelemetryOverride)(ScreenController *this, std::string *result);
  void (__fastcall *addEventProperties)(ScreenController *this, std::unordered_map<std::string,std::string> *);
  ui::SceneType (__fastcall *getSceneType)(ScreenController *this);
  int (__fastcall *getScreenVersion)(ScreenController *this);
  bool (__fastcall *screenHandlesGamepadMenuButton)(ScreenController *this);
  ScreenControllerProxy *(__fastcall *getProxy)(ScreenController *this);
  void (__fastcall *onEntered)(ScreenController *this);
  unsigned int (__fastcall *getNameId)(ScreenController *this, const std::string *);
  bool (__fastcall *verifySceneStack)(ScreenController *this, SceneStack *);
  bool (__fastcall *_doesScreenHaveExitBehavior)(ScreenController *this);
  bool (__fastcall *_isStillValid)(MinecraftScreenController *this);
  bool (__fastcall *_getGamepadHelperVisible)(MinecraftScreenController *this);
  bool (__fastcall *_getMixedHelperVisible)(MinecraftScreenController *this);
  bool (__fastcall *_getKeyboardHelperVisible)(MinecraftScreenController *this);
  std::string *(__fastcall *_getButtonADescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonBDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonXDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonYDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonKeyboardDescription)(MinecraftScreenController *this, std::string *result);
  void (__fastcall *_handlePlaceAll)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_handlePlaceOne)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_handleSelectSlot)(ContainerScreenController *this, const std::string *, int);
  const SelectedSlotInfo *(__fastcall *_getSelectedSlotInfo)(ContainerScreenController *this, const SelectedSlotInfo *result);
  const ItemStack *(__fastcall *_getItemStack)(ContainerScreenController *this, const std::string *, int);
  const ItemStackBase *(__fastcall *_getVisualItemStack)(ContainerScreenController *this, const std::string *, int);
  const ItemStackBase *(__fastcall *_getTakeableItemStackBase)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotHovered)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotSelected)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotPressed)(ContainerScreenController *this, const std::string *, int);
  bool (__fastcall *_shouldSwap)(ContainerScreenController *this, const std::string *, int, const std::string *, int);
  std::string *(__fastcall *_getCollectionName)(ContainerScreenController *this, std::string *result, UIPropertyBag *);
  bool (__fastcall *_canSplit)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_sendFlyingItem)(ContainerScreenController *this, const ItemStackBase *, const std::string *, int, const std::string *, int);
  void (__fastcall *_registerCoalesceOrder)(ContainerScreenController *this);
  void (__fastcall *_registerAutoPlaceOrder)(ContainerScreenController *this);
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_0a68fb2b5d77f015b074f9a773fc0ec4>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_0a68fb2b5d77f015b074f9a773fc0ec4>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_41408838da505997ad8effb80f7dc4b8>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_41408838da505997ad8effb80f7dc4b8>
{
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_5bb9bd65f50d6db8f1e03db0ee97d5bc>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_5bb9bd65f50d6db8f1e03db0ee97d5bc>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_08c32c73e7b08dd47413f4123a16a54a>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_08c32c73e7b08dd47413f4123a16a54a>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_095e1c1a05b5a480b28f2e9fddda40fc>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_095e1c1a05b5a480b28f2e9fddda40fc>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_5b602b590e7d471dabc4acb33d5839c8>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_5b602b590e7d471dabc4acb33d5839c8>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_239a9cccdf41a2052f74f6c6d0c7d85f>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_239a9cccdf41a2052f74f6c6d0c7d85f>
{
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_982a0a0282e439ca7312a4010d1d1c4b>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_982a0a0282e439ca7312a4010d1d1c4b>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_c4d76a0645569df4dc465b70b828d66e>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_c4d76a0645569df4dc465b70b828d66e>
{
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_882d8b7556875455db1135572313f08c>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_882d8b7556875455db1135572313f08c>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_0b95ebf76abe7b7f8c95ec5c12956941>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_0b95ebf76abe7b7f8c95ec5c12956941>
{
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_3d0be37ffb9c6ecc0ff98dc13ea5cf85>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_3d0be37ffb9c6ecc0ff98dc13ea5cf85>
{
  LabTableScreenController *const __this;
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_0ec2c54c2495541f13d8e77678a45476>

struct __cppobj __declspec(align(8)) LabTableScreenController::_registerStateMachine::__l2::<lambda_0ec2c54c2495541f13d8e77678a45476>
{
  LabTableScreenController *const __this;
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_374f90466a550c0647644aa450b3e37f>

struct __cppobj __declspec(align(8)) LabTableScreenController::_registerStateMachine::__l2::<lambda_374f90466a550c0647644aa450b3e37f>
{
  LabTableScreenController *const __this;
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_875c634edb52e768847624da0ad8d008>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_875c634edb52e768847624da0ad8d008>
{
  LabTableScreenController *const __this;
  unsigned int coalesceButtonId;
  unsigned int placeAllTakeAllButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_c91cbbb3e2d0c543db0af34893b57228>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_c91cbbb3e2d0c543db0af34893b57228>
{
  LabTableScreenController *const __this;
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_be7effd1588f9d57f08c124b936f924d>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_be7effd1588f9d57f08c124b936f924d>
{
  LabTableScreenController *const __this;
  unsigned int placeAllTakeAllButtonId;
  unsigned int coalesceButtonId;
};

# LabTableScreenController::_registerStateMachine::__l2::<lambda_1b41de0bc04ab092ea59515129467e80>

struct __cppobj LabTableScreenController::_registerStateMachine::__l2::<lambda_1b41de0bc04ab092ea59515129467e80>
{
  LabTableScreenController *const __this;
};

# LabTableScreenController::_registerBindings::__l2::<lambda_7ed95c13c0b4a36b9f52779e90b1a30d>

struct __cppobj LabTableScreenController::_registerBindings::__l2::<lambda_7ed95c13c0b4a36b9f52779e90b1a30d>
{
  LabTableScreenController *const __this;
};

# LabTableScreenController::_registerBindings::__l2::<lambda_3571cb244d57f6a5719fcc4c72aff0e2>

struct __cppobj LabTableScreenController::_registerBindings::__l2::<lambda_3571cb244d57f6a5719fcc4c72aff0e2>
{
  LabTableScreenController *const __this;
};

# LabTableScreenController::_registerBindings::__l2::<lambda_ff3373082e8448670d478c275ae6684c>

struct __cppobj LabTableScreenController::_registerBindings::__l2::<lambda_ff3373082e8448670d478c275ae6684c>
{
  LabTableScreenController *const __this;
};

# LabTableScreenController::_registerBindings::__l2::<lambda_25c576ed92d722eb6ca7be5d009f65d6>

struct __cppobj LabTableScreenController::_registerBindings::__l2::<lambda_25c576ed92d722eb6ca7be5d009f65d6>
{
  LabTableScreenController *const __this;
};

# LabTableScreenController::_registerEventHandlers::__l2::<lambda_e5ab58ebaa14c7841f7a2c872aa73cff>

struct __cppobj LabTableScreenController::_registerEventHandlers::__l2::<lambda_e5ab58ebaa14c7841f7a2c872aa73cff>
{
  LabTableScreenController *const __this;
};

# LoomContainerManagerModel

struct __cppobj __declspec(align(8)) LoomContainerManagerModel : ContainerManagerModel
{
  BlockPos mBlockPos;
};

# LoomContainerManagerModel_vtbl

struct /*VFT*/ LoomContainerManagerModel_vtbl
{
  void (__fastcall *~IContainerManager)(IContainerManager *this);
  ContainerID (__fastcall *getContainerId)(IContainerManager *this);
  void (__fastcall *setContainerId)(IContainerManager *this, ContainerID);
  ContainerType (__fastcall *getContainerType)(IContainerManager *this);
  void (__fastcall *setContainerType)(IContainerManager *this, ContainerType);
  void (__fastcall *serverInitItemStackIds)(IContainerManager *this);
  std::vector<ItemStack> *(__fastcall *getItemCopies)(IContainerManager *this, std::vector<ItemStack> *result);
  void (__fastcall *setSlot)(IContainerManager *this, int, const ItemStack *, bool);
  const ItemStack *(__fastcall *getSlot)(IContainerManager *this, int);
  void (__fastcall *setData)(IContainerManager *this, int, int);
  void (__fastcall *broadcastChanges)(IContainerManager *this);
  bool (__fastcall *validateContainer)(IContainerManager *this);
  bool (__fastcall *isValid)(ContainerManagerModel *this, float);
  ContainerScreenContext *(__fastcall *_postInit)(ContainerManagerModel *this, ContainerScreenContext *result);
};

# LoomContainerManagerController

struct __cppobj LoomContainerManagerController : ContainerManagerController
{
  std::weak_ptr<LoomContainerManagerModel> mLoomContainerManagerModel;
  std::vector<int> mFilteredPatterns;
  int mSelectedPatternIndex;
  bool mCurrentlyCrafting;
  const SlotData mCreatedItemOutputSlot;
  ItemInstance mResultItemPreview;
};

# LoomContainerManagerController_vtbl

struct /*VFT*/ LoomContainerManagerController_vtbl
{
  void (__fastcall *~ContainerManagerController)(ContainerManagerController *this);
  void (__fastcall *registerContainerCallbacks)(ContainerManagerController *this);
  const ItemStackBase *(__fastcall *getTakeableItemStackBase)(ContainerManagerController *this, const SlotData *);
  void (__fastcall *handleTakeAmount)(ContainerManagerController *this, const SlotData *, int, const SlotData *);
  void (__fastcall *handleTakeAll)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceAll)(ContainerManagerController *this, const SelectedSlotInfo *, const SlotData *);
  void (__fastcall *handleTakeHalf)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceOne)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handlePlaceAmount)(ContainerManagerController *this, const SlotData *, int, const SlotData *);
  int (__fastcall *handleAutoPlace)(ContainerManagerController *this, const SlotData *, int, const std::vector<AutoPlaceItem> *, std::vector<AutoPlaceResult> *);
  int (__fastcall *handleAutoPlaceStack)(ContainerManagerController *this, const SlotData *, ItemTakeType, const std::vector<AutoPlaceItem> *, std::vector<AutoPlaceResult> *);
  void (__fastcall *handleSplitSingle)(ContainerManagerController *this, const SlotData *, const SlotData *);
  void (__fastcall *handleSplitMultiple)(ContainerManagerController *this, const SelectedSlotInfo *, const ItemInstance *, const SlotData *);
  void (__fastcall *handleCoalesce)(ContainerManagerController *this, const SlotData *, const std::vector<std::string> *);
  bool (__fastcall *handleSwap)(ContainerManagerController *this, const SlotData *, const SlotData *);
  bool (__fastcall *handleDrop)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  bool (__fastcall *handleDestroy)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  bool (__fastcall *handleDestroy)(ContainerManagerController *this, const SelectedSlotInfo *, const ItemTransferAmount);
  bool (__fastcall *handleConsume)(ContainerManagerController *this, const SlotData *, const ItemTransferAmount);
  void (__fastcall *handleAddToStack)(ContainerManagerController *this, const SlotData *, const SlotData *, ItemTakeType);
  void (__fastcall *closeContainers)(ContainerManagerController *this);
  const std::vector<ContainerSplitControl> *(__fastcall *getSplitItems)(ContainerManagerController *this);
  bool (__fastcall *isOutputSlot)(ContainerManagerController *this, const std::string *);
  void (__fastcall *_onItemTransferredFrom)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemTransferredTo)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemAcquired)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
  void (__fastcall *_onItemPlaced)(ContainerManagerController *this, const ItemInstance *, const SlotData *);
};

# LoomScreenController

struct __cppobj LoomScreenController : ContainerScreenController
{
  std::shared_ptr<LoomContainerManagerController> mLoomContainerManagerController;
  int mSelectedLeftTab;
  int mLastSelectedPatternIndex;
  ItemInstance mVisualPatternItem;
};

# LoomScreenController_vtbl

struct /*VFT*/ LoomScreenController_vtbl
{
  void (__fastcall *~IScreenController)(IScreenController *this);
  ui::DirtyFlag (__fastcall *tick)(IScreenController *this);
  ui::ViewRequest (__fastcall *handleEvent)(IScreenController *this, ScreenEvent *);
  std::optional<std::string > *(__fastcall *getRoute)(IScreenController *this, std::optional<std::string > *result);
  void (__fastcall *setScreenState)(IScreenController *this, const std::vector<std::pair<std::string,std::string >> *);
  void (__fastcall *onOpen)(ScreenController *this);
  void (__fastcall *onTerminate)(ScreenController *this);
  void (__fastcall *onInit)(ScreenController *this);
  void (__fastcall *onDelete)(ScreenController *this);
  bool (__fastcall *canExit)(ScreenController *this);
  ui::ViewRequest (__fastcall *tryExit)(ScreenController *this);
  bool (__fastcall *areControllerTabsEnabled)(ScreenController *this);
  void (__fastcall *onCreation)(ScreenController *this);
  void (__fastcall *logCreationTime)(ScreenController *this, const std::string *, long double, long double, unsigned __int8);
  void (__fastcall *onLeave)(ScreenController *this);
  void (__fastcall *leaveScreen)(ScreenController *this);
  ui::DirtyFlag (__fastcall *handleGameEventNotification)(ScreenController *this, ui::GameEventNotification);
  bool (__fastcall *bind)(ScreenController *this, const std::string *, unsigned int, const std::string *, UIPropertyBag *);
  bool (__fastcall *bind)(ScreenController *this, const std::string *, unsigned int, int, const std::string *, unsigned int, const std::string *, UIPropertyBag *);
  void (__fastcall *handleLicenseChanged)(ScreenController *this);
  void (__fastcall *onDictationEvent)(ScreenController *this, const std::string *);
  void (__fastcall *setAssociatedBlockPos)(ScreenController *this, const BlockPos *);
  void (__fastcall *setAssociatedEntityUniqueID)(ScreenController *this, const ActorUniqueID);
  void (__fastcall *setSuspendInput)(ScreenController *this, bool);
  float (__fastcall *getCallbackInterval)(ScreenController *this);
  void (__fastcall *onRender)(ScreenController *this);
  void (__fastcall *addStaticScreenVars)(ScreenController *this, Json::Value *);
  std::string *(__fastcall *getAdditionalScreenInfo)(ScreenController *this, std::string *result);
  std::string *(__fastcall *getTelemetryOverride)(ScreenController *this, std::string *result);
  void (__fastcall *addEventProperties)(ScreenController *this, std::unordered_map<std::string,std::string> *);
  ui::SceneType (__fastcall *getSceneType)(ScreenController *this);
  int (__fastcall *getScreenVersion)(ScreenController *this);
  bool (__fastcall *screenHandlesGamepadMenuButton)(ScreenController *this);
  ScreenControllerProxy *(__fastcall *getProxy)(ScreenController *this);
  void (__fastcall *onEntered)(ScreenController *this);
  unsigned int (__fastcall *getNameId)(ScreenController *this, const std::string *);
  bool (__fastcall *verifySceneStack)(ScreenController *this, SceneStack *);
  bool (__fastcall *_doesScreenHaveExitBehavior)(ScreenController *this);
  bool (__fastcall *_isStillValid)(MinecraftScreenController *this);
  bool (__fastcall *_getGamepadHelperVisible)(MinecraftScreenController *this);
  bool (__fastcall *_getMixedHelperVisible)(MinecraftScreenController *this);
  bool (__fastcall *_getKeyboardHelperVisible)(MinecraftScreenController *this);
  std::string *(__fastcall *_getButtonADescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonBDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonXDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonYDescription)(MinecraftScreenController *this, std::string *result);
  std::string *(__fastcall *_getButtonKeyboardDescription)(MinecraftScreenController *this, std::string *result);
  void (__fastcall *_handlePlaceAll)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_handlePlaceOne)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_handleSelectSlot)(ContainerScreenController *this, const std::string *, int);
  const SelectedSlotInfo *(__fastcall *_getSelectedSlotInfo)(ContainerScreenController *this, const SelectedSlotInfo *result);
  const ItemStack *(__fastcall *_getItemStack)(ContainerScreenController *this, const std::string *, int);
  const ItemStackBase *(__fastcall *_getVisualItemStack)(ContainerScreenController *this, const std::string *, int);
  const ItemStackBase *(__fastcall *_getTakeableItemStackBase)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotHovered)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotSelected)(ContainerScreenController *this, const std::string *, int);
  ui::ViewRequest (__fastcall *_onContainerSlotPressed)(ContainerScreenController *this, const std::string *, int);
  bool (__fastcall *_shouldSwap)(ContainerScreenController *this, const std::string *, int, const std::string *, int);
  std::string *(__fastcall *_getCollectionName)(ContainerScreenController *this, std::string *result, UIPropertyBag *);
  bool (__fastcall *_canSplit)(ContainerScreenController *this, const std::string *, int);
  void (__fastcall *_sendFlyingItem)(ContainerScreenController *this, const ItemStackBase *, const std::string *, int, const std::string *, int);
  void (__fastcall *_registerCoalesceOrder)(ContainerScreenController *this);
  void (__fastcall *_registerAutoPlaceOrder)(ContainerScreenController *this);
};

# LoomScreenController::_selectPattern::__l14::<lambda_b05b8bf156b1a1465ea5277a0918e793>

struct __cppobj LoomScreenController::_selectPattern::__l14::<lambda_b05b8bf156b1a1465ea5277a0918e793>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerStateMachine::__l2::<lambda_cde7092fa468a7c3bb18fbc5e2b0cbf1>

struct __cppobj LoomScreenController::_registerStateMachine::__l2::<lambda_cde7092fa468a7c3bb18fbc5e2b0cbf1>
{
  const unsigned int loomResultTakeAllPlaceAllButtonId;
};

# LoomScreenController::_registerStateMachine::__l2::<lambda_b2b01eb2024e85503afda8e234294695>

struct __cppobj LoomScreenController::_registerStateMachine::__l2::<lambda_b2b01eb2024e85503afda8e234294695>
{
  const unsigned int loomResultTakeAllPlaceAllButtonId;
};

# LoomScreenController::_registerStateMachine::__l2::<lambda_f92d4a935ffa0a58a48a1768c6f3d78b>

struct __cppobj __declspec(align(8)) LoomScreenController::_registerStateMachine::__l2::<lambda_f92d4a935ffa0a58a48a1768c6f3d78b>
{
  LoomScreenController *const __this;
  const unsigned int loomResultTakeAllPlaceAllButtonId;
};

# LoomScreenController::_registerStateMachine::__l2::<lambda_02120b1334037f949a2a943dcd5ee0f4>

struct __cppobj __declspec(align(8)) LoomScreenController::_registerStateMachine::__l2::<lambda_02120b1334037f949a2a943dcd5ee0f4>
{
  LoomScreenController *const __this;
  const unsigned int loomResultTakeAllPlaceAllButtonId;
};

# LoomScreenController::_registerBindings::__l2::<lambda_577e2e35f828d178db0d415b37e22659>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_577e2e35f828d178db0d415b37e22659>
{
};

# LoomScreenController::_registerBindings::__l2::<lambda_385dd12f89b297f22d06e7567caf87ef>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_385dd12f89b297f22d06e7567caf87ef>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_6d698fc1b73bbbea850da6185799e385>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_6d698fc1b73bbbea850da6185799e385>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_4691132a529dba41284759a80cc48758>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_4691132a529dba41284759a80cc48758>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_e42582d6cfd8882de7de6f3384e3b2ab>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_e42582d6cfd8882de7de6f3384e3b2ab>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_21344147d19107f53d107092018f205e>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_21344147d19107f53d107092018f205e>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_e0b79c88007c634ab817c07cb3bf3ad6>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_e0b79c88007c634ab817c07cb3bf3ad6>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_70f26ed345a8b27e3405dc98790258ea>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_70f26ed345a8b27e3405dc98790258ea>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_ed06ec24785e4b1f8d35ee3b5a35d0d6>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_ed06ec24785e4b1f8d35ee3b5a35d0d6>
{
};

# LoomScreenController::_registerBindings::__l2::<lambda_d40f2a2d84a6b9c44d96dc17a0586e36>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_d40f2a2d84a6b9c44d96dc17a0586e36>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerBindings::__l2::<lambda_2adc3ea88ad7ac2acaf38895808532d2>

struct __cppobj LoomScreenController::_registerBindings::__l2::<lambda_2adc3ea88ad7ac2acaf38895808532d2>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerEventHandlers::__l2::<lambda_a24108e6f733709496f989a5a7d7e795>

struct __cppobj LoomScreenController::_registerEventHandlers::__l2::<lambda_a24108e6f733709496f989a5a7d7e795>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerEventHandlers::__l2::<lambda_fe4ea2b3f0d6fa0a79ffb605c98f9e95>

struct __cppobj LoomScreenController::_registerEventHandlers::__l2::<lambda_fe4ea2b3f0d6fa0a79ffb605c98f9e95>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerEventHandlers::__l2::<lambda_258b0913fef70804a95334f7485a16c4>

struct __cppobj LoomScreenController::_registerEventHandlers::__l2::<lambda_258b0913fef70804a95334f7485a16c4>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerEventHandlers::__l2::<lambda_130a89ecbec363f44a02753e96d67ef7>

struct __cppobj LoomScreenController::_registerEventHandlers::__l2::<lambda_130a89ecbec363f44a02753e96d67ef7>
{
  LoomScreenController *const __this;
};

# LoomScreenController::_registerEventHandlers::__l2::<lambda_1f91b3405a6fc123b4ff985b1019d202>

struct __cppobj LoomScreenController::_registerEventHandlers::__l2::<lambda_1f91b3405a6fc123b4ff985b1019d202>
{
  LoomScreenController *const __this;
};

# LoomScreenController::{ctor}::__l2::<lambda_aa2d0d407bcfb14a2875a271bcd91841>

struct __cppobj LoomScreenController::{ctor}::__l2::<lambda_aa2d0d407bcfb14a2875a271bcd91841>
{
  LoomScreenController *const __this;
};

# LoomScreenController::{ctor}::__l2::<lambda_a0a08c30516bd00554f97d45e60682b3>

struct __cppobj LoomScreenController::{ctor}::__l2::<lambda_a0a08c30516bd00554f97d45e60682b3>
{
  LoomScreenController *const __this;
};

# LoomScreenController::{ctor}::__l2::<lambda_5df3567cbbff020b50f318fee0fbacc3>

struct __cppobj LoomScreenController::{ctor}::__l2::<lambda_5df3567cbbff020b50f318fee0fbacc3>
{
  LoomScreenController *const __this;
};

# LoomScreenController::{ctor}::__l2::<lambda_5fb0a72e41b85aa2b92c2a90c80fbdd6>

struct __cppobj LoomScreenController::{ctor}::__l2::<lambda_5fb0a72e41b85aa2b92c2a90c80fbdd6>
{
  LoomScreenController *const __this;
};

# LoomScreenController::{ctor}::__l2::<lambda_b960a0eb51b999ed6712f500eabb76d9>

struct __cppobj LoomScreenController::{ctor}::__l2::<lambda_b960a0eb51b999ed6712f500eabb76d9>
{
  LoomScreenController *const __this;
};

# LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_35cefad7aa4c8573d7f717148efe205f>

struct __cppobj LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_35cefad7aa4c8573d7f717148efe205f>
{
};

# LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_63af8e192300e095916a257c92ced5cc>

struct __cppobj LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_63af8e192300e095916a257c92ced5cc>
{
};

# LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_46064b2ecd21710943a1285c9f9d45ce>

struct __cppobj LightTextureImageBuilderFactory::registerLightImageBuilders::__l2::<lambda_46064b2ecd21710943a1285c9f9d45ce>
{
};

# LeashableSystem

struct __cppobj LeashableSystem : ITickingSystem
{
};

# LeashableSystem_vtbl

struct /*VFT*/ LeashableSystem_vtbl
{
  void (__fastcall *~ITickingSystem)(ITickingSystem *this);
  void (__fastcall *tick)(ITickingSystem *this, EntityRegistry *);
};

# LayDownGoal

struct __cppobj LayDownGoal : Goal
{
  Mob *mMob;
  int mInterval;
  int mEndInterval;
};

# LayDownGoal_vtbl

struct /*VFT*/ LayDownGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LayEggGoal

struct __cppobj LayEggGoal : BaseMoveToBlockGoal
{
  int mLayEggCounter;
  const DefinitionTrigger mOnLay;
};

# LayEggGoal_vtbl

struct /*VFT*/ LayEggGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
  bool (__fastcall *hasReachedTarget)(BaseMoveToGoal *this);
  bool (__fastcall *isValidTarget)(BaseMoveToGoal *this, BlockSource *, const BlockPos *);
  int (__fastcall *_nextStartTick)(BaseMoveToGoal *this);
  bool (__fastcall *_canReach)(BaseMoveToGoal *this, const BlockPos *);
  void (__fastcall *_moveToBlock)(BaseMoveToGoal *this);
  Vec3 *(__fastcall *_getTargetPosition)(BaseMoveToGoal *this, Vec3 *result);
  unsigned __int64 (__fastcall *_getRepathTime)(BaseMoveToGoal *this);
  bool (__fastcall *findTargetBlock)(BaseMoveToBlockGoal *this);
};

# LayEggGoal::findTargetBlock::__l5::<lambda_d658bf25260730cee5979869a59944a3>

struct __cppobj LayEggGoal::findTargetBlock::__l5::<lambda_d658bf25260730cee5979869a59944a3>
{
};

# LeapAtTargetGoal

struct __cppobj __declspec(align(8)) LeapAtTargetGoal : Goal
{
  TempEPtr<Actor> mTarget;
  float mYd;
  bool mMustBeOnGround;
  Mob *mMob;
  bool mSetPersistent;
};

# LeapAtTargetGoal_vtbl

struct /*VFT*/ LeapAtTargetGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LookAtActorGoal

struct __cppobj LookAtActorGoal : Goal
{
  TempEPtr<Actor> mLookAt;
  float mLookDistance;
  int mAngleOfViewX;
  int mAngleOfViewY;
  int mLookTime;
  int mMinLookTime;
  int mMaxLookTime;
  float mProbability;
  ActorFilterGroup mTargetFilter;
  Mob *mMob;
};

# LookAtActorGoal_vtbl

struct /*VFT*/ LookAtActorGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LookAtTargetGoal

struct __cppobj LookAtTargetGoal : LookAtActorGoal
{
};

# LookAtTargetGoal_vtbl

struct /*VFT*/ LookAtTargetGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LookAtEntityGoal

struct __cppobj LookAtEntityGoal : LookAtActorGoal
{
};

# LookAtEntityGoal_vtbl

struct /*VFT*/ LookAtEntityGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LookAtPlayerGoal

struct __cppobj LookAtPlayerGoal : LookAtActorGoal
{
};

# LookAtPlayerGoal_vtbl

struct /*VFT*/ LookAtPlayerGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LookAtTradingPlayerGoal

struct __cppobj LookAtTradingPlayerGoal : LookAtActorGoal
{
  Mob *mMob;
};

# LookAtTradingPlayerGoal_vtbl

struct /*VFT*/ LookAtTradingPlayerGoal_vtbl
{
  void (__fastcall *~Goal)(Goal *this);
  bool (__fastcall *canUse)(Goal *this);
  bool (__fastcall *canContinueToUse)(Goal *this);
  bool (__fastcall *canBeInterrupted)(Goal *this);
  void (__fastcall *start)(Goal *this);
  void (__fastcall *stop)(Goal *this);
  void (__fastcall *tick)(Goal *this);
  void (__fastcall *appendDebugInfo)(Goal *this, std::string *);
  bool (__fastcall *isTargetGoal)(Goal *this);
  void (__fastcall *onPlayerDimensionChanged)(Goal *this, Player *, AutomaticID<Dimension,int>);
};

# LabTableContainerManagerController::_setupCallbacks::__l2::<lambda_ffe748cef5e10514951ce4356a36bd3b>

struct __cppobj LabTableContainerManagerController::_setupCallbacks::__l2::<lambda_ffe748cef5e10514951ce4356a36bd3b>
{
  LabTableContainerManagerController *const __this;
};

# LoomContainerManagerController::_setupCallbacks::__l2::<lambda_cb66d072cc3fe724328aa99ec1b86f2d>

struct __cppobj LoomContainerManagerController::_setupCallbacks::__l2::<lambda_cb66d072cc3fe724328aa99ec1b86f2d>
{
  LoomContainerManagerController *const __this;
};

# LoomContainerManagerController::_setupCallbacks::__l2::<lambda_3400e6d56907178f32f9edcc7571024f>

struct __cppobj LoomContainerManagerController::_setupCallbacks::__l2::<lambda_3400e6d56907178f32f9edcc7571024f>
{
  LoomContainerManagerController *const __this;
};

# LoomContainerManagerController::_setupCallbacks::__l2::<lambda_ccc00da14fabe4b2591e4c39c252202b>

struct __cppobj LoomContainerManagerController::_setupCallbacks::__l2::<lambda_ccc00da14fabe4b2591e4c39c252202b>
{
  LoomContainerManagerController *const __this;
};

# LabTableContainerManagerModel::_postInit::__l2::<lambda_7096d247681af9d6df32c772425ae9ad>

struct __cppobj LabTableContainerManagerModel::_postInit::__l2::<lambda_7096d247681af9d6df32c772425ae9ad>
{
  LabTableContainerManagerModel *const __this;
};

# LayerDetails::WorkingData<Biome *,float>

struct __cppobj LayerDetails::WorkingData<Biome *,float> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<float> mParentArea;
  LayerDetails::BufferAccessor<Biome *> mResult;
};

# LargeHellCaveFeature

struct __cppobj LargeHellCaveFeature
{
};

# LegacyChunkStorage

struct __cppobj LegacyChunkStorage : ChunkSource
{
  bool mDone;
  const PerlinSimplexNoise mGrassNoise;
  const Core::PathBuffer<std::string > mLevelPath;
  const Core::PathBuffer<std::string > mImportedChunksPath;
  std::unique_ptr<RegionFile> mRegionFile;
  std::unique_ptr<RegionFile> mEntitiesFile;
  _BYTE mLoadedStorageVersion[4];
  Biome *mDefaultBiome;
  std::unordered_map<ChunkPos,std::string> mChunkEntities;
  std::unordered_map<ChunkPos,std::string> mChunkBlockEntities;
  std::mutex mRegionFileMutex;
  std::mutex mChunkMapMutex;
};

# LegacyChunkStorage_vtbl

struct /*VFT*/ LegacyChunkStorage_vtbl
{
  void (__fastcall *~ChunkSource)(ChunkSource *this);
  void (__fastcall *shutdown)(ChunkSource *this);
  bool (__fastcall *isShutdownDone)(ChunkSource *this);
  std::shared_ptr<LevelChunk> *(__fastcall *getExistingChunk)(ChunkSource *this, std::shared_ptr<LevelChunk> *result, const ChunkPos *);
  std::shared_ptr<LevelChunk> *(__fastcall *getRandomChunk)(ChunkSource *this, std::shared_ptr<LevelChunk> *result, Random *);
  std::shared_ptr<LevelChunk> *(__fastcall *createNewChunk)(ChunkSource *this, std::shared_ptr<LevelChunk> *result, const ChunkPos *, ChunkSource::LoadMode);
  std::shared_ptr<LevelChunk> *(__fastcall *getOrLoadChunk)(ChunkSource *this, std::shared_ptr<LevelChunk> *result, const ChunkPos *, ChunkSource::LoadMode);
  bool (__fastcall *postProcess)(ChunkSource *this, ChunkViewSource *);
  void (__fastcall *checkAndReplaceChunk)(ChunkSource *this, ChunkViewSource *, LevelChunk *);
  void (__fastcall *loadChunk)(ChunkSource *this, LevelChunk *, bool);
  void (__fastcall *postProcessMobsAt)(ChunkSource *this, BlockSource *, int, int, Random *);
  bool (__fastcall *saveLiveChunk)(ChunkSource *this, LevelChunk *);
  void (__fastcall *hintDiscardBatchBegin)(ChunkSource *this);
  void (__fastcall *hintDiscardBatchEnd)(ChunkSource *this);
  void (__fastcall *acquireDiscarded)(ChunkSource *this, std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>);
  void (__fastcall *compact)(ChunkSource *this);
  void (__fastcall *flushPendingWrites)(ChunkSource *this);
  bool (__fastcall *isWithinWorldLimit)(ChunkSource *this, const ChunkPos *);
  const std::unordered_map<ChunkPos,std::weak_ptr<LevelChunk>> *(__fastcall *getChunkMap)(ChunkSource *this);
  const std::unordered_map<ChunkPos,std::weak_ptr<LevelChunk>> *(__fastcall *getStorage)(ChunkSource *this);
  void (__fastcall *clearDeletedEntities)(ChunkSource *this);
  void (__fastcall *removeDimensionData)(ChunkSource *this, const std::unordered_set<AutomaticID<Dimension,int>> *);
  bool (__fastcall *hasChunk)(ChunkSource *this, const ChunkPos *, AutomaticID<Dimension,int>);
  bool (__fastcall *canCreateViews)(ChunkSource *this);
};

# LakeFeature_vtbl

struct /*VFT*/ LakeFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacyEmeraldOreFeature

struct __cppobj LegacyEmeraldOreFeature : Feature
{
};

# LegacyEmeraldOreFeature_vtbl

struct /*VFT*/ LegacyEmeraldOreFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacyFlowerFeature

struct __cppobj LegacyFlowerFeature : Feature
{
  FlowerPlacementType mPlacementType;
  OwnerPtrT<SharePtrRefTraits<PerlinSimplexNoise> > mBiomeInfoNoise;
};

# LegacyFlowerFeature_vtbl

struct /*VFT*/ LegacyFlowerFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacyForestFoliageFeature

struct __cppobj LegacyForestFoliageFeature : Feature
{
  LegacyForestFoliageFeature::Type mForestType;
  WeakRefT<FeatureRefTraits> mHugeMushroomFeature;
  WeakRefT<FeatureRefTraits> mTallGrassFeature;
  WeakRefT<FeatureRefTraits> mDoublePlantFeature;
  WeakRefT<FeatureRefTraits> mRoofTreeFeature;
  WeakRefT<FeatureRefTraits> mBirchFeature;
  WeakRefT<FeatureRefTraits> mFancyTreeFeature;
  WeakRefT<FeatureRefTraits> mOakFeature;
};

# LegacyForestFoliageFeature_vtbl

struct /*VFT*/ LegacyForestFoliageFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacyForestRockFeature

struct __cppobj LegacyForestRockFeature : Feature
{
  WeakRefT<FeatureRefTraits> mForestRockFeature;
};

# LegacyForestRockFeature_vtbl

struct /*VFT*/ LegacyForestRockFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacyIceFeature

struct __cppobj LegacyIceFeature : Feature
{
  WeakRefT<FeatureRefTraits> mIcebergFeature;
  WeakRefT<FeatureRefTraits> mBlueIceFeature;
};

# LegacyIceFeature_vtbl

struct /*VFT*/ LegacyIceFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacySmallMushroomsFeature

struct __cppobj LegacySmallMushroomsFeature : Feature
{
  WeakRefT<FeatureRefTraits> mBrownMushroomFeature;
  WeakRefT<FeatureRefTraits> mRedMushroomFeature;
};

# LegacySmallMushroomsFeature_vtbl

struct /*VFT*/ LegacySmallMushroomsFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacySpringsFeature

struct __cppobj LegacySpringsFeature : Feature
{
  WeakRefT<FeatureRefTraits> mWaterSpringFeature;
  WeakRefT<FeatureRefTraits> mLavaSpringFeature;
};

# LegacySpringsFeature_vtbl

struct /*VFT*/ LegacySpringsFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacySwampFoliageFeature

struct __cppobj LegacySwampFoliageFeature : Feature
{
  std::function<WeakRefT<FeatureRefTraits> __cdecl(Random &)> mGetTreeFeature;
  WeakRefT<FeatureRefTraits> mSeagrassFeature;
  WeakRefT<FeatureRefTraits> mTallGrassFeature;
  WeakRefT<FeatureRefTraits> mHugeMushroomFeature;
  WeakRefT<FeatureRefTraits> mSwampTreeFeature;
};

# LegacySwampFoliageFeature_vtbl

struct /*VFT*/ LegacySwampFoliageFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
  bool (__fastcall *place)(Feature *this, BlockSource *, const BlockPos *, Random *);
};

# LegacySwampFoliageFeature::{ctor}::__l2::<lambda_e49756fce4af15705956ac49ff850bca>

struct __cppobj LegacySwampFoliageFeature::{ctor}::__l2::<lambda_e49756fce4af15705956ac49ff850bca>
{
  LegacySwampFoliageFeature *const __this;
};

# LegacyTreeFeature

struct __cppobj LegacyTreeFeature : IFeature
{
  std::unique_ptr<PerlinSimplexNoise> mBiomeInfoNoise;
  WeakRefT<FeatureRefTraits> mTallGrassFeature;
  float mTreeCount;
  std::vector<WeakRefT<FeatureRefTraits>> mFeatureRefs;
  std::function<WeakRefT<FeatureRefTraits> __cdecl(Random &)> mGetTreeFeature;
};

# LegacyTreeFeature_vtbl

struct /*VFT*/ LegacyTreeFeature_vtbl
{
  void (__fastcall *~IFeature)(IFeature *this);
  std::optional<BlockPos> *(__fastcall *place)(IFeature *this, std::optional<BlockPos> *result, IBlockWorldGenAPI *, const BlockPos *, Random *, RenderParams *);
  std::string *(__fastcall *getStructureName)(IFeature *this, std::string *result);
  bool (__fastcall *parse)(IFeature *this, const rapidjson::GenericValue<rapidjson::UTF8<char>,rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > *, IWorldRegistriesProvider *);
};

# LegacyTreeFeature::{ctor}::__l20::<lambda_5a345c7c8128446f21310c0c78c8620c>

struct __cppobj LegacyTreeFeature::{ctor}::__l20::<lambda_5a345c7c8128446f21310c0c78c8620c>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l19::<lambda_7322c710387cce65316144e0c6dfadd8>

struct __cppobj LegacyTreeFeature::{ctor}::__l19::<lambda_7322c710387cce65316144e0c6dfadd8>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l18::<lambda_1ef0cf4d8ab8a0d7264fea5b522a8fe3>

struct __cppobj LegacyTreeFeature::{ctor}::__l18::<lambda_1ef0cf4d8ab8a0d7264fea5b522a8fe3>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l17::<lambda_23de7daddca580ea6a68490f7ddaa725>

struct __cppobj LegacyTreeFeature::{ctor}::__l17::<lambda_23de7daddca580ea6a68490f7ddaa725>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l16::<lambda_d4838563cc98a335ba3065ecc46fed51>

struct __cppobj LegacyTreeFeature::{ctor}::__l16::<lambda_d4838563cc98a335ba3065ecc46fed51>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l15::<lambda_a7eab806e0466cbf0d05a65603a0806e>

struct __cppobj LegacyTreeFeature::{ctor}::__l15::<lambda_a7eab806e0466cbf0d05a65603a0806e>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l14::<lambda_6b71c04b561dcad201c6d8f525627519>

struct __cppobj LegacyTreeFeature::{ctor}::__l14::<lambda_6b71c04b561dcad201c6d8f525627519>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l13::<lambda_80eacabbb0ca4e992756f763e6ad45d9>

struct __cppobj LegacyTreeFeature::{ctor}::__l13::<lambda_80eacabbb0ca4e992756f763e6ad45d9>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l12::<lambda_92c5c501e81af4aa4f278ad11177e404>

struct __cppobj LegacyTreeFeature::{ctor}::__l12::<lambda_92c5c501e81af4aa4f278ad11177e404>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l11::<lambda_8344e28e1007a638f54b3480ba86a346>

struct __cppobj LegacyTreeFeature::{ctor}::__l11::<lambda_8344e28e1007a638f54b3480ba86a346>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l10::<lambda_79f8e613a7cc77ba423801c428bc0310>

struct __cppobj LegacyTreeFeature::{ctor}::__l10::<lambda_79f8e613a7cc77ba423801c428bc0310>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l9::<lambda_5acc277a611f783e1d2e9ddcb86795b2>

struct __cppobj LegacyTreeFeature::{ctor}::__l9::<lambda_5acc277a611f783e1d2e9ddcb86795b2>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l8::<lambda_773e0b6719296fe26ae31de241a248ab>

struct __cppobj LegacyTreeFeature::{ctor}::__l8::<lambda_773e0b6719296fe26ae31de241a248ab>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l7::<lambda_5f4aaa4f2ff7bb274e9241c9e7872d58>

struct __cppobj LegacyTreeFeature::{ctor}::__l7::<lambda_5f4aaa4f2ff7bb274e9241c9e7872d58>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l6::<lambda_a5dcc2f29b3465beac51a2e25c266e2c>

struct __cppobj LegacyTreeFeature::{ctor}::__l6::<lambda_a5dcc2f29b3465beac51a2e25c266e2c>
{
  LegacyTreeFeature *const __this;
};

# LegacyTreeFeature::{ctor}::__l5::<lambda_78915429c8c5074af59c099704430a16>

struct __cppobj LegacyTreeFeature::{ctor}::__l5::<lambda_78915429c8c5074af59c099704430a16>
{
  LegacyTreeFeature *const __this;
};

# LayerZooms::ZoomBase<2,1>

struct __cppobj LayerZooms::ZoomBase<2,1>
{
};

# LayerZooms::Zoom4xVoronoi

struct __cppobj LayerZooms::Zoom4xVoronoi : LayerZooms::ZoomBase<2,1>
{
};

# LayerZooms::ZoomBase<1,0>

struct __cppobj LayerZooms::ZoomBase<1,0>
{
};

# LayerDetails::WorkingData<enum LayerValues::Terrain,enum LayerValues::Terrain>

struct __cppobj LayerDetails::WorkingData<enum LayerValues::Terrain,enum LayerValues::Terrain> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<enum LayerValues::Terrain> mParentArea;
  LayerDetails::BufferAccessor<enum LayerValues::Terrain> mResult;
};

# LayerZooms::Zoom2xFuzzy

struct __cppobj LayerZooms::Zoom2xFuzzy : LayerZooms::ZoomBase<1,0>
{
};

# LayerZooms::Zoom2x

struct __cppobj LayerZooms::Zoom2x : LayerZooms::ZoomBase<1,0>
{
};

# LayerDetails::TransferData<LayerValues::PreBiome>

struct __cppobj LayerDetails::TransferData<LayerValues::PreBiome> : LayerDetails::Storage
{
};

# Layer<LayerValues::PreBiome>

struct __cppobj Layer<LayerValues::PreBiome> : LayerDetails::LayerBase
{
};

# Layer<LayerValues::PreBiome>_vtbl

struct /*VFT*/ Layer<LayerValues::PreBiome>_vtbl
{
  void (__fastcall *~LayerBase)(LayerDetails::LayerBase *this);
  void (__fastcall *init)(LayerDetails::LayerBase *this, __int64);
  LayerDetails::TransferData<LayerValues::PreBiome> *(__fastcall *_allocateAndFill)(Layer<LayerValues::PreBiome> *this, LayerDetails::TransferData<LayerValues::PreBiome> *result, unsigned __int64, int, int, unsigned int, unsigned int);
};

# LayerDetails::WorkingData<LayerValues::PreBiome,enum LayerValues::Terrain>

struct __cppobj LayerDetails::WorkingData<LayerValues::PreBiome,enum LayerValues::Terrain> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<enum LayerValues::Terrain> mParentArea;
  LayerDetails::BufferAccessor<LayerValues::PreBiome> mResult;
};

# LayerDetails::WorkingData<LayerValues::PreBiome,LayerValues::PreBiome>

struct __cppobj LayerDetails::WorkingData<LayerValues::PreBiome,LayerValues::PreBiome> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<LayerValues::PreBiome> mParentArea;
  LayerDetails::BufferAccessor<LayerValues::PreBiome> mResult;
};

# LayerDetails::WorkingData<Biome *,LayerValues::PreBiome>

struct __cppobj LayerDetails::WorkingData<Biome *,LayerValues::PreBiome> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<LayerValues::PreBiome> mParentArea;
  LayerDetails::BufferAccessor<Biome *> mResult;
};

# LayerDetails::WorkingData<int,Biome *>

struct __cppobj LayerDetails::WorkingData<int,Biome *> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<Biome *> mParentArea;
  LayerDetails::BufferAccessor<int> mResult;
};

# LayerDetails::TransferData<bool>

struct __cppobj LayerDetails::TransferData<bool> : LayerDetails::Storage
{
};

# Layer<bool>

struct __cppobj Layer<bool> : LayerDetails::LayerBase
{
};

# Layer<bool>_vtbl

struct /*VFT*/ Layer<bool>_vtbl
{
  void (__fastcall *~LayerBase)(LayerDetails::LayerBase *this);
  void (__fastcall *init)(LayerDetails::LayerBase *this, __int64);
  LayerDetails::TransferData<bool> *(__fastcall *_allocateAndFill)(Layer<bool> *this, LayerDetails::TransferData<bool> *result, unsigned __int64, int, int, unsigned int, unsigned int);
};

# LayerDetails::BufferAccessor<bool>

struct __cppobj LayerDetails::BufferAccessor<bool>
{
  char *mStorage;
  unsigned __int64 mCount;
};

# LayerDetails::WorkingData<bool,int>

struct __cppobj LayerDetails::WorkingData<bool,int> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<int> mParentArea;
  LayerDetails::BufferAccessor<bool> mResult;
};

# LayerDetails::WorkingData<bool,bool>

struct __cppobj LayerDetails::WorkingData<bool,bool> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<bool> mParentArea;
  LayerDetails::BufferAccessor<bool> mResult;
};

# LayerFilters::FilterBase<3,3,bool,bool>

struct __cppobj LayerFilters::FilterBase<3,3,bool,bool>
{
};

# LayerFilters::Smooth<bool>

struct __cppobj LayerFilters::Smooth<bool> : LayerFilters::FilterBase<3,3,bool,bool>
{
};

# LayerDetails::NeighborhoodReader<bool,1,1>

struct __cppobj LayerDetails::NeighborhoodReader<bool,1,1>
{
  const LayerDetails::BufferAccessor<bool> *mSourceData;
  int mTopLeft;
  int mW;
};

# LayerFilters::FilteredTransformation<FilteredTransformationAttributes<PreHillsEdgeTransformation> >

struct __cppobj LayerFilters::FilteredTransformation<FilteredTransformationAttributes<PreHillsEdgeTransformation> > : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  const TagRegistry<IDType<BiomeTagIDType>,IDType<BiomeTagSetIDType> > *mTagRegistry;
};

# LayerFilters::FilteredTransformation<FilteredTransformationAttributes<LegacyPreHillsEdgeTransformation> >

struct __cppobj LayerFilters::FilteredTransformation<FilteredTransformationAttributes<LegacyPreHillsEdgeTransformation> > : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  const TagRegistry<IDType<BiomeTagIDType>,IDType<BiomeTagSetIDType> > *mTagRegistry;
};

# LayerFilters::FilteredTransformation<FilteredTransformationAttributes<PostShoreEdgeTransformation> >

struct __cppobj LayerFilters::FilteredTransformation<FilteredTransformationAttributes<PostShoreEdgeTransformation> > : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
  const TagRegistry<IDType<BiomeTagIDType>,IDType<BiomeTagSetIDType> > *mTagRegistry;
};

# LayerFilters::Smooth<Biome *>

struct __cppobj LayerFilters::Smooth<Biome *> : LayerFilters::FilterBase<3,3,Biome *,Biome *>
{
};

# LayerDetails::WorkingData<enum BiomeTemperatureCategory,enum BiomeTemperatureCategory>

struct __cppobj LayerDetails::WorkingData<enum BiomeTemperatureCategory,enum BiomeTemperatureCategory> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<enum BiomeTemperatureCategory> mParentArea;
  LayerDetails::BufferAccessor<enum BiomeTemperatureCategory> mResult;
};

# LayerDetails::BufferAccessor<bool>::TypedBits

struct __cppobj LayerDetails::BufferAccessor<bool>::TypedBits
{
  char *mLocation;
};

# LayerDetails::WorkingData<int,int>

struct __cppobj LayerDetails::WorkingData<int,int> : LayerDetails::Storage
{
  const LayerDetails::BufferAccessor<int> mParentArea;
  LayerDetails::BufferAccessor<int> mResult;
};

# LVECTOR_STRUCT

struct LVECTOR_STRUCT
{
  int length;
  int *data;
  int *imag;
};

# leveldb::InternalFilterPolicy_vtbl

struct /*VFT*/ leveldb::InternalFilterPolicy_vtbl
{
  void (__fastcall *~FilterPolicy)(leveldb::FilterPolicy *this);
  const char *(__fastcall *Name)(leveldb::FilterPolicy *this);
  void (__fastcall *CreateFilter)(leveldb::FilterPolicy *this, const leveldb::Slice *, int, std::string *);
  bool (__fastcall *KeyMayMatch)(leveldb::FilterPolicy *this, const leveldb::Slice *, const leveldb::Slice *);
};

# leveldb::port::Mutex

struct __cppobj leveldb::port::Mutex
{
  std::mutex mutex;
};

# leveldb::port::CondVar

struct __cppobj leveldb::port::CondVar
{
  std::condition_variable cv_;
  leveldb::port::Mutex *const mu_;
};

# leveldb::FilterBlockReader

struct __cppobj leveldb::FilterBlockReader
{
  const leveldb::FilterPolicy *policy_;
  const char *data_;
  const char *offset_;
  unsigned __int64 num_;
  unsigned __int64 base_lg_;
};

# leveldb::Block

struct __cppobj __declspec(align(4)) leveldb::Block
{
  const char *data_;
  unsigned __int64 size_;
  unsigned int restart_offset_;
  bool owned_;
};

# leveldb::Table::Rep

struct __cppobj leveldb::Table::Rep
{
  leveldb::Options options;
  leveldb::Status status;
  leveldb::RandomAccessFile *file;
  unsigned __int64 cache_id;
  leveldb::FilterBlockReader *filter;
  const char *filter_data;
  leveldb::BlockHandle metaindex_handle;
  leveldb::Block *index_block;
};

# leveldb::Table

struct __cppobj leveldb::Table
{
  leveldb::Table::Rep *rep_;
};

# leveldb::InternalKeyComparator_vtbl

struct /*VFT*/ leveldb::InternalKeyComparator_vtbl
{
  void (__fastcall *~Comparator)(leveldb::Comparator *this);
  int (__fastcall *Compare)(leveldb::Comparator *this, const leveldb::Slice *, const leveldb::Slice *);
  const char *(__fastcall *Name)(leveldb::Comparator *this);
  void (__fastcall *FindShortestSeparator)(leveldb::Comparator *this, std::string *, const leveldb::Slice *);
  void (__fastcall *FindShortSuccessor)(leveldb::Comparator *this, std::string *);
};

# leveldb::TableCache

struct __cppobj leveldb::TableCache
{
  leveldb::Env *const env_;
  const std::string dbname_;
  const leveldb::Options *options_;
  leveldb::Cache *cache_;
};

# leveldb::FilterBlockBuilder

struct __cppobj leveldb::FilterBlockBuilder
{
  const leveldb::FilterPolicy *policy_;
  std::string keys_;
  std::vector<unsigned __int64> start_;
  std::string result_;
  std::vector<leveldb::Slice> tmp_keys_;
  std::vector<unsigned int> filter_offsets_;
};

# leveldb::TableBuilder::Rep

struct __cppobj leveldb::TableBuilder::Rep
{
  leveldb::Options options;
  leveldb::Options index_block_options;
  leveldb::WritableFile *file;
  unsigned __int64 offset;
  leveldb::Status status;
  leveldb::BlockBuilder data_block;
  leveldb::BlockBuilder index_block;
  std::string last_key;
  __int64 num_entries;
  bool closed;
  leveldb::FilterBlockBuilder *filter_block;
  bool pending_index_entry;
  leveldb::BlockHandle pending_handle;
  std::string compressed_output;
};

# leveldb::TableBuilder

struct __cppobj leveldb::TableBuilder
{
  leveldb::TableBuilder::Rep *rep_;
};

# leveldb::DBImpl::Writer

struct __cppobj leveldb::DBImpl::Writer
{
  leveldb::Status status;
  leveldb::WriteBatch *batch;
  bool sync;
  bool done;
  leveldb::port::CondVar cv;
};

# leveldb::SnapshotImpl

struct __cppobj leveldb::SnapshotImpl : leveldb::Snapshot
{
  unsigned __int64 number_;
  leveldb::SnapshotImpl *prev_;
  leveldb::SnapshotImpl *next_;
  leveldb::SnapshotList *list_;
};

# leveldb::SnapshotList

struct __cppobj leveldb::SnapshotList
{
  leveldb::SnapshotImpl list_;
};

# leveldb::SnapshotImpl_vtbl

struct /*VFT*/ leveldb::SnapshotImpl_vtbl
{
  void (__fastcall *~Snapshot)(leveldb::Snapshot *this);
};

# leveldb::VersionSet

struct __cppobj leveldb::VersionSet
{
  leveldb::Env *const env_;
  const std::string dbname_;
  const leveldb::Options *const options_;
  leveldb::TableCache *const table_cache_;
  const leveldb::InternalKeyComparator icmp_;
  unsigned __int64 next_file_number_;
  unsigned __int64 manifest_file_number_;
  unsigned __int64 last_sequence_;
  unsigned __int64 log_number_;
  unsigned __int64 prev_log_number_;
  leveldb::WritableFile *descriptor_file_;
  leveldb::log::Writer *descriptor_log_;
  leveldb::Version dummy_versions_;
  leveldb::Version *current_;
  std::string compact_pointer_[7];
};

# leveldb::Version

struct __cppobj __declspec(align(8)) leveldb::Version
{
  leveldb::VersionSet *vset_;
  leveldb::Version *next_;
  leveldb::Version *prev_;
  int refs_;
  std::vector<leveldb::FileMetaData *> files_[7];
  leveldb::FileMetaData *file_to_compact_;
  int file_to_compact_level_;
  long double compaction_score_;
  int compaction_level_;
};

# leveldb::Compaction

struct __cppobj leveldb::Compaction
{
  int level_;
  unsigned __int64 max_output_file_size_;
  leveldb::Version *input_version_;
  leveldb::VersionEdit edit_;
  std::vector<leveldb::FileMetaData *> inputs_[2];
  std::vector<leveldb::FileMetaData *> grandparents_;
  unsigned __int64 grandparent_index_;
  bool seen_key_;
  __int64 overlapped_bytes_;
  unsigned __int64 level_ptrs_[7];
};

# leveldb::VersionSet::LevelSummaryStorage

struct leveldb::VersionSet::LevelSummaryStorage
{
  char buffer[100];
};

# leveldb::MemTable::KeyComparator

struct __cppobj leveldb::MemTable::KeyComparator
{
  const leveldb::InternalKeyComparator comparator;
};

# leveldb::Arena

struct __cppobj leveldb::Arena
{
  char *alloc_ptr_;
  unsigned __int64 alloc_bytes_remaining_;
  std::vector<char *> blocks_;
  leveldb::port::AtomicPointer memory_usage_;
};

# leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Node

struct __cppobj leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Node
{
  const char *const key;
  leveldb::port::AtomicPointer next_[1];
};

# leveldb::Random

struct __cppobj leveldb::Random
{
  unsigned int seed_;
};

# leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>

struct __cppobj __declspec(align(8)) leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>
{
  const leveldb::MemTable::KeyComparator compare_;
  leveldb::Arena *const arena_;
  leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Node *const head_;
  leveldb::port::AtomicPointer max_height_;
  leveldb::Random rnd_;
};

# leveldb::MemTable

struct __cppobj leveldb::MemTable
{
  leveldb::MemTable::KeyComparator comparator_;
  int refs_;
  leveldb::Arena arena_;
  leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator> table_;
};

# leveldb::DBImpl::ManualCompaction

struct __cppobj leveldb::DBImpl::ManualCompaction
{
  int level;
  bool done;
  const leveldb::InternalKey *begin;
  const leveldb::InternalKey *end;
  leveldb::InternalKey tmp_storage;
};

# leveldb::DBImpl::CompactionStats

struct __cppobj leveldb::DBImpl::CompactionStats
{
  __int64 micros;
  __int64 bytes_read;
  __int64 bytes_written;
};

# leveldb::DBImpl

struct __cppobj leveldb::DBImpl : leveldb::DB
{
  leveldb::Env *const env_;
  const leveldb::InternalKeyComparator internal_comparator_;
  const leveldb::InternalFilterPolicy internal_filter_policy_;
  const leveldb::Options options_;
  bool owns_info_log_;
  bool owns_cache_;
  const std::string dbname_;
  leveldb::TableCache *table_cache_;
  leveldb::FileLock *db_lock_;
  leveldb::port::Mutex mutex_;
  leveldb::port::AtomicPointer shutting_down_;
  leveldb::port::CondVar bg_cv_;
  leveldb::MemTable *mem_;
  leveldb::MemTable *imm_;
  leveldb::port::AtomicPointer has_imm_;
  leveldb::WritableFile *logfile_;
  unsigned __int64 logfile_number_;
  leveldb::log::Writer *log_;
  unsigned int seed_;
  std::deque<leveldb::DBImpl::Writer *> writers_;
  leveldb::WriteBatch *tmp_batch_;
  leveldb::SnapshotList snapshots_;
  std::set<unsigned __int64> pending_outputs_;
  bool bg_compaction_scheduled_;
  leveldb::port::AtomicPointer suspending_compaction_;
  leveldb::DBImpl::ManualCompaction *manual_compaction_;
  leveldb::VersionSet *versions_;
  leveldb::Status bg_error_;
  leveldb::DBImpl::CompactionStats stats_[7];
};

# leveldb::DBImpl_vtbl

struct /*VFT*/ leveldb::DBImpl_vtbl
{
  void (__fastcall *~DB)(leveldb::DB *this);
  leveldb::Status *(__fastcall *Put)(leveldb::DB *this, leveldb::Status *result, const leveldb::WriteOptions *, const leveldb::Slice *, const leveldb::Slice *);
  leveldb::Status *(__fastcall *Delete)(leveldb::DB *this, leveldb::Status *result, const leveldb::WriteOptions *, const leveldb::Slice *);
  leveldb::Status *(__fastcall *Write)(leveldb::DB *this, leveldb::Status *result, const leveldb::WriteOptions *, leveldb::WriteBatch *);
  leveldb::Status *(__fastcall *Get)(leveldb::DB *this, leveldb::Status *result, const leveldb::ReadOptions *, const leveldb::Slice *, std::string *);
  leveldb::Iterator *(__fastcall *NewIterator)(leveldb::DB *this, const leveldb::ReadOptions *);
  const leveldb::Snapshot *(__fastcall *GetSnapshot)(leveldb::DB *this);
  void (__fastcall *ReleaseSnapshot)(leveldb::DB *this, const leveldb::Snapshot *);
  bool (__fastcall *GetProperty)(leveldb::DB *this, const leveldb::Slice *, std::string *);
  void (__fastcall *GetApproximateSizes)(leveldb::DB *this, const leveldb::Range *, int, unsigned __int64 *);
  void (__fastcall *CompactRange)(leveldb::DB *this, const leveldb::Slice *, const leveldb::Slice *);
  void (__fastcall *SuspendCompaction)(leveldb::DB *this);
  void (__fastcall *ResumeCompaction)(leveldb::DB *this);
};

# leveldb::DBImpl::CompactionState

struct __cppobj leveldb::DBImpl::CompactionState
{
  leveldb::Compaction *const compaction;
  unsigned __int64 smallest_snapshot;
  std::vector<leveldb::DBImpl::CompactionState::Output> outputs;
  leveldb::WritableFile *outfile;
  leveldb::TableBuilder *builder;
  unsigned __int64 total_bytes;
};

# leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Iterator

struct __cppobj leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Iterator
{
  const leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator> *list_;
  leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Node *node_;
};

# leveldb::Version::LevelFileNumIterator

struct __cppobj __declspec(align(8)) leveldb::Version::LevelFileNumIterator : leveldb::Iterator
{
  const leveldb::InternalKeyComparator icmp_;
  const std::vector<leveldb::FileMetaData *> *const flist_;
  unsigned int index_;
  char value_buf_[16];
};

# leveldb::Version::LevelFileNumIterator_vtbl

struct /*VFT*/ leveldb::Version::LevelFileNumIterator_vtbl
{
  void (__fastcall *~Iterator)(leveldb::Iterator *this);
  bool (__fastcall *Valid)(leveldb::Iterator *this);
  void (__fastcall *SeekToFirst)(leveldb::Iterator *this);
  void (__fastcall *SeekToLast)(leveldb::Iterator *this);
  void (__fastcall *Seek)(leveldb::Iterator *this, const leveldb::Slice *);
  void (__fastcall *Next)(leveldb::Iterator *this);
  void (__fastcall *Prev)(leveldb::Iterator *this);
  leveldb::Slice *(__fastcall *key)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Slice *(__fastcall *value)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Status *(__fastcall *status)(leveldb::Iterator *this, leveldb::Status *result);
};

# leveldb::WriteBatchInternal

struct __cppobj leveldb::WriteBatchInternal
{
};

# leveldb::log::Reader::Reporter

struct __cppobj leveldb::log::Reader::Reporter
{
  leveldb::log::Reader::Reporter_vtbl *__vftable /*VFT*/;
};

# leveldb::log::Reader::Reporter_vtbl

struct /*VFT*/ leveldb::log::Reader::Reporter_vtbl
{
  void (__fastcall *~Reporter)(leveldb::log::Reader::Reporter *this);
  void (__fastcall *Corruption)(leveldb::log::Reader::Reporter *this, unsigned __int64, const leveldb::Status *);
};

# leveldb::IterState

struct leveldb::IterState
{
  leveldb::port::Mutex *mu;
  leveldb::Version *version;
  leveldb::MemTable *mem;
  leveldb::MemTable *imm;
};

# leveldb::Block::Iter

struct __cppobj leveldb::Block::Iter : leveldb::Iterator
{
  const leveldb::Comparator *const comparator_;
  const char *const data_;
  const unsigned int restarts_;
  const unsigned int num_restarts_;
  unsigned int current_;
  unsigned int restart_index_;
  std::string key_;
  leveldb::Slice value_;
  leveldb::Status status_;
};

# leveldb::Block::Iter_vtbl

struct /*VFT*/ leveldb::Block::Iter_vtbl
{
  void (__fastcall *~Iterator)(leveldb::Iterator *this);
  bool (__fastcall *Valid)(leveldb::Iterator *this);
  void (__fastcall *SeekToFirst)(leveldb::Iterator *this);
  void (__fastcall *SeekToLast)(leveldb::Iterator *this);
  void (__fastcall *Seek)(leveldb::Iterator *this, const leveldb::Slice *);
  void (__fastcall *Next)(leveldb::Iterator *this);
  void (__fastcall *Prev)(leveldb::Iterator *this);
  leveldb::Slice *(__fastcall *key)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Slice *(__fastcall *value)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Status *(__fastcall *status)(leveldb::Iterator *this, leveldb::Status *result);
};

# leveldb::DBIter

struct __cppobj leveldb::DBIter : leveldb::Iterator
{
  leveldb::DBImpl *db_;
  const leveldb::Comparator *const user_comparator_;
  leveldb::Iterator *const iter_;
  const unsigned __int64 sequence_;
  leveldb::Status status_;
  std::string saved_key_;
  std::string saved_value_;
  leveldb::DBIter::Direction direction_;
  bool valid_;
  leveldb::Random rnd_;
  int bytes_counter_;
};

# leveldb::MemTableIterator

struct __cppobj leveldb::MemTableIterator : leveldb::Iterator
{
  leveldb::SkipList<char const *,leveldb::MemTable::KeyComparator>::Iterator iter_;
  std::string tmp_;
};

# leveldb::MemTableIterator_vtbl

struct /*VFT*/ leveldb::MemTableIterator_vtbl
{
  void (__fastcall *~Iterator)(leveldb::Iterator *this);
  bool (__fastcall *Valid)(leveldb::Iterator *this);
  void (__fastcall *SeekToFirst)(leveldb::Iterator *this);
  void (__fastcall *SeekToLast)(leveldb::Iterator *this);
  void (__fastcall *Seek)(leveldb::Iterator *this, const leveldb::Slice *);
  void (__fastcall *Next)(leveldb::Iterator *this);
  void (__fastcall *Prev)(leveldb::Iterator *this);
  leveldb::Slice *(__fastcall *key)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Slice *(__fastcall *value)(leveldb::Iterator *this, leveldb::Slice *result);
  leveldb::Status *(__fastcall *status)(leveldb::Iterator *this, leveldb::Status *result);
};

# leveldb::Repairer::TableInfo

struct __cppobj leveldb::Repairer::TableInfo
{
  leveldb::FileMetaData meta;
  unsigned __int64 max_sequence;
};

# leveldb::Repairer

struct __cppobj leveldb::Repairer
{
  const std::string dbname_;
  leveldb::Env *const env_;
  const leveldb::InternalKeyComparator icmp_;
  const leveldb::InternalFilterPolicy ipolicy_;
  const leveldb::Options options_;
  bool owns_info_log_;
  bool owns_cache_;
  leveldb::TableCache *table_cache_;
  leveldb::VersionEdit edit_;
  std::vector<std::string> manifests_;
  std::vector<unsigned __int64> table_numbers_;
  std::vector<unsigned __int64> logs_;
  std::vector<leveldb::Repairer::TableInfo> tables_;
  unsigned __int64 next_file_number_;
};

# leveldb::TableAndFile

struct leveldb::TableAndFile
{
  leveldb::RandomAccessFile *file;
  leveldb::Table *table;
};

# leveldb::Saver

struct __cppobj leveldb::Saver
{
  leveldb::SaverState state;
  const leveldb::Comparator *ucmp;
  leveldb::Slice user_key;
  std::string *value;
};

# leveldb::MemTableInserter

struct __cppobj leveldb::MemTableInserter : leveldb::WriteBatch::Handler
{
  unsigned __int64 sequence_;
  leveldb::MemTable *mem_;
};

# leveldb::FileState

struct __cppobj leveldb::FileState
{
  leveldb::port::Mutex refs_mutex_;
  int refs_;
  std::vector<char *> blocks_;
  unsigned __int64 size_;
};

# leveldb::RandomAccessFileImpl

struct __cppobj leveldb::RandomAccessFileImpl : leveldb::RandomAccessFile
{
  leveldb::FileState *file_;
};

# leveldb::WritableFileImpl

struct __cppobj leveldb::WritableFileImpl : leveldb::WritableFile
{
  leveldb::FileState *file_;
};

# leveldb::SequentialFileImpl

struct __cppobj leveldb::SequentialFileImpl : leveldb::SequentialFile
{
  leveldb::FileState *file_;
  unsigned __int64 pos_;
};

# leveldb::NoOpLogger

struct __cppobj leveldb::NoOpLogger : leveldb::Logger
{
};

# leveldb::InMemoryEnv

struct __cppobj leveldb::InMemoryEnv : leveldb::EnvWrapper
{
  leveldb::port::Mutex mutex_;
  std::map<std::string,leveldb::FileState *> file_map_;
};

# leveldb::EmptyIterator

struct __cppobj leveldb::EmptyIterator : leveldb::Iterator
{
  leveldb::Status status_;
};

# leveldb::IteratorWrapper

struct __cppobj leveldb::IteratorWrapper
{
  leveldb::Iterator *iter_;
  bool valid_;
  leveldb::Slice key_;
};

# leveldb::MergingIterator

struct __cppobj __declspec(align(8)) leveldb::MergingIterator : leveldb::Iterator
{
  const leveldb::Comparator *comparator_;
  leveldb::IteratorWrapper *children_;
  int n_;
  leveldb::IteratorWrapper *current_;
  leveldb::MergingIterator::Direction direction_;
};

# leveldb::TwoLevelIterator

struct __cppobj leveldb::TwoLevelIterator : leveldb::Iterator
{
  leveldb::Iterator *(__fastcall *block_function_)(void *, const leveldb::ReadOptions *, const leveldb::Slice *);
  void *arg_;
  const leveldb::ReadOptions options_;
  leveldb::Status status_;
  leveldb::IteratorWrapper index_iter_;
  leveldb::IteratorWrapper data_iter_;
  std::string data_block_handle_;
};

# leveldb::BloomFilterPolicy

struct __cppobj leveldb::BloomFilterPolicy : leveldb::FilterPolicy
{
  unsigned __int64 bits_per_key_;
  unsigned __int64 k_;
};

# leveldb::LRUHandle

struct __declspec(align(4)) leveldb::LRUHandle
{
  void *value;
  void (__fastcall *deleter)(const leveldb::Slice *, void *);
  leveldb::LRUHandle *next_hash;
  leveldb::LRUHandle *next;
  leveldb::LRUHandle *prev;
  unsigned __int64 charge;
  unsigned __int64 key_length;
  bool in_cache;
  unsigned int refs;
  unsigned int hash;
  char key_data[1];
};

# leveldb::HandleTable

struct __cppobj leveldb::HandleTable
{
  unsigned int length_;
  unsigned int elems_;
  leveldb::LRUHandle **list_;
};

# leveldb::LRUCache

struct __cppobj leveldb::LRUCache
{
  unsigned __int64 capacity_;
  leveldb::port::Mutex mutex_;
  unsigned __int64 usage_;
  leveldb::LRUHandle lru_;
  leveldb::LRUHandle in_use_;
  leveldb::HandleTable table_;
};

# leveldb::ShardedLRUCache

struct __cppobj leveldb::ShardedLRUCache : leveldb::Cache
{
  leveldb::LRUCache shard_[16];
  leveldb::port::Mutex id_mutex_;
  unsigned __int64 last_id_;
};

# leveldb::BytewiseComparatorImpl

struct __cppobj leveldb::BytewiseComparatorImpl : leveldb::Comparator
{
};

# leveldb::Histogram

struct __cppobj leveldb::Histogram
{
  long double min_;
  long double max_;
  long double num_;
  long double sum_;
  long double sum_squares_;
  long double buckets_[154];
};

# leveldb::WinLogger

struct __cppobj leveldb::WinLogger : leveldb::Logger
{
  _iobuf *file_;
};

# leveldb::WinLogger_vtbl

struct /*VFT*/ leveldb::WinLogger_vtbl
{
  void (__fastcall *~Logger)(leveldb::Logger *this);
  void (__fastcall *Logv)(leveldb::Logger *this, const char *, char *);
};

# linkedlist_datablock_internal_s

struct __declspec(align(8)) linkedlist_datablock_internal_s
{
  linkedlist_datablock_internal_s *next_datablock;
  unsigned int avail_in_this_block;
  unsigned int filled_in_this_block;
  unsigned int unused;
  unsigned __int8 data[4080];
};

# linkedlist_data_s

struct linkedlist_data_s
{
  linkedlist_datablock_internal_s *first_block;
  linkedlist_datablock_internal_s *last_block;
};

# lhash_st_OPENSSL_STRING

struct lhash_st_OPENSSL_STRING
{
  lhash_st_OPENSSL_STRING::lh_OPENSSL_STRING_dummy dummy;
};

# lhash_st_ERR_STRING_DATA

struct lhash_st_ERR_STRING_DATA
{
  lhash_st_ERR_STRING_DATA::lh_ERR_STRING_DATA_dummy dummy;
};

# lhash_st_OPENSSL_CSTRING

struct lhash_st_OPENSSL_CSTRING
{
  lhash_st_OPENSSL_CSTRING::lh_OPENSSL_CSTRING_dummy dummy;
};

# localdummyobject

struct localdummyobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *localdict;
  _object *weakreflist;
};

# localobject

struct localobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *key;
  _object *args;
  _object *kw;
  _object *weakreflist;
  _object *dummies;
  _object *wr_callback;
};

# lockobject

struct lockobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  void *lock_lock;
  _object *in_weakreflist;
};

# listiterobject

struct listiterobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  int it_index;
  PyListObject *it_seq;
};

# listreviterobject

struct listreviterobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  __int64 it_index;
  PyListObject *it_seq;
};

# LodestoneCompassSystem::tick::__l5::<lambda_bffbe1feda98bef2b7e3037e07fc1515>

struct __cppobj LodestoneCompassSystem::tick::__l5::<lambda_bffbe1feda98bef2b7e3037e07fc1515>
{
  LodestoneCompassSystem *const __this;
};

# LevelLoader::_importLevel::__l2::<lambda_ef1a8fc506d0b5dfc78e5f6835e03656>::()::__l23::<lambda_5f482e7daa604fea541a0a6d2ab3ac0c>

struct __cppobj LevelLoader::_importLevel::__l2::<lambda_ef1a8fc506d0b5dfc78e5f6835e03656>::()::__l23::<lambda_5f482e7daa604fea541a0a6d2ab3ac0c>
{
  LevelLoader *const __this;
  const LevelSummary *summary;
};

# LevelLoader::checkForPendingLevelImport::__l14::<lambda_819ffad9b3936ec2639f4bc0b21a06cb>

struct __cppobj LevelLoader::checkForPendingLevelImport::__l14::<lambda_819ffad9b3936ec2639f4bc0b21a06cb>
{
  LevelLoader *const __this;
};

# LivePlayerRenderer::render::__l14::<lambda_8ece10a70ffa3c7b7a417aaeb3793433>::()::__l2::Literal

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_8ece10a70ffa3c7b7a417aaeb3793433>::()::__l2::Literal
{
};

# LivePlayerRenderer::render::__l14::<lambda_a245a65f08481e502c2abb064ba22d9b>::()::__l2::Literal

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_a245a65f08481e502c2abb064ba22d9b>::()::__l2::Literal
{
};

# LivePlayerRenderer::render::__l14::<lambda_6d0ffcfb3665a4c43f2a695ab1c2358c>::()::__l2::Literal

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_6d0ffcfb3665a4c43f2a695ab1c2358c>::()::__l2::Literal
{
};

# LivePlayerRenderer::render::__l14::<lambda_6d0ffcfb3665a4c43f2a695ab1c2358c>

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_6d0ffcfb3665a4c43f2a695ab1c2358c>
{
};

# LivePlayerRenderer::render::__l14::<lambda_8ece10a70ffa3c7b7a417aaeb3793433>

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_8ece10a70ffa3c7b7a417aaeb3793433>
{
};

# LivePlayerRenderer::render::__l14::<lambda_a245a65f08481e502c2abb064ba22d9b>

struct __cppobj LivePlayerRenderer::render::__l14::<lambda_a245a65f08481e502c2abb064ba22d9b>
{
};

# LibraryScreenController::_registerBindings::__l2::<lambda_1ad56a19b0aaec404015dfe5e71a7b51>::()::__l5::<lambda_6b1975d96b2b9b52b88e4832ee91648a>

struct __cppobj LibraryScreenController::_registerBindings::__l2::<lambda_1ad56a19b0aaec404015dfe5e71a7b51>::()::__l5::<lambda_6b1975d96b2b9b52b88e4832ee91648a>
{
  LibraryItem *item;
};

# LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_4f0fbf9f691d41dc49368c26c8aab563>::()::__l2::<lambda_6e4a0994f8b849c9dbe85bb5d6f2f7ed>

struct __cppobj LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_4f0fbf9f691d41dc49368c26c8aab563>::()::__l2::<lambda_6e4a0994f8b849c9dbe85bb5d6f2f7ed>
{
  LibraryItemScreenController *const __this;
  const unsigned __int64 index;
};

# LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_4f0fbf9f691d41dc49368c26c8aab563>::()::__l2::<lambda_6e4a0994f8b849c9dbe85bb5d6f2f7ed>::()::__l3::<lambda_c54361d7e78de60974aa3ce5aef40219>

struct __cppobj LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_4f0fbf9f691d41dc49368c26c8aab563>::()::__l2::<lambda_6e4a0994f8b849c9dbe85bb5d6f2f7ed>::()::__l3::<lambda_c54361d7e78de60974aa3ce5aef40219>
{
  LibraryItemScreenController *const __this;
  const unsigned __int64 index;
};

# LibraryItemScreenController::_registerExpandableEventHandlers::__l2::<lambda_504f1c51c45ed55299e1a8b3b4a5e5a0>::()::__l3::<lambda_ee0077935ea1ef97d810fbb755e02f78>

struct __cppobj LibraryItemScreenController::_registerExpandableEventHandlers::__l2::<lambda_504f1c51c45ed55299e1a8b3b4a5e5a0>::()::__l3::<lambda_ee0077935ea1ef97d810fbb755e02f78>
{
  LibraryItemScreenController *const __this;
  unsigned __int64 index;
};

# LibraryScreenController::_registerBindings::__l2::<lambda_58f7c788d2793cd65ab27620d2b58e14>::()::__l5::<lambda_e6a401d9957fa0c6fc5413fac08e528a>

struct __cppobj LibraryScreenController::_registerBindings::__l2::<lambda_58f7c788d2793cd65ab27620d2b58e14>::()::__l5::<lambda_e6a401d9957fa0c6fc5413fac08e528a>
{
  LibraryItem *item;
};

# LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_835e671893d81523f10198403040902a>::()::__l3::<lambda_0968cd6830a9410c48f732a2df38f8c6>

struct __cppobj LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_835e671893d81523f10198403040902a>::()::__l3::<lambda_0968cd6830a9410c48f732a2df38f8c6>
{
  LibraryItemScreenController *const __this;
  const unsigned __int64 index;
};

# LibraryScreenController::{ctor}::__l2::<lambda_e2595befff5f97c37c862491bb6d8dc3>::()::__l2::<lambda_1dcd4f19c11a69eb158656fa99d0d8da>

struct __cppobj LibraryScreenController::{ctor}::__l2::<lambda_e2595befff5f97c37c862491bb6d8dc3>::()::__l2::<lambda_1dcd4f19c11a69eb158656fa99d0d8da>
{
  const LessonItem *item;
  LibraryScreenController *const __this;
};

# LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_f83a362b4b3275278afdfba6ad8196fd>::()::__l3::<lambda_79de0bc703a6b46095d58728db5854f1>

struct __cppobj LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_f83a362b4b3275278afdfba6ad8196fd>::()::__l3::<lambda_79de0bc703a6b46095d58728db5854f1>
{
  LibraryItemScreenController *const __this;
  const unsigned __int64 index;
};

# LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_f88d272e9fe6ad4770165d68281bc662>::()::__l3::<lambda_e129a1358751756e3c93750ba0888655>

struct __cppobj LibraryItemScreenController::_registerExpandableBindings::__l2::<lambda_f88d272e9fe6ad4770165d68281bc662>::()::__l3::<lambda_e129a1358751756e3c93750ba0888655>
{
  LibraryItemScreenController *const __this;
  const unsigned __int64 index;
};

# LocalWorldUploadScreenController::_upload::__l5::<lambda_cd9fe49bcdd4727dcb953eaf088698eb>

struct __cppobj LocalWorldUploadScreenController::_upload::__l5::<lambda_cd9fe49bcdd4727dcb953eaf088698eb>
{
};

# LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_2dde396cbf9efb2b4fa5752340b29976>

struct __cppobj LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_2dde396cbf9efb2b4fa5752340b29976>
{
  LibraryItemScreenController *const __this;
};

# LibraryItemScreenController::{ctor}::__l2::<lambda_94345d9fed63e9cc4e269476701cd45d>

struct __cppobj LibraryItemScreenController::{ctor}::__l2::<lambda_94345d9fed63e9cc4e269476701cd45d>
{
  LibraryItemScreenController *const __this;
};

# LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_cb12cc24375546c8f0a3f0b9043c54a1>

struct __cppobj LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_cb12cc24375546c8f0a3f0b9043c54a1>
{
  LibraryItemScreenController *const __this;
};

# LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_ce1e0bc5a31355f8d0db4350aad5a609>

struct __cppobj LibraryItemScreenController::addStaticScreenVars::__l2::<lambda_ce1e0bc5a31355f8d0db4350aad5a609>
{
  LibraryItemScreenController *const __this;
};

# LayoutVariable::removeDeadDependencies::__l2::<lambda_db6bd5d72ed7ac17333b4b6ec9d0ae04>

struct __cppobj LayoutVariable::removeDeadDependencies::__l2::<lambda_db6bd5d72ed7ac17333b4b6ec9d0ae04>
{
};

# LegacyWorldConversionManager::tryAcquireMissingDlc::__l13::<lambda_36b1a6a7250d3c5f14fef12a0fa67b24>

struct __cppobj LegacyWorldConversionManager::tryAcquireMissingDlc::__l13::<lambda_36b1a6a7250d3c5f14fef12a0fa67b24>
{
};

# LibraryCollection::refresh::__l6::<lambda_625cf80284d9b76536a3cf17c9446ab6>

struct __cppobj LibraryCollection::refresh::__l6::<lambda_625cf80284d9b76536a3cf17c9446ab6>
{
  LibraryCollection *const __this;
  const std::shared_ptr<LessonItem> *item;
};

# LibraryCollection::refresh::__l6::<lambda_c782c9653efa89f71027ae78b27ab52f>

struct __cppobj LibraryCollection::refresh::__l6::<lambda_c782c9653efa89f71027ae78b27ab52f>
{
  LibraryCollection *const __this;
  const std::shared_ptr<LessonItem> *item;
};

# LocalPlayer::hasBossRegistered::__l2::<lambda_07afa0e4a42555161d9e7c8903642f52>

struct __cppobj LocalPlayer::hasBossRegistered::__l2::<lambda_07afa0e4a42555161d9e7c8903642f52>
{
  ActorUniqueID *bossID;
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_25d3799f8140287c122ad122341cc913>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_25d3799f8140287c122ad122341cc913>::()::__l2::Literal
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_bbd4c09585ecb96c224cce2ef3cf6701>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_bbd4c09585ecb96c224cce2ef3cf6701>::()::__l2::Literal
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_d804644e5185dea78eb34000e2b88e06>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_d804644e5185dea78eb34000e2b88e06>::()::__l2::Literal
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_304f3ae11a0ef77668c678babfe40bbc>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_304f3ae11a0ef77668c678babfe40bbc>::()::__l2::Literal
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_7804f520dc23bd87c938ca68084f4eab>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_7804f520dc23bd87c938ca68084f4eab>::()::__l2::Literal
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_55991750b32a0d402d68c1670b530e7d>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_55991750b32a0d402d68c1670b530e7d>::()::__l2::Literal
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8819760c2e8c8f15a2cbf89d4a6a21cc>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8819760c2e8c8f15a2cbf89d4a6a21cc>::()::__l2::Literal
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8d2dda6e09e66f4adc9ed59b15b143e3>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8d2dda6e09e66f4adc9ed59b15b143e3>::()::__l2::Literal
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_996bbcf9e4c1fd61054f8437ecf0ef23>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_996bbcf9e4c1fd61054f8437ecf0ef23>::()::__l2::Literal
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_ba53000be2e5df2786a13a6b200c8013>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_ba53000be2e5df2786a13a6b200c8013>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l54::<lambda_303f33e2e2b65afbef693d815bb09371>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l54::<lambda_303f33e2e2b65afbef693d815bb09371>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l26::<lambda_7120fa2629f3deb969beac86b78ef942>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l26::<lambda_7120fa2629f3deb969beac86b78ef942>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l26::<lambda_bac5f6bbe655600c09fad388a4ce3022>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l26::<lambda_bac5f6bbe655600c09fad388a4ce3022>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l92::<lambda_139a21708a2d35f868c0e3b3b99cf749>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l92::<lambda_139a21708a2d35f868c0e3b3b99cf749>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l17::<lambda_e903c078f19c67803e358bafec3c22d4>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l17::<lambda_e903c078f19c67803e358bafec3c22d4>::()::__l2::Literal
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_330eed40f26698481d68c037f76e7e64>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_330eed40f26698481d68c037f76e7e64>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l54::<lambda_45372071b32d081b6f531e4f078ea6c4>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l54::<lambda_45372071b32d081b6f531e4f078ea6c4>::()::__l2::Literal
{
};

# LevelRendererPlayer::levelEvent::__l27::<lambda_a49ab75da1a355101e718e6c7dd54c5a>::()::__l2::Literal

struct __cppobj LevelRendererPlayer::levelEvent::__l27::<lambda_a49ab75da1a355101e718e6c7dd54c5a>::()::__l2::Literal
{
};

# LevelRendererCamera::updatePerChunkFaceSortState::__l10::<lambda_d6963569be67244178665fa6230fe26b>::()::__l2::<lambda_7c95ce4b7d3b2f36f66b3acbdcc1bfdc>

struct __cppobj LevelRendererCamera::updatePerChunkFaceSortState::__l10::<lambda_d6963569be67244178665fa6230fe26b>::()::__l2::<lambda_7c95ce4b7d3b2f36f66b3acbdcc1bfdc>
{
  LevelRendererCamera::RenderChunkPosBounds *changedBB;
  const bool *isOrthoCamera;
  LevelRendererCamera *const __this;
  const Vec3 *viewDir;
  GridArea<std::shared_ptr<RenderChunkInstanced> > *viewArea;
  const Vec3 *viewPos;
};

# LevelRendererCamera::queueRenderEntities::__l67::<lambda_cb48a2ba94ecffe8c3a1f3477c96fdcc>

struct __cppobj LevelRendererCamera::queueRenderEntities::__l67::<lambda_cb48a2ba94ecffe8c3a1f3477c96fdcc>
{
  LevelRendererCamera *const __this;
  BlockActor **blockEntity;
};

# LevelRendererPlayer::levelEvent::__l92::<lambda_139a21708a2d35f868c0e3b3b99cf749>

struct __cppobj LevelRendererPlayer::levelEvent::__l92::<lambda_139a21708a2d35f868c0e3b3b99cf749>
{
};

# LevelRenderer::_resetMeshes::__l2::<lambda_1b63a5d1c173e0486f76fd463c29b6b6>

struct __cppobj LevelRenderer::_resetMeshes::__l2::<lambda_1b63a5d1c173e0486f76fd463c29b6b6>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_25d3799f8140287c122ad122341cc913>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_25d3799f8140287c122ad122341cc913>
{
};

# LevelRendererPlayer::levelEvent::__l54::<lambda_303f33e2e2b65afbef693d815bb09371>

struct __cppobj LevelRendererPlayer::levelEvent::__l54::<lambda_303f33e2e2b65afbef693d815bb09371>
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_304f3ae11a0ef77668c678babfe40bbc>

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_304f3ae11a0ef77668c678babfe40bbc>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_330eed40f26698481d68c037f76e7e64>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_330eed40f26698481d68c037f76e7e64>
{
};

# LevelRendererPlayer::levelEvent::__l54::<lambda_45372071b32d081b6f531e4f078ea6c4>

struct __cppobj LevelRendererPlayer::levelEvent::__l54::<lambda_45372071b32d081b6f531e4f078ea6c4>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_55991750b32a0d402d68c1670b530e7d>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_55991750b32a0d402d68c1670b530e7d>
{
};

# LevelRendererPlayer::levelEvent::__l26::<lambda_7120fa2629f3deb969beac86b78ef942>

struct __cppobj LevelRendererPlayer::levelEvent::__l26::<lambda_7120fa2629f3deb969beac86b78ef942>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_7804f520dc23bd87c938ca68084f4eab>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_7804f520dc23bd87c938ca68084f4eab>
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8819760c2e8c8f15a2cbf89d4a6a21cc>

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8819760c2e8c8f15a2cbf89d4a6a21cc>
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8d2dda6e09e66f4adc9ed59b15b143e3>

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_8d2dda6e09e66f4adc9ed59b15b143e3>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_996bbcf9e4c1fd61054f8437ecf0ef23>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_996bbcf9e4c1fd61054f8437ecf0ef23>
{
};

# LevelRendererPlayer::levelEvent::__l27::<lambda_a49ab75da1a355101e718e6c7dd54c5a>

struct __cppobj LevelRendererPlayer::levelEvent::__l27::<lambda_a49ab75da1a355101e718e6c7dd54c5a>
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_ba53000be2e5df2786a13a6b200c8013>

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_ba53000be2e5df2786a13a6b200c8013>
{
};

# LevelRendererPlayer::levelEvent::__l26::<lambda_bac5f6bbe655600c09fad388a4ce3022>

struct __cppobj LevelRendererPlayer::levelEvent::__l26::<lambda_bac5f6bbe655600c09fad388a4ce3022>
{
};

# LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_bbd4c09585ecb96c224cce2ef3cf6701>

struct __cppobj LevelRendererPlayer::_addTerrainEffect::__l8::<lambda_bbd4c09585ecb96c224cce2ef3cf6701>
{
};

# LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_d804644e5185dea78eb34000e2b88e06>

struct __cppobj LevelRendererPlayer::addBreakingItemParticleEffect::__l5::<lambda_d804644e5185dea78eb34000e2b88e06>
{
};

# LevelRendererPlayer::levelEvent::__l17::<lambda_e903c078f19c67803e358bafec3c22d4>

struct __cppobj LevelRendererPlayer::levelEvent::__l17::<lambda_e903c078f19c67803e358bafec3c22d4>
{
};

# LocalConnector::onRemoteDisconnected::__l5::<lambda_f93dfeaa3e76b9e290819e2fab7d0ef9>::()::__l2::<lambda_2fac53f4f4efe71e232f5a3d42b3efcc>

struct __cppobj LocalConnector::onRemoteDisconnected::__l5::<lambda_f93dfeaa3e76b9e290819e2fab7d0ef9>::()::__l2::<lambda_2fac53f4f4efe71e232f5a3d42b3efcc>
{
  const NetworkIdentifier *otherId;
};

# LocalConnector::onRemoteDisconnected::__l2::<lambda_dd980618f7ea27982aa78834c9a43737>

struct __cppobj LocalConnector::onRemoteDisconnected::__l2::<lambda_dd980618f7ea27982aa78834c9a43737>
{
  const LocalConnector *otherConnector;
};

# Llama::updateEntitySpecificMolangVariables::__l2::<lambda_42d45fdb51d57b4e6e8090b435ea1116>::()::__l2::Literal

struct __cppobj Llama::updateEntitySpecificMolangVariables::__l2::<lambda_42d45fdb51d57b4e6e8090b435ea1116>::()::__l2::Literal
{
};

# Llama::updateEntitySpecificMolangVariables::__l2::<lambda_42d45fdb51d57b4e6e8090b435ea1116>

struct __cppobj Llama::updateEntitySpecificMolangVariables::__l2::<lambda_42d45fdb51d57b4e6e8090b435ea1116>
{
};

# LevelChunk::setSaved::__l2::<lambda_2431db15fc6bf2d8a9872313ccc82c6e>

struct __cppobj LevelChunk::setSaved::__l2::<lambda_2431db15fc6bf2d8a9872313ccc82c6e>
{
};

# LevelChunk::needsSaving::__l5::<lambda_324671fb5afe7ce3c03f4d6dec905ac1>

struct __cppobj LevelChunk::needsSaving::__l5::<lambda_324671fb5afe7ce3c03f4d6dec905ac1>
{
  bool *shouldSave;
  int wait;
  int maxWait;
};

# LevelChunk::setUnsaved::__l2::<lambda_5de18e1f0b47a64612035577f3b94b43>

struct __cppobj LevelChunk::setUnsaved::__l2::<lambda_5de18e1f0b47a64612035577f3b94b43>
{
};

# LevelChunk::tick::__l62::<lambda_80a0245fcb38b8e9f4613c8844d43bf5>

struct __cppobj LevelChunk::tick::__l62::<lambda_80a0245fcb38b8e9f4613c8844d43bf5>
{
};

# LevelChunk::removeHardcodedSpawningArea::__l2::<lambda_c863f0f3ff0bffd3d463d25e25698357>

struct __cppobj LevelChunk::removeHardcodedSpawningArea::__l2::<lambda_c863f0f3ff0bffd3d463d25e25698357>
{
  HardcodedSpawnAreaType type;
};

# LevelChunk::_createSubChunk::__l2::<lambda_d1b93691f90c27e7c2091e87e7855b12>

struct __cppobj LevelChunk::_createSubChunk::__l2::<lambda_d1b93691f90c27e7c2091e87e7855b12>
{
  LevelChunk *const __this;
  bool initSkyLight;
  __declspec(align(4)) _BYTE initBlocks[4];
  unsigned __int64 idx;
};

# Level::tickEntities::__l2::<lambda_35721e31be347e25bdc918c311d8c54e>

struct __cppobj Level::tickEntities::__l2::<lambda_35721e31be347e25bdc918c311d8c54e>
{
};

# Level::isPlayerSuspended::__l2::<lambda_218b0a4d9c51860ea3f78596b089a731>

struct __cppobj Level::isPlayerSuspended::__l2::<lambda_218b0a4d9c51860ea3f78596b089a731>
{
  const mce::UUID *id;
};

# Level::isPlayerSuspended::__l2::<lambda_88f0cbf62b305249319457f4b7c431cf>

struct __cppobj Level::isPlayerSuspended::__l2::<lambda_88f0cbf62b305249319457f4b7c431cf>
{
  const mce::UUID *id;
};

# LayerFilters::River::()::__l2::<lambda_6c9705eaeac6d846bc45bc80cf31b5e7>

struct __cppobj LayerFilters::River::()::__l2::<lambda_6c9705eaeac6d846bc45bc80cf31b5e7>
{
};

# LevelListCache::getLevelList::__l28::<lambda_73298216aafba4953799d6c905549d57>

struct __cppobj LevelListCache::getLevelList::__l28::<lambda_73298216aafba4953799d6c905549d57>
{
  const std::string *levelId;
};

# LevelData::setOverride::__l4::<lambda_08bfc16b9f1b183574936f74b58cf771>

struct __cppobj LevelData::setOverride::__l4::<lambda_08bfc16b9f1b183574936f74b58cf771>
{
  LevelData *const __this;
};

# LanNetworkScanner::_updateAddresses::__l9::<lambda_52306976210fc38d94eb3abd3bad6d88>

struct __cppobj LanNetworkScanner::_updateAddresses::__l9::<lambda_52306976210fc38d94eb3abd3bad6d88>
{
  std::string address;
};

# ltrim::__l2::<lambda_0afc81fb9c3838a699ba4426dd2f71f5>

struct __cppobj ltrim::__l2::<lambda_0afc81fb9c3838a699ba4426dd2f71f5>
{
};

# leveldb::DBImpl::RecoverLogFile::__l2::LogReporter

struct __cppobj leveldb::DBImpl::RecoverLogFile::__l2::LogReporter : leveldb::log::Reader::Reporter
{
  leveldb::Env *env;
  leveldb::Logger *info_log;
  const char *fname;
  leveldb::Status *status;
};

# leveldb::DBImpl::RecoverLogFile::__l2::LogReporter_vtbl

struct /*VFT*/ leveldb::DBImpl::RecoverLogFile::__l2::LogReporter_vtbl
{
  void (__fastcall *~Reporter)(leveldb::log::Reader::Reporter *this);
  void (__fastcall *Corruption)(leveldb::log::Reader::Reporter *this, unsigned __int64, const leveldb::Status *);
};

# leveldb::Repairer::ConvertLogToTable::__l2::LogReporter

struct __cppobj leveldb::Repairer::ConvertLogToTable::__l2::LogReporter : leveldb::log::Reader::Reporter
{
  leveldb::Env *env;
  leveldb::Logger *info_log;
  unsigned __int64 lognum;
};

# leveldb::VersionSet::Recover::__l2::LogReporter

struct __cppobj leveldb::VersionSet::Recover::__l2::LogReporter : leveldb::log::Reader::Reporter
{
  leveldb::Status *status;
};

# leveldb::VersionSet::Recover::__l2::LogReporter_vtbl

struct /*VFT*/ leveldb::VersionSet::Recover::__l2::LogReporter_vtbl
{
  void (__fastcall *~Reporter)(leveldb::log::Reader::Reporter *this);
  void (__fastcall *Corruption)(leveldb::log::Reader::Reporter *this, unsigned __int64, const leveldb::Status *);
};

# leveldb::Version::RecordReadSample::__l2::State

struct __declspec(align(8)) leveldb::Version::RecordReadSample::__l2::State
{
  leveldb::Version::GetStats stats;
  int matches;
};

# LevelListener_vtbl

struct /*VFT*/ LevelListener_vtbl
{
  void (__fastcall *~BlockSourceListener)(BlockSourceListener *this);
  void (__fastcall *onSourceCreated)(BlockSourceListener *this, BlockSource *);
  void (__fastcall *onSourceDestroyed)(BlockSourceListener *this, BlockSource *);
  void (__fastcall *onAreaChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *, const BlockPos *);
  void (__fastcall *onBlockChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *, unsigned int, const Block *, const Block *, int, const ActorBlockSyncMessage *);
  void (__fastcall *onBrightnessChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *);
  void (__fastcall *onBlockEntityChanged)(BlockSourceListener *this, BlockSource *, BlockActor *);
  void (__fastcall *onBlockEntityAboutToBeRemoved)(BlockSourceListener *this, BlockSource *, std::shared_ptr<BlockActor>);
  void (__fastcall *onEntityChanged)(BlockSourceListener *this, BlockSource *, Actor *);
  void (__fastcall *onBlockEvent)(BlockSourceListener *this, BlockSource *, int, int, int, int, int);
  void (__fastcall *allChanged)(LevelListener *this);
  Particle *(__fastcall *addParticle)(LevelListener *this, ParticleType, const Vec3 *, const Vec3 *, int, const CompoundTag *, bool);
  void (__fastcall *sendServerLegacyParticle)(LevelListener *this, ParticleType, const Vec3 *, const Vec3 *, int);
  void (__fastcall *addParticleEffect)(LevelListener *this, const HashedString *, const Actor *, const HashedString *, const Vec3 *, const MolangVariableMap *);
  void (__fastcall *addParticleEffect)(LevelListener *this, const HashedString *, const Vec3 *, const MolangVariableMap *);
  void (__fastcall *addTerrainParticleEffect)(LevelListener *this, const BlockPos *, const Block *, const Vec3 *, float, float, float);
  void (__fastcall *addTerrainSlideEffect)(LevelListener *this, const BlockPos *, const Block *, const Vec3 *, float, float, float);
  void (__fastcall *addBreakingItemParticleEffect)(LevelListener *this, const Vec3 *, ParticleType, const TextureUVCoordinateSet *, bool);
  void (__fastcall *playMusic)(LevelListener *this, const std::string *, const Vec3 *, float, float);
  void (__fastcall *playStreamingMusic)(LevelListener *this, const std::string *, int, int, int);
  void (__fastcall *onEntityAdded)(LevelListener *this, Actor *);
  void (__fastcall *onEntityRemoved)(LevelListener *this, Actor *);
  void (__fastcall *onChunkLoaded)(LevelListener *this, ChunkSource *, LevelChunk *);
  void (__fastcall *onChunkUnloaded)(LevelListener *this, LevelChunk *);
  void (__fastcall *onLevelDestruction)(LevelListener *this, const std::string *);
  void (__fastcall *levelEvent)(LevelListener *this, LevelEvent, const CompoundTag *);
  void (__fastcall *levelEvent)(LevelListener *this, LevelEvent, const Vec3 *, int);
  void (__fastcall *levelSoundEvent)(LevelListener *this, const std::string *, const Vec3 *, float, float);
  void (__fastcall *levelSoundEvent)(LevelListener *this, LevelSoundEvent, const Vec3 *, int, const ActorDefinitionIdentifier *, bool, bool);
  void (__fastcall *stopSoundEvent)(LevelListener *this, const std::string *);
  void (__fastcall *stopAllSounds)(LevelListener *this);
  void (__fastcall *takePicture)(LevelListener *this, cg::ImageBuffer *, Actor *, Actor *, ScreenshotOptions *);
  void (__fastcall *playerListChanged)(LevelListener *this);
};

# LevelRenderer_vtbl

struct /*VFT*/ LevelRenderer_vtbl
{
  void (__fastcall *~BlockSourceListener)(BlockSourceListener *this);
  void (__fastcall *onSourceCreated)(BlockSourceListener *this, BlockSource *);
  void (__fastcall *onSourceDestroyed)(BlockSourceListener *this, BlockSource *);
  void (__fastcall *onAreaChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *, const BlockPos *);
  void (__fastcall *onBlockChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *, unsigned int, const Block *, const Block *, int, const ActorBlockSyncMessage *);
  void (__fastcall *onBrightnessChanged)(BlockSourceListener *this, BlockSource *, const BlockPos *);
  void (__fastcall *onBlockEntityChanged)(BlockSourceListener *this, BlockSource *, BlockActor *);
  void (__fastcall *onBlockEntityAboutToBeRemoved)(BlockSourceListener *this, BlockSource *, std::shared_ptr<BlockActor>);
  void (__fastcall *onEntityChanged)(BlockSourceListener *this, BlockSource *, Actor *);
  void (__fastcall *onBlockEvent)(BlockSourceListener *this, BlockSource *, int, int, int, int, int);
  void (__fastcall *allChanged)(LevelListener *this);
  Particle *(__fastcall *addParticle)(LevelListener *this, ParticleType, const Vec3 *, const Vec3 *, int, const CompoundTag *, bool);
  void (__fastcall *sendServerLegacyParticle)(LevelListener *this, ParticleType, const Vec3 *, const Vec3 *, int);
  void (__fastcall *addParticleEffect)(LevelListener *this, const HashedString *, const Actor *, const HashedString *, const Vec3 *, const MolangVariableMap *);
  void (__fastcall *addParticleEffect)(LevelListener *this, const HashedString *, const Vec3 *, const MolangVariableMap *);
  void (__fastcall *addTerrainParticleEffect)(LevelListener *this, const BlockPos *, const Block *, const Vec3 *, float, float, float);
  void (__fastcall *addTerrainSlideEffect)(LevelListener *this, const BlockPos *, const Block *, const Vec3 *, float, float, float);
  void (__fastcall *addBreakingItemParticleEffect)(LevelListener *this, const Vec3 *, ParticleType, const TextureUVCoordinateSet *, bool);
  void (__fastcall *playMusic)(LevelListener *this, const std::string *, const Vec3 *, float, float);
  void (__fastcall *playStreamingMusic)(LevelListener *this, const std::string *, int, int, int);
  void (__fastcall *onEntityAdded)(LevelListener *this, Actor *);
  void (__fastcall *onEntityRemoved)(LevelListener *this, Actor *);
  void (__fastcall *onChunkLoaded)(LevelListener *this, ChunkSource *, LevelChunk *);
  void (__fastcall *onChunkUnloaded)(LevelListener *this, LevelChunk *);
  void (__fastcall *onLevelDestruction)(LevelListener *this, const std::string *);
  void (__fastcall *levelEvent)(LevelListener *this, LevelEvent, const CompoundTag *);
  void (__fastcall *levelEvent)(LevelListener *this, LevelEvent, const Vec3 *, int);
  void (__fastcall *levelSoundEvent)(LevelListener *this, const std::string *, const Vec3 *, float, float);
  void (__fastcall *levelSoundEvent)(LevelListener *this, LevelSoundEvent, const Vec3 *, int, const ActorDefinitionIdentifier *, bool, bool);
  void (__fastcall *stopSoundEvent)(LevelListener *this, const std::string *);
  void (__fastcall *stopAllSounds)(LevelListener *this);
  void (__fastcall *takePicture)(LevelListener *this, cg::ImageBuffer *, Actor *, Actor *, ScreenshotOptions *);
  void (__fastcall *playerListChanged)(LevelListener *this);
};

# LavaSlime_vtbl

struct /*VFT*/ LavaSlime_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
  bool (__fastcall *isDarkEnoughToSpawn)(Monster *this);
  bool (__fastcall *canDealDamage)(Slime *this);
  LevelSoundEvent (__fastcall *getSquishSound)(Slime *this);
  void (__fastcall *setSlimeSize)(Slime *this, int);
  bool (__fastcall *doPlayJumpSound)(Slime *this);
  bool (__fastcall *doPlayLandSound)(Slime *this);
  void (__fastcall *playJumpSound)(Slime *this);
  void (__fastcall *playLandSound)(Slime *this);
  void (__fastcall *decreaseSquish)(Slime *this);
  std::unique_ptr<Slime> *(__fastcall *createChild)(Slime *this, std::unique_ptr<Slime> *result, int);
};

# Llama_vtbl

struct /*VFT*/ Llama_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
};

# LocalPlayer_vtbl

struct /*VFT*/ LocalPlayer_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
  void (__fastcall *prepareRegion)(Player *this, ChunkSource *);
  void (__fastcall *destroyRegion)(Player *this);
  void (__fastcall *suspendRegion)(Player *this);
  void (__fastcall *resendAllChunks)(Player *this);
  void (__fastcall *_fireWillChangeDimension)(Player *this);
  void (__fastcall *_fireDimensionChanged)(Player *this);
  void (__fastcall *changeDimensionWithCredits)(Player *this, AutomaticID<Dimension,int>);
  int (__fastcall *tickWorld)(Player *this, const Tick *);
  void (__fastcall *frameUpdate)(Player *this, FrameUpdateContextBase *);
  const std::vector<ChunkPos> *(__fastcall *getTickingOffsets)(Player *this);
  void (__fastcall *moveView)(Player *this);
  void (__fastcall *setName)(Player *this, const std::string *);
  void (__fastcall *checkMovementStats)(Player *this, const Vec3 *);
  StructureFeatureType (__fastcall *getCurrentStructureFeature)(Player *this);
  bool (__fastcall *isAutoJumpEnabled)(Player *this);
  void (__fastcall *respawn)(Player *this);
  void (__fastcall *resetRot)(Player *this);
  void (__fastcall *resetPos)(Player *this, bool);
  bool (__fastcall *isInTrialMode)(Player *this);
  bool (__fastcall *hasResource)(Player *this, int);
  void (__fastcall *completeUsingItem)(Player *this);
  void (__fastcall *setPermissions)(Player *this, CommandPermissionLevel);
  void (__fastcall *startDestroying)(Player *this);
  void (__fastcall *stopDestroying)(Player *this);
  void (__fastcall *openPortfolio)(Player *this);
  void (__fastcall *openBook)(Player *this, int, bool, int, BlockActor *);
  void (__fastcall *openTrading)(Player *this, const ActorUniqueID *, bool);
  bool (__fastcall *canOpenContainerScreen)(Player *this);
  void (__fastcall *openChalkboard)(Player *this, ChalkboardBlockActor *, bool);
  void (__fastcall *openNpcInteractScreen)(Player *this, Actor *);
  bool (__fastcall *openInventory)(Player *this);
  void (__fastcall *displayChatMessage)(Player *this, const std::string *, const std::string *);
  void (__fastcall *displayClientMessage)(Player *this, const std::string *);
  void (__fastcall *displayTextObjectMessage)(Player *this, const TextObjectRoot *);
  void (__fastcall *displayTextObjectWhisperMessage)(Player *this, const ResolvedTextObject *, const std::string *, const std::string *);
  void (__fastcall *displayWhisperMessage)(Player *this, const std::string *, const std::string *, const std::string *, const std::string *);
  BedSleepingResult (__fastcall *startSleepInBed)(Player *this, const BlockPos *);
  void (__fastcall *stopSleepInBed)(Player *this, bool, bool);
  bool (__fastcall *canStartSleepInBed)(Player *this);
  int (__fastcall *getSleepTimer)(Player *this);
  int (__fastcall *getPreviousTickSleepTimer)(Player *this);
  void (__fastcall *openSign)(Player *this, const BlockPos *);
  void (__fastcall *playEmote)(Player *this, const std::string *);
  bool (__fastcall *isHostingPlayer)(Player *this);
  bool (__fastcall *isLoading)(Player *this);
  bool (__fastcall *isPlayerInitialized)(Player *this);
  void (__fastcall *stopLoading)(Player *this);
  void (__fastcall *registerTrackedBoss)(Player *this, ActorUniqueID);
  void (__fastcall *unRegisterTrackedBoss)(Player *this, ActorUniqueID);
  void (__fastcall *setPlayerGameType)(Player *this, GameType);
  void (__fastcall *initHUDContainerManager)(Player *this);
  void (__fastcall *_crit)(Player *this, Actor *);
  IMinecraftEventing *(__fastcall *getEventing)(Player *this);
  unsigned int (__fastcall *getUserId)(Player *this);
  void (__fastcall *sendEventPacket)(Player *this, EventPacket *);
  void (__fastcall *addExperience)(Player *this, int);
  void (__fastcall *addLevels)(Player *this, int);
  void (__fastcall *setContainerData)(Player *this, IContainerManager *, int, int);
  void (__fastcall *slotChanged)(Player *this, IContainerManager *, Container *, int, const ItemStack *, const ItemStack *, bool);
  void (__fastcall *inventoryChanged)(Player *this, Container *, int, const ItemStack *, const ItemStack *, bool);
  void (__fastcall *refreshContainer)(Player *this, IContainerManager *);
  void (__fastcall *deleteContainerManager)(Player *this);
  void (__fastcall *setFieldOfViewModifier)(Player *this, float);
  bool (__fastcall *is2DPositionRelevant)(Player *this, AutomaticID<Dimension,int>, const BlockPos *);
  bool (__fastcall *isEntityRelevant)(Player *this, const Actor *);
  bool (__fastcall *isTeacher)(Player *this);
  void (__fastcall *onSuspension)(Player *this);
  void (__fastcall *onLinkedSlotsChanged)(Player *this);
  void (__fastcall *startCooldown)(Player *this, const Item *);
  int (__fastcall *getItemCooldownLeft)(Player *this, const std::string *);
  bool (__fastcall *isItemInCooldown)(Player *this, const std::string *);
  void (__fastcall *sendInventoryTransaction)(Player *this, const InventoryTransaction *);
  void (__fastcall *sendComplexInventoryTransaction)(Player *this, std::unique_ptr<ComplexInventoryTransaction>);
  void (__fastcall *sendNetworkPacket)(Player *this, Packet *);
  PlayerEventCoordinator *(__fastcall *getPlayerEventCoordinator)(Player *this);
  MoveInputHandler *(__fastcall *getMoveInputHandler)(Player *this);
  InputMode (__fastcall *getInputMode)(Player *this);
  ClientPlayMode (__fastcall *getPlayMode)(Player *this);
  void (__fastcall *reportMovementTelemetry)(Player *this, const MovementEventType);
  bool (__fastcall *getCamereDeparted)(Player *this);
  bool (__fastcall *getThirdPersonPerspective)(Player *this);
  Vec2 *(__fastcall *getRotationToCamera)(Player *this, Vec2 *result);
  void (__fastcall *onMovePlayerPacketNormal)(Player *this, const Vec3 *, const Vec2 *, float);
};