added hash index implementation