made Producer a subclass of Agent