typesafe and other stuff