accept reflect implemented