So in given code (find mistakes etc.) there is a function overwritten that's called "HashCode". What is this used for? example
public int hashCode() {
            int result = name != null ? name.hashCode() : 0;
            result = 31 * result + (assets != null ? assets.hashCode() : 0);
            return result;
        }