better controls, logic
done