```
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main {
    Set<Character> set = new HashSet<>();

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        String[] s = new String[n];
        for (int i = 0; i < n; i++) {
            s[i] = sc.next();
        }
        Main m = new Main();
        m.setSet();
        for (int i = 0; i < n; i++) {
            System.out.println(m.isStrong(s[i]) ? "yes" : "no");
        }
    }

    public void setSet() {
        set.add('!');
        set.add('@');
        set.add('#');
        set.add('$');
        set.add('%');
        set.add('^');
        set.add('&');
        set.add('*');
        set.add('(');
        set.add(')');
        set.add('_');
        set.add('-');
        set.add('=');
        set.add('+');
        set.add('[');
        set.add(']');
        set.add('{');
        set.add('}');
        set.add(',');
        set.add('.');
        set.add('<');
        set.add('>');
        set.add('/');
        set.add('?');
    }


    public boolean isStrong(String s) {
        int n = s.length();

        if (n < 8) {
            return false;
        }

        boolean f1 = false, f2 = false, f3 = false, f4 = false;
        for (char c : s.toCharArray()) {
            if (c <= 'Z' && c >= 'A' && !f1) {
                f1 = true;
            } else if (c <= 'z' && c >= 'a' && !f2) {
                f2 = true;
            } else if (c <= '9' && c >= '0' && !f3) {
                f3 = true;
            } else if (set.contains(c)) {
                f4 = true;
            }
        }
        if (!(f1 && f2 && f3 && f4)) {
            return false;
        }
        if (n > 2) {
            for (int i = 0; i < n - 2; i++) {
                String sub = s.substring(i, i + 3);
                if ((sub.charAt(2) - sub.charAt(1) == sub.charAt(1) - sub.charAt(0))
                        && (sub.charAt(2) <= '9' && sub.charAt(2) >= '0')
                        && (sub.charAt(1) <= '9' && sub.charAt(1) >= '0')
                        && (sub.charAt(0) <= '9' && sub.charAt(0) >= '0')) {
                    return false;
                }
            }
        }

        if (n > 2) {
            for (int i = 0; i < n - 2; i++) {
                String sub = s.substring(i, i + 3);
                if ((sub.charAt(2) - sub.charAt(1) == 1 && sub.charAt(1) - sub.charAt(0) == 1)
                        && (((sub.charAt(2) <= 'Z' && sub.charAt(2) >= 'A')
                        && (sub.charAt(1) <= 'Z' && sub.charAt(1) >= 'A')
                        && (sub.charAt(0) <= 'Z' && sub.charAt(0) >= 'A'))
                        || ((sub.charAt(2) <= 'z' && sub.charAt(2) >= 'a')
                        && (sub.charAt(1) <= 'z' && sub.charAt(1) >= 'a')
                        && (sub.charAt(0) <= 'z' && sub.charAt(0) >= 'a')))) {
                    return false;
                }
            }
        }

        if (s.indexOf("password") != -1) {
            return false;
        }
        if (s.indexOf("admin") != -1) {
            return false;
        }
        if (s.indexOf("qwerty") != -1) {
            return false;
        }
        if (s.indexOf("hello") != -1) {
            return false;
        }
        if (s.indexOf("iloveyou") != -1) {
            return false;
        }
        if (s.indexOf("112233") != -1) {
            return false;
        }

        return true;
    }


}

```