adding drag and drop functionality