impl holder_c