added B and D complements