#include <bits/stdc++.h>
using namespace std;
double dp[5010][5010] = {0};
double dpx[5010] = {0};
int main() {
  int n, t;
  cin >> n >> t;
  dpx[0] = 1;
  dp[0][0] = 1;
  int A[n + 1];
  int B[n + 1];
  for (int i = 1; i <= n; ++i) cin >> A[i] >> B[i];
  int sum = 0;
  double ans = 0;
  for (int i = 1; i <= n; ++i) {
    sum += B[i];
    double carry = 1;
    double egg = 0;
    double egg1 = 0;
    double carry1 = 1;
    for (int j = 1; j < B[i]; ++j)
      carry = carry * (A[i] / 100.0), carry1 = carry1 * (1.0 - (A[i] / 100.0));
    for (int k = i; k <= 5000 && k <= sum; ++k) {
      dp[i][k] += (A[i] / 100.0) * dp[i - 1][k - 1];
      dp[i - 1][k] += (1.0 - (A[i] / 100.0)) * dp[i - 1][k - 1];
      if (k - B[i] - (i - 1) >= 0) {
        egg1 = dpx[k - B[i]];
        dp[i][k] -= egg1 * (A[i] / 100.0) * carry1;
        dp[i][k] += egg1 * carry1;
        egg = dpx[k - B[i]];
        dp[i - 1][k] -= carry1 * (1.0 - (A[i] / 100.0)) * egg;
      }
    }
    for (int k = i; k <= sum && k <= 5000; ++k) {
      dpx[k] = dp[i][k];
    }
  }
  for (int i = 1; i <= n; ++i) ans += i * dp[i][t];
  for (int i = n; i < t; ++i) ans += n * dp[n][i];
  printf("%.9f\n", ans);
  return 0;
}
