code: @Override
  	public Multimap<String, Animation<Shape>> getAnimations(Map<String, Shape> shapes)
  	{
  		for (Entry<String, Anim> entry : anims.entries())
  		{
  			Anim anim = entry.getValue();
  			Shape s = shapes.get(anim.group);
  			Transformation<?, Shape> t = getTransform(anim.transform);
  
  			if (s == null)
  				MalisisCore.log.error("Could not find shape {} in the model. Ignoring this animation.", anim.group);
  			if (t == null)
  				MalisisCore.log.error("Could not find a tranform with name {} in the JSON. Ignoring this animation.", anim.transform);
  
  			if (s != null && t != null)
  			{
  				t.reversed(anim.reversed);
  				Animation<Shape> a = new Animation<>(s, t);
  				a.setRender(false, anim.persist);
  				animations.put(entry.getKey(), a);
  			}
  
  		}
  		return animations;
  	}
docs: Build and return the {@link Animation Animations}.
  
  @param shapes the shapes
  @return the animations