work on reflection