interfacing with c_functions part 0