text: "use strict";
  var __importStar = (this && this.__importStar) || function (mod) {
      if (mod && mod.__esModule) return mod;
      var result = {};
      if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
      result["default"] = mod;
      return result;
  };
  Object.defineProperty(exports, "__esModule", { value: true });
  var A = __importStar(require("fp-ts/lib/Array"));
  var O = __importStar(require("fp-ts/lib/Option"));
  function filterA(F) {
      var wither = A.array.wither(F);
      return function (p) { return function (as) { return wither(as, function (a) { return F.map(p(a), function (b) { return (b ? O.some(a) : O.none); }); }); }; };
  }
  exports.filterA = filterA;
  