public static string reverse(string self) { if (self.Length < 2) return self; StringBuilder s = new StringBuilder(self.Length); for (int i=self.Length-1; i>=0; i--) s.Append(self[i]); return s.ToString(); }