add encode tools