use our own complement component