Step 1-2: fix code arch. add pointer event