add hash support