basic working. need to implement returning cells