elseif(h.length>(2**128-1))// since we have to be able to return -1 (if the char isn't found or input error), this function must return an "int" type with a max length of (2^128 - 1)
return-1;
else
{
uintsubindex=0;
for(uinti=0;i<h.length;i++)
{
if(h[i]==n[0])// found the first char of b
{
subindex=1;
while(subindex<n.length&&(i+subindex)<h.length&&h[i+subindex]==n[subindex])// search until the chars don't match or until we reach the end of a or b