#include<iostream>
using namespace std;

struct data{int a,b,c,d;};

data calc(data p,data q){
  data res;
  res.a=p.a*q.a-p.b*q.b-p.c*q.c-p.d*q.d;
  res.b=p.a*q.b+p.b*q.a+p.c*q.d-p.d*q.c;
  res.c=p.a*q.c-p.b*q.d+p.c*q.a+p.d*q.b;
  res.d=p.a*q.d+p.b*q.c-p.c*q.b+p.d*q.a;
  return res;
}

int main(){
  data p,q;
  int n;
  while(cin>>n&&n){
    for(int i=0;i<n;i++){
      cin>>p.a>>p.b>>p.c>>p.d;
      cin>>q.a>>q.b>>q.c>>q.d;
      data ans=calc(p,q);
      cout<<ans.a<<' '<<ans.b<<' '<<ans.c<<' '<<ans.d<<endl;
    }
  }
}