Hacky initializer...needs to be generalized