The plain-old-c version is added