finished SHIM api