B template pre-processor