#include <bits/stdc++.h>
using namespace std;
const int maxn = 400010;
pair<int, int> a[maxn], b[maxn];
int tot, cnt[110];
double qpow(double a, int x) {
  double res = 1.0;
  while (x) {
    if (x & 1) res = res * a;
    a = a * a;
    x >>= 1;
  }
  return res;
}
int main() {
  int N, M, i, j, A, H, L, R;
  scanf("%d%d", &N, &M);
  for (int i = 1; i <= N; i++) {
    scanf("%d%d%d%d", &A, &H, &L, &R);
    b[++tot] = make_pair(A - H, L);
    b[++tot] = make_pair(A, -L);
    b[++tot] = make_pair(A + 1, R);
    b[++tot] = make_pair(A + H + 1, -R);
  }
  for (int i = 1; i <= M; i++) scanf("%d%d", &a[i].first, &a[i].second);
  sort(a + 1, a + M + 1);
  sort(b + 1, b + tot + 1);
  double ans = 0;
  int pos = 1;
  for (int i = 1; i <= M; i++) {
    while (pos <= tot && b[pos].first <= a[i].first) {
      if (b[pos].second > 0) cnt[b[pos].second]++;
      if (b[pos].second < 0) cnt[-b[pos].second]--;
      pos++;
    }
    if (!cnt[100]) {
      double p = a[i].second;
      for (int j = 1; j <= 99; j++) p *= qpow(0.01 * (100 - j), cnt[j]);
      ans += p;
    }
  }
  printf("%.12lf\n", ans);
  return 0;
}
