commented, cleaned up more, made prettier