1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import sys

def sprawdz(s):
    l, p = len(s), 0
    for i in range(l):
        for j in range(i+1, l+1): 
            if s[i:j] == "".join(reversed(s[i:j])):
                p = max(p, j-i)
    return p

# 1 PA
# 2 PPAA
# 3 PPPAPAAA
# 4 PPPP(APAAPPAPAAPP)

k = 3
best = 0
def rec(s):
    global k, best
    if sprawdz(s) > k:
        return
    if len(s) > best:
        print(len(s), s)
        best = len(s)
    rec(s + "P")
    rec(s + "A")

#rec("P")    


def generuj(n, k):
    res = ""
    if k >= 5:
        if k%2 == 1:
            q = (k // 2) - 1
            res = "PAPAPPAA"[8-q%8:] + "PAPAPPAA" * (q//8)
        else:
            q = (k // 2)
            res = "APPAAPAP"[8-q%8:] + "APPAAPAP" * (q//8)
        res += "PAPAAPPA" * (n//8 + 1)
        res = res[:n]
    if k == 4:
        res = "PPPP" + "APAAPPAPAAPP" * (n//12 + 1)
        res = res[:n]
    if k <= 3:
        s = ["PA", "PPAA", "PPPAPAAA"][k-1]
        if n > len(s):
            return None
        else:
            res = s[:n]
    return res

#nTC = 0
nTC = int(sys.stdin.readline().strip())
for tC in range(nTC):
    n, k = map(int, sys.stdin.readline().strip().split(' '))
    res = generuj(n, k)
    #if res is not None:
    #    print(len(res), sprawdz(res), res)
    print("NIE" if res is None else res)