#include <bits/stdc++.h>
using namespace std;
const int iinf = 0x3f3f3f3f;
const long long linf = 0x3f3f3f3f3f3f3f3f;
const int N = 5e3;
int n, m, a[N];
double p[N], f[N | 1][N | 1], sm[N | 2];
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0), cout.tie(0);
  cout.precision(12);
  cin >> n >> m;
  for (int i(0); i < (n); ++i) cin >> p[i] >> a[i], p[i] *= .01;
  f[0][0] = 1;
  for (int i(0); i < (n + 1); ++i)
    if (i) {
      f[i][0] = 0;
      vector<double> pw(a[i - 1]);
      pw[0] = 1;
      for (int j(0); j < (a[i - 1] - 1); ++j)
        pw[j + 1] = pw[j] * (1 - p[i - 1]);
      for (int j(0); j < (m + 1); ++j)
        if (j && a[i - 1] > 1) {
          f[i][j] = f[i][j - 1];
          if (j >= a[i - 1])
            f[i][j] -= f[i - 1][j - a[i - 1]] * pw[a[i - 1] - 2] * p[i - 1];
          f[i][j] *= (1 - p[i - 1]), f[i][j] += f[i - 1][j - 1] * p[i - 1];
        }
      for (int j(0); j < (m + 1); ++j)
        if (j >= a[i - 1]) f[i][j] += f[i - 1][j - a[i - 1]] * pw[a[i - 1] - 1];
    }
  for (int i(0); i < (n + 1); ++i)
    for (int j(0); j < (m + 1); ++j) sm[i] += f[i][j];
  double ns = 0;
  for (int i(0); i < (n + 1); ++i) ns += (sm[i] - sm[i + 1]) * i;
  cout << fixed << ns << '\n';
  return 0;
}
