implement forward event correctly.