Moduling the solution
Registering some synchronizers
Wrapped the push method