#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
#include <functional>
#include <utility>
#include <numeric>

using namespace std;

const int MAX_V = 300;
using Cap = int;
using Cost = int;

const int inf = 1e9;

class BM {
public:
    int V;
    vector<vector<int>> g;
    vector<int> match;
    vector<int> used;
    bool dfs(int v) {
        used[v] = true;
        for (int u : g[v]) {
            int w = match[u];
            if (w < 0 || (!used[w] && dfs(w))) {
                match[v] = u;
                match[u] = v;
                return true;
            }
        }
        return false;
    }

    BM(int v) : V(v), g(v), match(v), used(v) {}
    void ae(int u, int v) {
        g[u].emplace_back(v);
        g[v].emplace_back(u);
    }
    int mm() {
        int res = 0;
        fill(match.begin(), match.end(), -1);
        for (size_t v = 0; v < V; v++) {
            if (match[v] < 0) {
                fill(used.begin(), used.end(), 0);
                if (dfs(v)) res++;
            }
        }
        return res;
    }
};

int main() {
    int n, m;
    while (cin >> n >> m && n) {
        int x1[110], y1[110], v[110];
        int x2[110], y2[110];

        for (size_t i = 0; i < n; i++) {
            cin >> x1[i] >> y1[i] >> v[i];
        }
        for (size_t i = 0; i < m; i++) {
            cin >> x2[i] >> y2[i];
        }

        double lb = 0, ub = 1e9;
        for (size_t i = 0; i < 70; i++) {
            double mid = (lb + ub) / 2;
            BM bm(n + m + 2);
            for (size_t i = 0; i < n; i++) {
                for (size_t j = 0; j < m; j++) {
                    double dx = x1[i] - x2[j];
                    double dy = y1[i] - y2[j];
                    double d = sqrt(dx*dx + dy*dy) / v[i];
                    if (d <= mid) {
                        bm.ae(i, j + n);
                    }
                }
            }

            if (bm.mm() == m) {
                ub = mid;
            } else {
                lb = mid;
            }
        }
        printf("%.10lf\n", ub);
    }

}