add position still needs more logic thought out