added CNB implementation