is it really needed to use this emulation of ``new static()`` ? Wouldn't it be enough to use ``new self()`` here ?