#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;

struct Point
{
  double x, y;
};

Point operator+(Point A, Point B);
Point operator-(Point A, Point B);
Point operator*(Point A, double w);
Point operator*(double w, Point B);
istream& operator>>(istream &in, Point &A);
ostream& operator<<(ostream &out, Point A);

double norm(Point p);

int main()
{
  Point a, b, c;
  cin >> a >> b >> c;
  
  double p = norm(a - b) + norm(b - c) + norm(a - c);
  
  cout << "Triangle " << a << ',' << b << ',' << c 
       << " has perimeter " << p << endl;
  
  return 0;
}

Point operator+(Point A, Point B)
{
  Point p; 
  p.x = A.x + B.x; 
  p.y = A.y + B.y;
  return p;
}

Point operator-(Point A, Point B)
{
  Point p; 
  p.x = A.x - B.x; 
  p.y = A.y - B.y;
  return p;
}

Point operator*(Point A, double w)
{
  Point p;
  p.x = A.x*w;
  p.y = A.y*w;
  return p;
} 

Point operator*(double w, Point B)
{
  return B*w;
}

istream& operator>>(istream &in, Point &A)
{
  char c;
  return in >> c >> A.x >> c >> A.y >> c;
}

ostream& operator<<(ostream &out, Point A)
{
  return out << '(' << A.x << ',' << A.y << ')';
}

double norm(Point p) 
{ 
  return sqrt(p.x*p.x + p.y*p.y); 
}