removed need for reflection