user manipulation