these are no longer formatting fixes; actually created some nice factory
funcs