fixed swapping bug and added item modifying