added a few more construct methods