C implementation

C implementationC implementationC implementationC implementationC implementationC implementation
C implementationC implementationC implementationC implementationC implementationC implementation
C implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementationC implementation