storing position internally and adding redraw method