cleanup
implemented lock/unlock event
cleanup