update original code my reflection