need to reflect on interfaces not proxy impl