Add encode function