#include <bits/stdc++.h>
using namespace std;
int n;
double x[15], v[15], m[15], t, T, t1, vv1, vv2;
double cal(int i, int j) {
  if (abs(v[i] - v[j]) < 1e-10) return 0x7fffffff;
  if (x[i] > x[j]) swap(i, j);
  double tt = (x[j] - x[i]) / (v[i] - v[j]);
  if (tt < 1e-10)
    return 0x7fffffff;
  else
    return tt;
}
int main() {
  scanf("%d%lf", &n, &T);
  for (int i = 0; i < n; i++) scanf("%lf%lf%lf", x + i, v + i, m + i);
  while (T - t > 1e-10) {
    t1 = T - t;
    for (int i = 0; i < n; i++)
      for (int j = i + 1; j < n; j++) t1 = min(t1, cal(i, j));
    for (int i = 0; i < n; i++) x[i] = x[i] + t1 * v[i];
    for (int i = 0; i < n; i++)
      for (int j = i + 1; j < n; j++)
        if (abs(x[i] - x[j]) < 1e-10) {
          vv1 = ((m[i] - m[j]) * v[i] + 2 * m[j] * v[j]) / (m[i] + m[j]);
          vv2 = ((m[j] - m[i]) * v[j] + 2 * m[i] * v[i]) / (m[i] + m[j]);
          v[i] = vv1;
          v[j] = vv2;
        }
    t += t1;
  }
  for (int i = 0; i < n; i++) printf("%.9f\n", x[i]);
}
