{
	"format_version": "$general.format_version",
	"minecraft:entity": {
		"@meta": {
			"expand_path_exceptions": ["do_not_upgrade"]
		},
		"do_not_upgrade": {},
		"description": {
			"identifier": "$general.file_identifier and $general.entity_identifier",
			"runtime_identifier": "$vanilla.entity_identifier",
			"is_spawnable": "$general.boolean",
			"is_summonable": "$general.boolean",
			"is_experimental": "$general.boolean",
			"$dynamic_template.tags": {
				"$if": "$dynamic.bridge_core.is_active",
				"$default": {
					"$dynamic.list.next_index": "$dynamic.cache.entity_tag.identifiers"
				}
			},
			"animations": {
				"$placeholder": "$dynamic.animation_ids and $dynamic.animation_controller_ids"
			},
			"scripts": {
				"animate": {
					"$dynamic.list.next_index": {
						"$dynamic.entity.animation_references": {},
						"$placeholder": "$molang.embedded",
						"@import.value.refs": "$dynamic.entity.animation_references"
					}
				}
			},
			"$versioned_template.aliases": [
				{
					"$if": "$format_version >= 1.17.0",
					"$data": {
						"$placeholder": {
							"$placeholder": {
								"@meta": {
									"is_value": true
								}
							}
						}
					}
				}
			],
			"$versioned_template.properties": [
				{
					"$if": "$format_version >= 1.17.0",
					"$data": {
						"$placeholder": {
							"values": {
								"$dynamic.list.next_index": {
									"@meta": {
										"is_value": true
									}
								}
							},
							"min": "$general.number",
							"max": "$general.number",
							"default": {
								"@meta": {
									"is_value": true
								}
							},
							"client_sync": "$general.boolean"
						}
					}
				}
			]
		},
		"component_groups": {
			"$placeholder": "$entity.general.components"
		},
		"components": "$entity.general.components",
		"$versioned_template.permutations": [
			{
				"$if": "$format_version >= 1.17.0",
				"$data": {
					"$dynamic.list.next_index": {
						"condition": "$molang.embedded",
						"components": "$entity.general.components"
					}
				}
			}
		],
		"events": {
			"$asObject": "$entity.general.built_in_event",
			"$placeholder": {
				"@meta": { "validate": "entity/eventStructure.js" },

				"$versioned_template.trigger": [
					{
						"$if": "$format_version >= 1.16.0",
						"$data": "$entity.general.event_string"
					}
				],
				"$versioned_template.run_command": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"command": {
								"$dynamic.list.next_index": "$function.embedded_no_slash"
							}
						}
					}
				],
				"$versioned_template.damage": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"type": "$general.damage_type",
							"amount": "$general.number",
							"target": ["self", "holder"]
						}
					}
				],
				"$versioned_template.decrement_stack": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"ignore_game_mode": "$general.boolean"
						}
					}
				],
				"$versioned_template.die": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {}
					}
				],
				"$versioned_template.add_mob_effect": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"effect": "$general.effect_name",
							"target": ["other", "self"],
							"duration": "$general.number",
							"amplifier": "$general.number"
						}
					}
				],
				"$versioned_template.remove_mob_effect": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"effect": "$general.effect_name",
							"target": ["other", "self"]
						}
					}
				],
				"$versioned_template.play_effect": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"data": "$general.number",
							"target": ["self", "other"],
							"effect": {
								"@import.value.particle": "$dynamic.cache.particle.ids",
								"@import.value": "$vanilla.particle_identifier"
							}
						}
					}
				],
				"$versioned_template.play_sound": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"target": ["self", "other"],
							"sound": "$function.general.sound_definitions"
						}
					}
				],
				"$versioned_template.teleport": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"target": ["self", "other"],
							"avoid_water": "$general.boolean",
							"destintion": {
								"$dynamic.list.index_triple": "$general.number"
							},
							"land_on_block": "$general.boolean",
							"max_range": {
								"$dynamic.list.index_triple": "$general.number"
							}
						}
					}
				],
				"$versioned_template.transform_item": [
					{
						"$if": "$format_version >= 1.16.100",
						"$data": {
							"transform": "$general.item_identifier"
						}
					}
				],
				"sequence": {
					"$dynamic.list.next_index": {
						"filters": "$entity.filters",
						"$load": "$entity.main.minecraft:entity.events.$placeholder"
					}
				},
				"randomize": {
					"$dynamic.list.next_index": {
						"weight": "$general.number",
						"$load": "$entity.main.minecraft:entity.events.$placeholder"
					}
				},
				"add": {
					"component_groups": {
						"$dynamic.list.next_index": "$entity.general.component_group_name"
					},
					"$dynamic_template.spell_effects": {
						"$if": "$dynamic.bridge_core.is_active",
						"$default": "$entity.components.minecraft:spell_effects.add_effects"
					},
					"$dynamic_template.group": {
						"$if": "$dynamic.bridge_core.is_active",
						"$default": {
							"name": {
								"@meta": {
									"is_value": true
								}
							},
							"components": "$entity.main.minecraft:entity.components"
						}
					}
				},
				"remove": {
					"component_groups": {
						"$dynamic.list.next_index": "$entity.general.component_group_name"
					},
					"$dynamic_template.spell_effects": {
						"$if": "$dynamic.bridge_core.is_active",
						"$default": "$entity.components.minecraft:spell_effects.remove_effects"
					}
				},
				"execute": {
					"commands": {
						"$dynamic.list.next_index": "$function.embedded"
					}
				},
				"$versioned_template.set_actor_property": [
					{
						"$if": "$format_version >= 1.17.0",
						"$data": {
							"$placeholder": {
								"@meta": {
									"is_value": true
								}
							}
						}
					}
				]
			}
		}
	}
}
