#include <iostream>
#include <math.h>
#include <stdio.h>

using namespace std;

typedef struct Point_obj{
	double x,y;
};

double Length(Point_obj *p0,Point_obj *p1){
	double x = p0->x - p1->x;
	double y = p0->y - p1->y;
	return sqrt( x*x + y*y);
}

int main(){
	//0は固定、1,2を動かす.
	Point_obj p[4];
	double s=0;
	double z=0;
	double a,b,c;
	char tmp;
	cin>>p[0].x,cin>>tmp,cin>>p[0].y;
	cin>>p[1].x,cin>>tmp,cin>>p[1].y;
	while(cin>>p[2].x){
		if(p[2].x==-1)break;
		cin>>tmp;
		cin>>p[2].y;
		a = Length(&p[0],&p[1]);
		b = Length(&p[1],&p[2]);
		c = Length(&p[2],&p[0]);
		z = (a+b+c)/2.0;
		s += sqrt(z*(z-a)*(z-b)*(z-c));
		p[1].x = p[2].x,p[1].y = p[2].y;
	}
	printf("%.6f\n",s);
}

/*

Sample Input
0.0,0.0
0.0,1.0 
1.0,1.0 
2.0,0.0 
1.0,-1.0 
Output for the Sample Input
2.500000

*/