Finished all core functions for prototype