prototypes are now stored into a data structure
added time measurement functions