switch to ez__construct and ez_new