

def isSquare(a):
    if a == 0:
        return False
    for i in range(int(a**0.5)+2):
        if i**2 == a:
            return True

    return False


def dfa(x):
    return  4*int(round(x**0.5)) + 4



if __name__ == '__main__':
    tempo = input()
    s = input()
    cX, cO = 0,0
    rX = []
    rO = []


    for i in range(len(s)):
        if s[i] == 'X':
            cX += 1
        else:
            cO += 1
        rX.append(cX)
        rO.append(cO)

    nX, nO = [], []
    for i in range(1,len(rX)+1):
        nX.append(rX[-i])
        nO.append(rO[-i])
    nX.append(0)
    nO.append(0)
    #print(nX, nO)

    counter = 0
    for i in range(len(nX)):
        for j in range(i+1, len(nX)):
            cX, cO = nX[i] - nX[j], nO[i] - nO[j]
            #print(cX, cO)
            if isSquare(cX) and cO == dfa(cX):
                counter += 1
            elif isSquare(cO) and cX == dfa(cO):
                counter += 1

    print(counter)
