Messing around trying to find some type-safety in here...