//叉乘求任意多边形(凹凸皆可)面积 多边形顶点输入时得按顺(逆)时针排列 ZQU 1303
#include<stdio.h>
typedef struct
{
int x;
int y;
}point;
point p[1000];
int main()
{ // freopen("1.txt","r",stdin);
int n,i,j,k,h;
double area;
scanf("%d",&n);
for(h=1;h<=n;h++)//n 为测试用例的个数
{
area=0;
scanf("%d",&k);
for(j=0;j<k;j++) //k为顶点个数
scanf("%d%d",&p[j].x,&p[j].y);多边形顶点时得按顺(逆)时针录入
for(i=0;i<k;i++)
{
j=(i+1)%k;
area+=p[i].x*p[j].y;
area-=p[i].y*p[j].x;
}
area/=2;
if(area<0)
area=-area;
printf("%.3lf\n",area);
}
return 0;
}