intro and implementation for oligopoly