for ( int i = 0; i < m_categories.length; i++ ) { hash = hash + 687364287; hash ^= m_categories[i].hashCode(); }
hash ^= hashArray( m_categories );
    public int hashCode()    {        int hash = super.hashCode();        for ( int i = 0; i < m_categories.length; i++ )        {            hash = hash + 687364287;            hash ^= m_categories[i].hashCode();        }        return hash;    }