#include <iostream>
#include <string>
using namespace std;

// 1.关于这里为什么对2的个数限制在8个,3的个数限制在2个。
// 1.数的增量只能由2和3来,2的增量是4-2=2,3的增量是3*3-3=6.
// 2.我们要求的是 原来的数的和加上增量后可以被9整除 ( sum%9+(2*j+6*i) )%9==0
// 3.由于sum%9属于0-8范围内,因此 (2*j+6*i)%9 也应该在0-8范围内

// 余数 最小达到增量
// 1    10=2*5
// 2    2=2*1
// 3    12=2*6 or 12=6*2
// 4    4=2*2
// 5    14=2*7
// 6    6=2*3 or 6=6*1
// 7    16=2*8
// 8    8=2*4
// 由上表可以看出,2最大得有8个,6最大得有2个。

// 本题判断 9-sum%9==(2*j+6*i)%9即可


bool ist(string s) {
    int k = s.size();
    int sum = 0, n1 = 0, n2 = 0;
    for (int i = 0; i < k; i++) {
        sum += s[i] - '0';
        sum = sum % 9;
        if (s[i] == '2') n1++;
        if (s[i] == '3') n2++;
    }

    if (sum != 0) {
        int origin = 9 - sum;
        for (int i = 0; i <= min(n2, 2); i++) {
            for (int j = 0; j <= min(n1, 8); j++) {
                if (origin == (j * 2 + i * 6) % 9) {
                    return true;
                }

            }
        }
    } else {
        return true;
    }

    return false;

}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin >> n;
    while (n--) {
        string s;
        cin >> s;
        if (ist(s)) {
            cout << "YES" << endl;
        } else {
            cout << "NO" << endl;
        }

    }
}