added middleman init