{
	"credit": "Created by FreshLX",
	"textureSize": [64, 64],
	"models": [
		{
			"part": "fin_right",
			"id": "fin_right",
			"invertAxis": "xy",
			"translate": [-4, -7, 2],
			"submodels": [
				{
					"id": "Created_by_FreshLX",
					"invertAxis": "xy",
					"translate": [0, 0, 0]
				}
			],
			"animations": [
				{
					"var.r": "random(id)*pi*4"
				},
				{
					"body.ty": "22",
					"body2.ry": "if(is_in_water, sin(var.r+limb_swing  +age/12)/5 +torad(head_yaw)/2                              , -sin(limb_swing+age/1.6)/4)",
					"tail2.ry": "if(is_in_water,-cos(var.r+limb_swing*1.6+age/2)/2*(1+limb_speed)                                 , -sin(limb_swing+age/1.6*2)/3*2)",
					"tail2.rz": "if(is_in_water,-sin(var.r+limb_swing*1.6+age/6)/5*(1+limb_speed*2)                               , -sin(limb_swing+age/1.6)/3*2)*0.3",
					"body2.rz": "if(is_in_water, sin(var.r+limb_swing/2+age/14)/6                                                 , -cos(limb_swing+age/1.8)/6 +sin(limb_swing*1.4 +sin(limb_swing*1.4*2))/2 +limb_swing/2*1.4)",
					"body2.rx": "if(is_in_water, sin(var.r+limb_swing/2+age/16)/8 +torad(-7) +torad(20)*clamp(limb_speed*2, 0, 1) , -sin(limb_swing+age/2  )/4) +clamp(if(age>4&&var.y!=pos_y, -(pos_y-var.y), 0), -pi/3, pi/3)",
					"body2.tx": "if(is_in_water, cos(var.r+limb_swing  +age/12)/3 +cos((pos_x*1.5+pos_y*2+pos_z*1.5)+age/23)*0    , -cos(limb_swing+age/1.6))",
					"tail2.tx": "if(is_in_water, sin(var.r+limb_swing*1.6+age/2)/6*(1+limb_speed*2)                               , -cos(limb_swing+age/1.6*2)/2)",
					"body2.tz": "if(is_in_water,                                   cos((pos_x*1.5+pos_y*2+pos_z*1.5)+age/28)*0, 0)",
					"body2.ty": "-3.5",
					"body2.sx": "1 +(0.5-random(id))/3*0 +sin(var.r+age/1.5 -cos(var.r+age/1.5)/2)/20",
					"body2.sy": "body2.sx",
					"body2.sz": "body2.sx"
				},
				{
					"left_fin.ry": " torad( 5 ) +if(is_in_water,  cos(torad(30)+var.r+limb_swing/2+age/1.3)/3*clamp(1-limb_speed*6, 0.3, 1)                                                                     , 0)",
					"right_fin.ry": "torad(-5 ) +if(is_in_water, -sin(torad(30)+var.r+limb_swing/2+age/1.2)/3*clamp(1-limb_speed*6, 0.3, 1)                                                                     , 0)",
					"left_fin.rz": "             if(is_in_water,  sin(          var.r+limb_swing/2+age/1.3)/2*clamp(1-limb_speed*6, 0.3, 1) +(torad(-10) -sin(var.r+limb_swing*1.6+age/6)/3)*clamp(limb_speed*6, 0, 1),  sin(age))",
					"right_fin.rz": "            if(is_in_water,  cos(          var.r+limb_swing/2+age/1.2)/2*clamp(1-limb_speed*6, 0.3, 1) +(torad( 10) -sin(var.r+limb_swing*1.6+age/6)/3)*clamp(limb_speed*6, 0, 1), -sin(age))",
					"left_fin.sx": " 2-body2.sx",
					"right_fin.sx": "2-body2.sx",
					"left_fin.sy": "left_fin.sx",
					"right_fin.sy": "right_fin.sx",
					"left_fin.sz": "left_fin.sx",
					"right_fin.sz": "right_fin.sx",
					"tail2.sy": "2-body2.sx",
					"tail2.sx": "2-body2.sx",
					"tail2.sz": "2-body2.sx"
				},
				{
					"var.y": "var.y2",
					"var.y2": "var.y3",
					"var.y3": "var.y4",
					"var.y4": "var.y5",
					"var.y5": "var.y6",
					"var.y6": "var.y7",
					"var.y7": "var.y8",
					"var.y8": "var.y9",
					"var.y9": "var.y10",
					"var.y10": "pos_y"
				}
			]
		},
		{
			"part": "body",
			"id": "body",
			"invertAxis": "xy",
			"translate": [0, 0, 0],
			"submodels": [
				{
					"id": "body2",
					"invertAxis": "xy",
					"translate": [0, 4, 0],
					"boxes": [
						{
							"coordinates": [-4, -6, 0, 8, 2, 0],
							"uvNorth": [46, 40, 30, 44],
							"uvSouth": [30, 40, 46, 44],
							"sizeAdd": 0.01
						},
						{
							"coordinates": [-4, 4, 0, 8, 2, 0],
							"uvNorth": [46, 34, 30, 38],
							"uvSouth": [30, 34, 46, 38],
							"sizeAdd": 0.01
						},
						{
							"coordinates": [-4, -4, -4, 8, 8, 8],
							"uvNorth": [16, 16, 32, 32],
							"uvEast": [0, 16, 16, 32],
							"uvSouth": [48, 16, 64, 32],
							"uvWest": [32, 16, 48, 32],
							"uvUp": [32, 16, 16, 0],
							"uvDown": [48, 0, 32, 16]
						}
					],
					"submodels": [
						{
							"id": "bottom_back_spikes",
							"invertAxis": "xy",
							"translate": [0, -4, 4],
							"rotate": [-45, 0, 0],
							"boxes": [
								{
									"coordinates": [-4, -2, 0, 8, 2, 0],
									"uvNorth": [64, 40, 48, 44],
									"uvSouth": [48, 40, 64, 44],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "right_back_spikes",
							"invertAxis": "xy",
							"translate": [4, 0, 4],
							"rotate": [0, -45, 0],
							"boxes": [
								{
									"coordinates": [0, -4, 0, 2, 8, 0],
									"uvNorth": [22, 48, 18, 64],
									"uvSouth": [18, 48, 22, 64],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "left_back_spikes",
							"invertAxis": "xy",
							"translate": [-4, 0, 4],
							"rotate": [0, 45, 0],
							"boxes": [
								{
									"coordinates": [-2, -4, 0, 2, 8, 0],
									"uvNorth": [16, 48, 12, 64],
									"uvSouth": [12, 48, 16, 64],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "top_back_spikes",
							"invertAxis": "xy",
							"translate": [0, 4, 4],
							"rotate": [45, 0, 0],
							"boxes": [
								{
									"coordinates": [-4, 0, 0, 8, 2, 0],
									"uvNorth": [64, 34, 48, 38],
									"uvSouth": [48, 34, 64, 38],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "bottom_front_spikes",
							"invertAxis": "xy",
							"translate": [0, -4, -4],
							"rotate": [45, 0, 0],
							"boxes": [
								{
									"coordinates": [-4, -2, 0, 8, 2, 0],
									"uvNorth": [30, 40, 46, 44],
									"uvSouth": [46, 40, 30, 44],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "right_front_spikes",
							"invertAxis": "xy",
							"translate": [4, 0, -4],
							"rotate": [0, 45, 0],
							"boxes": [
								{
									"coordinates": [0, -4, 0, 2, 8, 0],
									"uvNorth": [0, 48, 4, 64],
									"uvSouth": [4, 48, 0, 64],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "left_front_spikes",
							"invertAxis": "xy",
							"translate": [-4, 0, -4],
							"rotate": [0, -45, 0],
							"boxes": [
								{
									"coordinates": [-2, -4, 0, 2, 8, 0],
									"uvNorth": [6, 48, 10, 64],
									"uvSouth": [10, 48, 6, 64],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "top_front_spikes",
							"invertAxis": "xy",
							"translate": [0, 4, -4],
							"rotate": [-45, 0, 0],
							"boxes": [
								{
									"coordinates": [-4, 0, 0, 8, 2, 0],
									"uvNorth": [30, 34, 46, 38],
									"uvSouth": [46, 34, 30, 38],
									"sizeAdd": 0.01
								}
							]
						},
						{
							"id": "left_fin",
							"invertAxis": "xy",
							"translate": [-3.9, 2.5, -2],
							"submodels": [
								{
									"id": "bone",
									"invertAxis": "xy",
									"translate": [0, 0.5, 0],
									"rotate": [0, 45, 0],
									"boxes": [
										{
											"coordinates": [-3, -2, 0, 3, 3, 0],
											"uvNorth": [50, 0, 56, 6]
										}
									]
								}
							]
						},
						{
							"id": "right_fin",
							"invertAxis": "xy",
							"translate": [3.9, 2.5, -2],
							"submodels": [
								{
									"id": "bone2",
									"invertAxis": "xy",
									"translate": [0, 0.5, 0],
									"rotate": [0, -45, 0],
									"boxes": [
										{
											"coordinates": [0, -2, 0, 3, 3, 0],
											"uvNorth": [56, 0, 50, 6]
										}
									]
								}
							]
						},
						{
							"id": "tail2",
							"invertAxis": "xy",
							"translate": [0, 2, 4],
							"boxes": [
								{
									"coordinates": [0, -3, -1, 0, 5, 4],
									"uvEast": [8, 0, 0, 8],
									"uvWest": [0, 0, 8, 8],
									"sizeAdd": 0.01
								}
							]
						}
					]
				}
			]
		},
		{
			"part": "fin_left",
			"id": "fin_left",
			"invertAxis": "xy",
			"translate": [4, -7, 2]
		},
		{
			"part": "spikes_front_top",
			"id": "spikes_front_top",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_middle_top",
			"id": "spikes_middle_top",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_back_top",
			"id": "spikes_back_top",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_front_left",
			"id": "spikes_front_left",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_front_right",
			"id": "spikes_front_right",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_front_bottom",
			"id": "spikes_front_bottom",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_middle_bottom",
			"id": "spikes_middle_bottom",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_back_bottom",
			"id": "spikes_back_bottom",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_back_left",
			"id": "spikes_back_left",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		},
		{
			"part": "spikes_back_right",
			"id": "spikes_back_right",
			"invertAxis": "xy",
			"translate": [0, 0, 0]
		}
	]
}