can instantiate directly