updated Task3.Producer