//IaMaNanBord//      #include <bits/stdc++.h>   using namespace std;      //Macro Shorthands   #define F                       first   #define S                       second   #define f(i,n)                  for(ll i=0;i<=n;i++)   #define rf(i,n)                 for(ll i=n;i>=0;i--)   #define Cf(i,a,b)               for(ll i=a;i<=b;i++)   #define Crf(i,b,a)              for(ll i=b;i>=a;i--)   // #define endl                      n               #define pb                      push_back   #define mp                      make_pair   #define z                       ((ll)1e9 + 7)     #define every(it,x)             for(auto &it:x)   #define SET(it,x)               for(auto &it:x){cin>>it;}   #define ins                     insert   #define INF      ((ll)1e18)   #define Test                    ll T; cin>>T; while(T--)   #define all(v)                  v.begin(),v.end()   #define nline                   cout<<endl   #define SZ(v)                   (ll)v.size()   #define pll                     pair<ll,ll>         //Macro Shorthands   #ifndef ONLINE_JUDGE       #define revelio(args...)        { string _s = #args; replace(_s.begin(), _s.end(),  , ,    );stringstream _ss(_s); istream_iterator<string> _it(_ss); err(_it, args); }   #else       #define revelio(args...)        {}   #endif      void err(istream_iterator<string> it) {}   template<typename T, typename... Args>   void err(istream_iterator<string> it, T a, Args... args) {cerr << *it <<   =   << a << endl; err(++it, args...);}      //Data types   typedef long long               ll;   typedef vector<ll>              vll;   typedef vector<string>          vstr;   typedef vector<char>            vchar;   typedef vector<pair<ll,ll> >    vpll;   typedef set<ll>                 sll;   typedef set<string>             sstr;   typedef set<pair<ll,ll> >       spll;   typedef map<ll,ll>              mllll;   typedef map<string,ll>          mstrll;   typedef queue<ll>               qll;         //Functions   ll powMod(ll x,ll y)            {ll p=1; while(y){if(y%2){p=(p*x)%z;} y/=2; x=(x*x)%z;} return p;}   ll CpowMod(ll x,ll y, ll w)     {ll p=1; while(y){if(y%2){p=(p*x)%w;} y/=2; x=(x*x)%w;}return p;}   ll invMod(ll x)                 {return powMod(x,z-2);}   ll CinvMod(ll x,ll w)           {return CpowMod(x,w-2,w);}   ll gcd(ll a, ll b)              {return b == 0 ? a : gcd(b, a % b);}   // ll exGcd(ll a,ll b,ll &x, ll &y){if(b==0){y = 0;x = 1;return a;}ll xtmp, ytmp;ll g = exGcd(b,a%b,xtmp,ytmp);   //                                 x=ytmp; y = xtmp - (a/b)*ytmp;return g;}   // vll sub;   // void subSet(ll k,ll n)          {if(k==n+1){every(it,sub)cout<<it<<   ;cout<<endl;}   //                                 else{sub.pb(k);subSet(k+1,n);   //                                 sub.pop_back();subSet(k+1,n);}}      // vll perm; const ll N = (ll)2e6 ;bool isSelected[N];   // void permut(ll n)               {if(perm.size()==n){every(it,perm)cout<<it<<   ;cout<<endl;}   //                                 else{Cf(i,1,n){if(isSelected[i])continue;perm.pb(i);   //                                 isSelected[i]=1;permut(n);perm.pop_back();isSelected[i] =0;}}}       void solve(){       Test{           vll a(3);           SET(it,a);           sort(all(a));           ll sum = a[0] + a[1] + a[2];           if(sum%9){               cout<< NO <<endl;           }           else{               ll x = sum/9;               if(x>a[0]){                   cout<< NO <<endl;               }               else{                   cout<< YES <<endl;               }           }       }   }         int main(){       ios_base::sync_with_stdio(0) ;       cin.tie(0) ; cout.tie(0) ;       cout.precision(20);          #ifndef ONLINE_JUDGE       freopen( input.txt ,  r , stdin);       freopen( output.txt ,  w , stdout);    freopen( error.txt , w ,stderr);       #else              #endif       solve();       #ifndef ONLINE_JUDGE           cout<<  nTime Elapsed:  <<1.0*clock()/ CLOCKS_PER_SEC<<  Sec n ;       #endif       return 0;   }