some demo coded by csharp