added get handler, and factory