Handle data more efficiently... Pretty large commit