implemented block moving