adding component counting abilities