drag without recursion