overrode init method