这些 shim 函数都是多余的...