Olaf weakens after hitting Mexico's Los Cabos as Cat 2 storm