more scalaish factory methods