change use parent to use emit