Refactor instantiation