using System;
public static class StringExtensions {
// string is an existing class! :O
public static string Foo(this string x) {
return x + "hahaha";
}
}
public static class Program {
public static void Main(string[] args) {
// just use . notation! :O
Console.WriteLine("{0}", "lol".Foo());
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIHN0YXRpYyBjbGFzcyBTdHJpbmdFeHRlbnNpb25zIHsKICAgIC8vIHN0cmluZyBpcyBhbiBleGlzdGluZyBjbGFzcyEgOk8KICAgIHB1YmxpYyBzdGF0aWMgc3RyaW5nIEZvbyh0aGlzIHN0cmluZyB4KSB7CiAgICAgICAgcmV0dXJuIHggKyAiaGFoYWhhIjsKICAgIH0KfQoKcHVibGljIHN0YXRpYyBjbGFzcyBQcm9ncmFtIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKHN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICAvLyBqdXN0IHVzZSAuIG5vdGF0aW9uISA6TwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCJ7MH0iLCAibG9sIi5Gb28oKSk7CiAgICB9Cn0K