Allow passing a block to instantiate