add c support