add transfer and move methods