using System;
using System.Collections.Generic;
using System.Linq;
using System.Diagnostics;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Drawing;
using System.Net;
namespace X
{
public static class ExtensionMethods
{
public static int Occurences(this string str, string val)
{
string copy = str;
int instancesOf = 0;
int indexOfVal;
while ((indexOfVal = copy.IndexOf(val)) != -1)
{
copy = copy.Remove(indexOfVal, val.Count());
instancesOf++;
}
return instancesOf;
}
}
class Project
{
public static void Main()
{
string s = "ababab";
Console.WriteLine(s.Occurences("ab"));
Console.WriteLine(s.IndexOf("ba", 3, 3));
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5EaWFnbm9zdGljczsKdXNpbmcgU3lzdGVtLlRleHQ7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIFN5c3RlbS5JTzsKdXNpbmcgU3lzdGVtLkRyYXdpbmc7CnVzaW5nIFN5c3RlbS5OZXQ7CgpuYW1lc3BhY2UgWAp7CglwdWJsaWMgc3RhdGljIGNsYXNzIEV4dGVuc2lvbk1ldGhvZHMKICAgIHsKICAgICAgICBwdWJsaWMgc3RhdGljIGludCBPY2N1cmVuY2VzKHRoaXMgc3RyaW5nIHN0ciwgc3RyaW5nIHZhbCkKICAgICAgICB7CiAgICAgICAgICAgIHN0cmluZyBjb3B5ID0gc3RyOwoKICAgICAgICAgICAgaW50IGluc3RhbmNlc09mID0gMDsKICAgICAgICAgICAgaW50IGluZGV4T2ZWYWw7CgogICAgICAgICAgICB3aGlsZSAoKGluZGV4T2ZWYWwgPSBjb3B5LkluZGV4T2YodmFsKSkgIT0gLTEpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGNvcHkgPSBjb3B5LlJlbW92ZShpbmRleE9mVmFsLCB2YWwuQ291bnQoKSk7CiAgICAgICAgICAgICAgICBpbnN0YW5jZXNPZisrOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gaW5zdGFuY2VzT2Y7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIFByb2plY3QKICAgIHsKICAgICAgICBwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCiAgICAgICAgewogICAgICAgICAgICBzdHJpbmcgcyA9ICJhYmFiYWIiOwogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShzLk9jY3VyZW5jZXMoImFiIikpOwogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShzLkluZGV4T2YoImJhIiwgMywgMykpOwogICAgICAgIH0KICAgIH0KfQ==