Acervuline C# rewrite