add hashO

Signed-off-by: xiehuc <xiehuc@gmail.com>
Merge branch 'upstream'