All functions implemented, now testing left.