remove immediate from constructor as this is a strange contract with the constructor