drag and drop functionality as required