package no3502_GCD_knapsack; import java.util.*; public class Main { public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int w = sc.nextInt(); int max = 200001; long[] ans = new long[max]; ArrayList> l = new ArrayList<>(); l.add(new ArrayList<>()); for(int i = 1;i < max;i++) { l.add(new ArrayList<>()); }for(int i = 1;i < max;i++) { for(int j = i;j < max;j += i) { l.get(j).add(i); } } int[] x = new int[n]; int[] y = new int[n]; for(int i = 0;i < n;i++) { x[i] = sc.nextInt(); }for(int i = 0;i < n;i++) { y[i] = sc.nextInt(); }for(int i = 0;i < n;i++) { for(int s:l.get(x[i])) { ans[s] += y[i]; } }long out = 0; for(int i = w;i < max;i++) { out = Math.max(ans[i], out); }System.out.println(out); } }