do we need this outer `new`?