public boolean isSubsetOf(final AbstractMP3Tag abstractMP3Tag) {
final AbstractID3v2 subset = new ID3v2_4(this);
final AbstractID3v2 superset = new ID3v2_4(abstractMP3Tag);
final Iterator iterator = subset.iterator();
while (iterator.hasNext()) {
final AbstractID3v2Frame subsetFrame = (AbstractID3v2Frame) iterator.next();
final String identifier = subsetFrame.getIdentifier();
final AbstractID3v2Frame supersetFrame = superset.getFrame(identifier);
if (supersetFrame == null) {
return false;
}
if (!subsetFrame.isSubsetOf(supersetFrame)) {
return false;