#include <bits/stdc++.h>
int cmp(const void* a, const void* b) { return (*(int*)a) - (*(int*)b); }
int main() {
  int n, w, i;
  int girlmin, boymin;
  float total;
  int a[200000], min = 1000000000, sum = 0;
  scanf("%d %d", &n, &w);
  for (i = 0; i < 2 * n; i++) {
    scanf("%d", &a[i]);
    sum = sum + a[i];
    if (min > a[i]) min = a[i];
  }
  if (min > w) {
    printf("%d", w);
    return 0;
  }
  qsort(a, 2 * n, sizeof(a[0]), cmp);
  girlmin = a[0];
  boymin = a[n];
  if (2 * girlmin > boymin) {
    total = 1.5 * n * (float)boymin;
    printf("%f", total > w ? (float)w : total);
  } else {
    total = 3 * n * (float)girlmin;
    printf("%f", total > w ? (float)w : total);
  }
  return 0;
}
