about to start implement types for csharp
update
update