few warnings come from compiling this.. um. Currently, i'm trying to figure out what to do about type()