added hash diff and intersection