Is there a c# version of this?