Same ideas as above on using reflection for our dirty needs