I ported surface interp to C
https://tio.run/##zVlbd5tKsn42f2Fe2uBsgW6AZMmybnF2kj0r5yTjrFzOnnVkxcbQkoglYAOypDiav575qhuQfMmec3kZLCPorqqu6q76uqp17SSzHz9cJ2VDFoXzjcLdWcjUI1tFQ7KMJ47L665ihlFqpn6wcV3z2g/M1HVZLcwJ9gjrZt5G0n780Ow2Y@pWDyvPG83DsxpTzfLFq9teaeRMGvU/xu9v3r//u3Ghl7SX56p9rPbKpqKZZev7iWleXV2pV4wZo1ppPNKHJyflaq/dKVfPeiW7emZbtm3ojYbxkR1cHAe9g4MD3X5fKrWapY9fSs9xHeJPfHAVr3Q/FC1ZsyB5fB0aTP9jrWjDA0Vjzfbh2cGVoina5bCCqy7ulUq3e1ar1db4r1eeK9pVHzT98XZb6Y/6/fpwuB7WxsORot0p2nqraA2VrC8r2mDd/yAEjF5lkip/vMWtXxuPovdvX7/4@Lra6Ne0xqvzauPj5181Gy@t4o26mnj78PrFq/PPn6oNyfLXN//1@vP731689H0/Sjwv8cLZeHh2VqlDwbP6cA…
https://tio.run/##zVlbd5tKsn42f2Fe2uBsgW6AZMmybnF2kj0r5yTjrFzOnnVkxcbQkoglYAOypDiav575qhuQfMmec3kZLCPorqqu6q76uqp17SSzHz9cJ2VDFoXzjcLdWcjUI1tFQ7KMJ47L665ihlFqpn6wcV3z2g/M1HVZLcwJ9gjrZt5G0n780Ow2Y@pWDyvPG83DsxpTzfLFq9teaeRMGvU/xu9v3r//u3Ghl7SX56p9rPbKpqKZZev7iWleXV2pV4wZo1ppPNKHJyflaq/dKVfPeiW7emZbtm3ojYbxkR1cHAe9g4MD3X5fKrWapY9fSs9xHeJPfHAVr3Q/FC1ZsyB5fB0aTP9jrWjDA0Vjzfbh2cGVoina5bCCqy7ulUq3e1ar1db4r1eeK9pVHzT98XZb6Y/6/fpwuB7WxsORot0p2nqraA2VrC8r2mDd/yAEjF5lkip/vMWtXxuPovdvX7/4@Lra6Ne0xqvzauPj5181Gy@t4o26mnj78PrFq/PPn6oNyfLXN//1@vP731689H0/Sjwv8cLZeHh2VqlDwbP6cA…