AFTER CLEANUP. Still need remove unnecessary methods in Producer.