---
Function {
 argument: None,
 arguments: FunctionArguments {
  arguments: [
   FunctionArgument {
    identifier: "config",
    default: None,
   },
  ],
  ellipsis: true,
 },
 definition: Map {
  bindings: [
   KeyValue(
    AttributePath {
     attributes: [
      Raw {
       content: "config",
       position: (5, 3),
      },
     ],
    },
    Map {
     bindings: [
      KeyValue(
       AttributePath {
        attributes: [
         Raw {
          content: "environment",
          position: (7, 5),
         },
         Raw {
          content: "pathsToLink",
          position: (7, 17),
         },
        ],
       },
       List {
        elements: [
         String {
          parts: [
           Raw {
            content: "/share/terminfo",
            position: (8, 8),
           },
          ],
         },
        ],
        position: (7, 31),
       },
      ),
      KeyValue(
       AttributePath {
        attributes: [
         Raw {
          content: "environment",
          position: (11, 5),
         },
         Raw {
          content: "etc",
          position: (11, 17),
         },
         Raw {
          content: "terminfo",
          position: (11, 21),
         },
        ],
       },
       Map {
        bindings: [
         KeyValue(
          AttributePath {
           attributes: [
            Raw {
             content: "source",
             position: (12, 7),
            },
           ],
          },
          String {
           parts: [
            Expression {
             expression: PropertyAccess {
              expression: Variable {
               identifier: "config",
               position: (12, 19),
              },
              attribute_path: AttributePath {
               attributes: [
                Raw {
                 content: "system",
                 position: (12, 26),
                },
                Raw {
                 content: "path",
                 position: (12, 33),
                },
               ],
              },
              default: None,
             },
            },
            Raw {
             content: "/share/terminfo",
             position: (12, 38),
            },
           ],
          },
         ),
        ],
        recursive: false,
        position: (11, 32),
       },
      ),
      KeyValue(
       AttributePath {
        attributes: [
         Raw {
          content: "environment",
          position: (15, 5),
         },
         Raw {
          content: "profileRelativeSessionVariables",
          position: (15, 17),
         },
        ],
       },
       Map {
        bindings: [
         KeyValue(
          AttributePath {
           attributes: [
            Raw {
             content: "TERMINFO_DIRS",
             position: (16, 7),
            },
           ],
          },
          List {
           elements: [
            String {
             parts: [
              Raw {
               content: "/share/terminfo",
               position: (16, 26),
              },
             ],
            },
           ],
           position: (16, 23),
          },
         ),
        ],
        recursive: false,
        position: (15, 51),
       },
      ),
      KeyValue(
       AttributePath {
        attributes: [
         Raw {
          content: "environment",
          position: (19, 5),
         },
         Raw {
          content: "extraInit",
          position: (19, 17),
         },
        ],
       },
       String {
        parts: [
         Raw {
          content: "\n# reset TERM with new TERMINFO available (if any)\nexport TERM=$TERM\n",
          position: (20, 1),
         },
        ],
       },
      ),
      KeyValue(
       AttributePath {
        attributes: [
         Raw {
          content: "security",
          position: (25, 5),
         },
         Raw {
          content: "sudo",
          position: (25, 14),
         },
         Raw {
          content: "extraConfig",
          position: (25, 19),
         },
        ],
       },
       String {
        parts: [
         Raw {
          content: "\n# Keep terminfo database for root and %wheel.\nDefaults:root,%wheel env_keep+=TERMINFO_DIRS\nDefaults:root,%wheel env_keep+=TERMINFO\n",
          position: (26, 1),
         },
        ],
       },
      ),
     ],
     recursive: false,
     position: (5, 12),
    },
   ),
  ],
  recursive: false,
  position: (4, 1),
 },
 position: (3, 1),
}