Closed #75 Co-authored-by: Rio6 <rio.liu@r26.me> Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca> Reviewed-on: public/pyceo#77 Co-authored-by: Rio Liu <r345liu@csclub.uwaterloo.ca> Co-committed-by: Rio Liu <r345liu@csclub.uwaterloo.ca>