text: // Generated by purs version 0.11.6
  "use strict";
  var Control_Apply = require("../Control.Apply");
  var Control_Category = require("../Control.Category");
  var Control_Semigroupoid = require("../Control.Semigroupoid");
  var Data_Foldable = require("../Data.Foldable");
  var Data_Function = require("../Data.Function");
  var Data_Functor = require("../Data.Functor");
  var Data_Monoid_Dual = require("../Data.Monoid.Dual");
  var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");
  var Data_Semigroup = require("../Data.Semigroup");
  var Data_Unit = require("../Data.Unit");
  var Prelude = require("../Prelude");
  var Act = function (x) {
      return x;
  };
  var Foldable1 = function (Foldable0, fold1, foldMap1) {
      this.Foldable0 = Foldable0;
      this.fold1 = fold1;
      this.foldMap1 = foldMap1;
  };
  var semigroupAct = function (dictApply) {
      return new Data_Semigroup.Semigroup(function (v) {
          return function (v1) {
              return Control_Apply.applySecond(dictApply)(v)(v1);
          };
      });
  };
  var getAct = function (v) {
      return v;
  };
  var foldMap1 = function (dict) {
      return dict.foldMap1;
  };
  var traverse1_ = function (dictFoldable1) {
      return function (dictApply) {
          return function (f) {
              return function (t) {
                  return Data_Functor.voidRight(dictApply.Functor0())(Data_Unit.unit)(getAct(foldMap1(dictFoldable1)(semigroupAct(dictApply))(function ($28) {
                      return Act(f($28));
                  })(t)));
              };
          };
      };
  };
  var for1_ = function (dictFoldable1) {
      return function (dictApply) {
          return Data_Function.flip(traverse1_(dictFoldable1)(dictApply));
      };
  };
  var sequence1_ = function (dictFoldable1) {
      return function (dictApply) {
          return traverse1_(dictFoldable1)(dictApply)(Control_Category.id(Control_Category.categoryFn));
      };
  };
  var fold1Default = function (dictFoldable1) {
      return function (dictSemigroup) {
          return foldMap1(dictFoldable1)(dictSemigroup)(Control_Category.id(Control_Category.categoryFn));
      };
  };
  var foldableDual = new Foldable1(function () {
      return Data_Foldable.foldableDual;
  }, function (dictSemigroup) {
      return fold1Default(foldableDual)(dictSemigroup);
  }, function (dictSemigroup) {
      return function (f) {
          return function (v) {
              return f(v);
          };
      };
  });
  var foldableMultiplicative = new Foldable1(function () {
      return Data_Foldable.foldableMultiplicative;
  }, function (dictSemigroup) {
      return fold1Default(foldableMultiplicative)(dictSemigroup);
  }, function (dictSemigroup) {
      return function (f) {
          return function (v) {
              return f(v);
          };
      };
  });
  var fold1 = function (dict) {
      return dict.fold1;
  };
  var foldMap1Default = function (dictFoldable1) {
      return function (dictFunctor) {
          return function (dictSemigroup) {
              return function (f) {
                  return function ($29) {
                      return fold1(dictFoldable1)(dictSemigroup)(Data_Functor.map(dictFunctor)(f)($29));
                  };
              };
          };
      };
  };
  module.exports = {
      Foldable1: Foldable1, 
      fold1: fold1, 
      fold1Default: fold1Default, 
      foldMap1: foldMap1, 
      foldMap1Default: foldMap1Default, 
      for1_: for1_, 
      sequence1_: sequence1_, 
      traverse1_: traverse1_, 
      foldableDual: foldableDual, 
      foldableMultiplicative: foldableMultiplicative
  };
  