thanks. i think i actually misread the docs about overriding equals and hashCode, because i've been laboring under the impression i wasn't supposed to do that, but now i've read again and it's just the copy method the docs mention. i'll look at separate classes for the different app layers as well