extern C interface
extern C interface 1st draft complete