added usage of reflection