semi-cooperative