#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main ()
{
double x1, x2, x3, y1, y2, y3, z1, z2, z3;
long double a, b, c, p;
//стороны AB, BC, AC треугольника ABC обозначим
//соответственно, используя переменные a, b, c
//используем значения переменных с плавающей точкой
cin >> x1 >> x2 >> x3 >> y1 >> y2 >> y3 >> z1 >> z2 >> z3;
a= sqrt((x2-x1) * (x2-x1) + (y2-y1) * (y2-y1) + (z2-z1) * (z2-z1));
b= sqrt((x3-x2) * (x3-x2) + (y3-y2) * (y3-y2) + (z3-z2) * (z3-z2));
c= sqrt((x3-x1) * (x3-x1) + (y3-y1) * (y3-y1) + (z3-z1) * (z3-z1));
p= a + b + c;
//вычисляем периметр
cout << fixed << setprecision(10) << p << endl;
//выводим периметр треугольника с точностью до 10 (включительно) знаков после запятой
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGNtYXRoPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCmludCBtYWluICgpCnsKCWRvdWJsZSB4MSwgeDIsIHgzLCB5MSwgeTIsIHkzLCB6MSwgejIsIHozOwoJbG9uZyBkb3VibGUgYSwgYiwgYywgcDsKCS8v0YHRgtC+0YDQvtC90YsgQUIsIEJDLCBBQyDRgtGA0LXRg9Cz0L7Qu9GM0L3QuNC60LAgQUJDINC+0LHQvtC30L3QsNGH0LjQvCAKCS8v0YHQvtC+0YLQstC10YLRgdGC0LLQtdC90L3Qviwg0LjRgdC/0L7Qu9GM0LfRg9GPINC/0LXRgNC10LzQtdC90L3Ri9C1IGEsIGIsIGMKCS8v0LjRgdC/0L7Qu9GM0LfRg9C10Lwg0LfQvdCw0YfQtdC90LjRjyDQv9C10YDQtdC80LXQvdC90YvRhSDRgSDQv9C70LDQstCw0Y7RidC10Lkg0YLQvtGH0LrQvtC5CgljaW4gPj4geDEgPj4geDIgPj4geDMgPj4geTEgPj4geTIgPj4geTMgPj4gejEgPj4gejIgPj4gejM7CglhPSBzcXJ0KCh4Mi14MSkgKiAoeDIteDEpICsgKHkyLXkxKSAqICh5Mi15MSkgKyAoejItejEpICogKHoyLXoxKSk7CgliPSBzcXJ0KCh4My14MikgKiAoeDMteDIpICsgKHkzLXkyKSAqICh5My15MikgKyAoejMtejIpICogKHozLXoyKSk7CgljPSBzcXJ0KCh4My14MSkgKiAoeDMteDEpICsgKHkzLXkxKSAqICh5My15MSkgKyAoejMtejEpICogKHozLXoxKSk7CglwPSBhICsgYiArIGM7CgkvL9Cy0YvRh9C40YHQu9GP0LXQvCDQv9C10YDQuNC80LXRgtGAIAoJY291dCA8PCBmaXhlZCA8PCBzZXRwcmVjaXNpb24oMTApIDw8IHAgPDwgZW5kbDsKCS8v0LLRi9Cy0L7QtNC40Lwg0L/QtdGA0LjQvNC10YLRgCDRgtGA0LXRg9Cz0L7Qu9GM0L3QuNC60LAg0YEg0YLQvtGH0L3QvtGB0YLRjNGOINC00L4gMTAgKNCy0LrQu9GO0YfQuNGC0LXQu9GM0L3Qvikg0LfQvdCw0LrQvtCyINC/0L7RgdC70LUg0LfQsNC/0Y/RgtC+0LkKCXJldHVybiAwOwp9