Avoid type checks, you could easily put line 18 to 28 in its own method and override it for humans.