optimize encode