experiment03 basic draggable viewport component