---
Function {
 argument: None,
 arguments: FunctionArguments {
  arguments: [
   FunctionArgument {
    identifier: "lib",
    default: None,
   },
   FunctionArgument {
    identifier: "config",
    default: None,
   },
  ],
  ellipsis: true,
 },
 definition: With {
  expression: Variable {
   identifier: "lib",
   position: (6, 6),
  },
  target: Map {
   bindings: [
    KeyValue(
     AttributePath {
      attributes: [
       Raw {
        content: "environment",
        position: (9, 3),
       },
       Raw {
        content: "noXlibs",
        position: (9, 15),
       },
      ],
     },
     FunctionApplication {
      function: Variable {
       identifier: "mkDefault",
       position: (9, 25),
      },
      arguments: [
       Variable {
        identifier: "true",
        position: (9, 35),
       },
      ],
     },
    ),
    KeyValue(
     AttributePath {
      attributes: [
       Raw {
        content: "i18n",
        position: (12, 3),
       },
       Raw {
        content: "supportedLocales",
        position: (12, 8),
       },
      ],
     },
     List {
      elements: [
       BinaryOperation {
        operator: Addition,
        operands: [
         PropertyAccess {
          expression: Variable {
           identifier: "config",
           position: (12, 30),
          },
          attribute_path: AttributePath {
           attributes: [
            Raw {
             content: "i18n",
             position: (12, 37),
            },
            Raw {
             content: "defaultLocale",
             position: (12, 42),
            },
           ],
          },
          default: None,
         },
         String {
          parts: [
           Raw {
            content: "/UTF-8",
            position: (12, 59),
           },
          ],
         },
        ],
        position: (12, 56),
       },
      ],
      position: (12, 27),
     },
    ),
    KeyValue(
     AttributePath {
      attributes: [
       Raw {
        content: "documentation",
        position: (14, 3),
       },
       Raw {
        content: "enable",
        position: (14, 17),
       },
      ],
     },
     FunctionApplication {
      function: Variable {
       identifier: "mkDefault",
       position: (14, 26),
      },
      arguments: [
       Variable {
        identifier: "false",
        position: (14, 36),
       },
      ],
     },
    ),
    KeyValue(
     AttributePath {
      attributes: [
       Raw {
        content: "documentation",
        position: (16, 3),
       },
       Raw {
        content: "nixos",
        position: (16, 17),
       },
       Raw {
        content: "enable",
        position: (16, 23),
       },
      ],
     },
     FunctionApplication {
      function: Variable {
       identifier: "mkDefault",
       position: (16, 32),
      },
      arguments: [
       Variable {
        identifier: "false",
        position: (16, 42),
       },
      ],
     },
    ),
    KeyValue(
     AttributePath {
      attributes: [
       Raw {
        content: "programs",
        position: (18, 3),
       },
       Raw {
        content: "command-not-found",
        position: (18, 12),
       },
       Raw {
        content: "enable",
        position: (18, 30),
       },
      ],
     },
     FunctionApplication {
      function: Variable {
       identifier: "mkDefault",
       position: (18, 39),
      },
      arguments: [
       Variable {
        identifier: "false",
        position: (18, 49),
       },
      ],
     },
    ),
   ],
   recursive: false,
   position: (8, 1),
  },
  position: (6, 1),
 },
 position: (4, 1),
}