{
  // List of cooldowns that are applied when player performs action.
  // Specifying: `animal_pen:any` will indicate that any entity using that item will have same cooldown.
  // `minecraft:apple` is universal food item. It is used to indicate for feeding action.
  // `minecraft:honey_bloc` is used to indicate pollen regeneration cooldown.
  // <item> : <cooldown>.
  "cooldowns": {
    "minecraft:apple": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "animal_pen:any",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 1160,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 6000
      }
    ],
    "minecraft:shears": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:sheep",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 1180,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 6000
      }
    ],
    "minecraft:brush": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:armadillo",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 1220,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 200
      }
    ],
    "minecraft:magma_block": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:frog",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 6020,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 200
      }
    ],
    "minecraft:bucket": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:chicken",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 6020,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 1200
      },
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:turtle",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 6020,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 1200
      },
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:cow",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 0,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 0,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 0
      },
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:mooshroom",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 0,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 0,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 0
      },
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:goat",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 0,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 0,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 0
      },
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:sniffer",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 6020,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 200
      }
    ],
    "minecraft:bowl": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:mooshroom",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 0,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": 0,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 0
      }
    ],
    "minecraft:honey_block": [
      {
        // The entity ID on which cooldown is applied.
        "entity": "minecraft:bee",
        // The base cooldown value for action.
        // 0 means that there is no cooldown.
        // Values in game ticks.
        "base_cooldown": 1220,
        // The increment of cooldown per each animal.
        // 0 means that there is no cooldown increment.
        // Negative value decreases base cooldown value.
        // Values in game ticks.
        "animal_increment": -20,
        // The the maximal cooldown that can be applied.
        // 0 means that there is no cooldown limitation.
        // Negative animal_increment makes this act as lowest limit.
        // Values in game ticks.
        "cooldown_limit": 200
      }
    ]
  },
  // A cooldown value in game ticks between attacks that players can perform on animal pens.
  // Default value: 5 game tick
  "attack_cooldown": 5,
  // List of drop limits for items when player harvests items.
  // <item> : <drop_limit>.
  "drop_limits": {
    "minecraft:white_wool": 320,
    "minecraft:pearlescent_froglight": 320,
    "minecraft:egg": 80,
    "minecraft:turtle_egg": 320,
    "minecraft:torchflower_seeds": 320
  },
  // Allows to set maximal amount of animals in the pen.
  // Setting 0 will remove any limit.
  "animal_limit_in_pen": 2147483647,
  // Allows to enable animal growing in animal pen.
  // The more animals are inside it, the larger it will be.
  "animals_can_grow": false,
  // Allows to change default animal size in pen.
  "animal_size": 0.33,
  // Allows to enable water animal growing in aquarium.
  // The more animals are inside it, the larger it will be.
  "water_animals_can_grow": false,
  // Allows to change default water animal size in aquarium.
  "water_animal_size": 0.33,
  // Allows to set how fast animals grows in pen and aquarium.
  // Each animal is multiplied by given value to get end size.
  // This option works only if animals_can_grow or water_animals_can_grow is enabled.
  // Default value = 0.001
  "growth_multiplier": 0.001,
  // Allows to specify if turtle scute are dropped when player breeds animal (true).
  // or when food cooldown timer is finished (false).
  "turtle_scute_drop_time": false,
  // Allows to set how many different animal variants can be stored per item.
  // Players will not be able to store more different variants than this value.
  // Be aware, this increases NBT data size, so not recommended to put infinite amount.
  // Default value = 16
  "max_stored_animal_variants": 10,
  // Allows to set if interactions with animal pens/aquariums should trigger advancements.
  // Triggered Criteria: player_interacted_with_entity, bred_animals, filled_bucket, player_killed_entity
  // Default value = false
  "trigger_advancements": false,
  // Allows to set if interactions with animal pens/aquariums should increase statistics.
  // Increased Statistics: Animals Bred, Mob Kills, Use Item <item>, Kill Entity <entity>
  // Default value = false
  "increase_statistics": false,
  // Set of animals that are blocked from picking up.
  "blocked_animals": [
  ],
  // Debug code to indicate problems.
  "debug": false
}