fixed the bug, call parent function