Please make type check errors / assertions throw an exception which tells the user what type they passed in