implement animal.scala