do we have to create a new instance every time, or would it be enough to cast?