Function(
 Function {
  head: Destructured(
   FunctionHeadDestructured {
    ellipsis: true,
    identifier: None,
    arguments: [
     FunctionHeadDestructuredArgument {
      identifier: "config",
      default: None,
     },
     FunctionHeadDestructuredArgument {
      identifier: "lib",
      default: None,
     },
     FunctionHeadDestructuredArgument {
      identifier: "utils",
      default: None,
     },
     FunctionHeadDestructuredArgument {
      identifier: "pkgs",
      default: None,
     },
    ],
   },
  ),
  body: With(
   With {
    expression: Identifier(
     Identifier {
      id: "lib",
      span: Span {
       start: Position {
        line: 3,
        column: 6,
       },
       end: Position {
        line: 3,
        column: 9,
       },
      },
     },
    ),
    target: LetIn(
     LetIn {
      bindings: [
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "ids",
            span: Span {
             start: Position {
              line: 6,
              column: 3,
             },
             end: Position {
              line: 6,
              column: 6,
             },
            },
           },
          ),
         ],
         to: PropertyAccess(
          PropertyAccess {
           expression: Identifier(
            Identifier {
             id: "config",
             span: Span {
              start: Position {
               line: 6,
               column: 9,
              },
              end: Position {
               line: 6,
               column: 15,
              },
             },
            },
           ),
           attribute_path: [
            Raw(
             PartRaw {
              content: "ids",
              span: Span {
               start: Position {
                line: 6,
                column: 16,
               },
               end: Position {
                line: 6,
                column: 19,
               },
              },
             },
            ),
           ],
           default: None,
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "cfg",
            span: Span {
             start: Position {
              line: 7,
              column: 3,
             },
             end: Position {
              line: 7,
              column: 6,
             },
            },
           },
          ),
         ],
         to: PropertyAccess(
          PropertyAccess {
           expression: Identifier(
            Identifier {
             id: "config",
             span: Span {
              start: Position {
               line: 7,
               column: 9,
              },
              end: Position {
               line: 7,
               column: 15,
              },
             },
            },
           ),
           attribute_path: [
            Raw(
             PartRaw {
              content: "users",
              span: Span {
               start: Position {
                line: 7,
                column: 16,
               },
               end: Position {
                line: 7,
                column: 21,
               },
              },
             },
            ),
           ],
           default: None,
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "allowsLogin",
            span: Span {
             start: Position {
              line: 10,
              column: 3,
             },
             end: Position {
              line: 10,
              column: 14,
             },
            },
           },
          ),
         ],
         to: Function(
          Function {
           head: Simple(
            FunctionHeadSimple {
             identifier: "hash",
            },
           ),
           body: BinaryOperation(
            BinaryOperation {
             left: BinaryOperation(
              BinaryOperation {
               left: Identifier(
                Identifier {
                 id: "hash",
                 span: Span {
                  start: Position {
                   line: 11,
                   column: 5,
                  },
                  end: Position {
                   line: 11,
                   column: 9,
                  },
                 },
                },
               ),
               operator: EqualTo,
               right: String(
                String_ {
                 parts: [],
                 span: Span {
                  start: Position {
                   line: 11,
                   column: 13,
                  },
                  end: Position {
                   line: 11,
                   column: 15,
                  },
                 },
                },
               ),
              },
             ),
             operator: LogicalOr,
             right: UnaryOperation(
              UnaryOperation {
               operator: Not,
               operand: FunctionApplication(
                FunctionApplication {
                 function: PropertyAccess(
                  PropertyAccess {
                   expression: Identifier(
                    Identifier {
                     id: "lib",
                     span: Span {
                      start: Position {
                       line: 12,
                       column: 10,
                      },
                      end: Position {
                       line: 12,
                       column: 13,
                      },
                     },
                    },
                   ),
                   attribute_path: [
                    Raw(
                     PartRaw {
                      content: "elem",
                      span: Span {
                       start: Position {
                        line: 12,
                        column: 14,
                       },
                       end: Position {
                        line: 12,
                        column: 18,
                       },
                      },
                     },
                    ),
                   ],
                   default: None,
                  },
                 ),
                 arguments: [
                  Identifier(
                   Identifier {
                    id: "hash",
                    span: Span {
                     start: Position {
                      line: 12,
                      column: 19,
                     },
                     end: Position {
                      line: 12,
                      column: 23,
                     },
                    },
                   },
                  ),
                  List(
                   List {
                    elements: [
                     Identifier(
                      Identifier {
                       id: "null",
                       span: Span {
                        start: Position {
                         line: 13,
                         column: 9,
                        },
                        end: Position {
                         line: 13,
                         column: 13,
                        },
                       },
                      },
                     ),
                     String(
                      String_ {
                       parts: [
                        Raw(
                         PartRaw {
                          content: "!",
                          span: Span {
                           start: Position {
                            line: 14,
                            column: 10,
                           },
                           end: Position {
                            line: 14,
                            column: 11,
                           },
                          },
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 14,
                         column: 9,
                        },
                        end: Position {
                         line: 14,
                         column: 12,
                        },
                       },
                      },
                     ),
                     String(
                      String_ {
                       parts: [
                        Raw(
                         PartRaw {
                          content: "!!",
                          span: Span {
                           start: Position {
                            line: 15,
                            column: 10,
                           },
                           end: Position {
                            line: 15,
                            column: 12,
                           },
                          },
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 15,
                         column: 9,
                        },
                        end: Position {
                         line: 15,
                         column: 13,
                        },
                       },
                      },
                     ),
                     String(
                      String_ {
                       parts: [
                        Raw(
                         PartRaw {
                          content: "*",
                          span: Span {
                           start: Position {
                            line: 16,
                            column: 10,
                           },
                           end: Position {
                            line: 16,
                            column: 11,
                           },
                          },
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 16,
                         column: 9,
                        },
                        end: Position {
                         line: 16,
                         column: 12,
                        },
                       },
                      },
                     ),
                    ],
                    span: Span {
                     start: Position {
                      line: 13,
                      column: 7,
                     },
                     end: Position {
                      line: 17,
                      column: 8,
                     },
                    },
                   },
                  ),
                 ],
                },
               ),
               span: Span {
                start: Position {
                 line: 12,
                 column: 8,
                },
                end: Position {
                 line: 17,
                 column: 9,
                },
               },
              },
             ),
            },
           ),
           span: Span {
            start: Position {
             line: 10,
             column: 17,
            },
            end: Position {
             line: 17,
             column: 9,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "passwordDescription",
            span: Span {
             start: Position {
              line: 19,
              column: 3,
             },
             end: Position {
              line: 19,
              column: 22,
             },
            },
           },
          ),
         ],
         to: IndentedString(
          IndentedString {
           parts: [
            Raw(
             PartRaw {
              content: "The options {option}`hashedPassword`,\n{option}`password` and {option}`passwordFile`\ncontrols what password is set for the user.\n{option}`hashedPassword` overrides both\n{option}`password` and {option}`passwordFile`.\n{option}`password` overrides {option}`passwordFile`.\nIf none of these three options are set, no password is assigned to\nthe user, and the user will not be able to do password logins.\nIf the option {option}`users.mutableUsers` is true, the\npassword defined in one of the three options will only be set when\nthe user is created for the first time. After that, you are free to\nchange the password with the ordinary user management commands. If\n{option}`users.mutableUsers` is false, you cannot change\nuser passwords, they will always be set according to the password\noptions.\n",
              span: Span {
               start: Position {
                line: 20,
                column: 1,
               },
               end: Position {
                line: 35,
                column: 3,
               },
              },
             },
            ),
           ],
           span: Span {
            start: Position {
             line: 19,
             column: 25,
            },
            end: Position {
             line: 35,
             column: 5,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "hashedPasswordDescription",
            span: Span {
             start: Position {
              line: 37,
              column: 3,
             },
             end: Position {
              line: 37,
              column: 28,
             },
            },
           },
          ),
         ],
         to: IndentedString(
          IndentedString {
           parts: [
            Raw(
             PartRaw {
              content: "To generate a hashed password run `mkpasswd -m sha-512`.\n\nIf set to an empty string (`\"\"`), this user will\nbe able to log in without being asked for a password (but not via remote\nservices such as SSH, or indirectly via {command}`su` or\n{command}`sudo`). This should only be used for e.g. bootable\nlive systems. Note: this is different from setting an empty password,\nwhich can be achieved using {option}`users.users.<name?>.password`.\n\nIf set to `null` (default) this user will not\nbe able to log in using a password (i.e. via {command}`login`\ncommand).\n",
              span: Span {
               start: Position {
                line: 38,
                column: 1,
               },
               end: Position {
                line: 50,
                column: 3,
               },
              },
             },
            ),
           ],
           span: Span {
            start: Position {
             line: 37,
             column: 31,
            },
            end: Position {
             line: 50,
             column: 5,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "userOpts",
            span: Span {
             start: Position {
              line: 52,
              column: 3,
             },
             end: Position {
              line: 52,
              column: 11,
             },
            },
           },
          ),
         ],
         to: Function(
          Function {
           head: Destructured(
            FunctionHeadDestructured {
             ellipsis: true,
             identifier: None,
             arguments: [
              FunctionHeadDestructuredArgument {
               identifier: "name",
               default: None,
              },
              FunctionHeadDestructuredArgument {
               identifier: "config",
               default: None,
              },
             ],
            },
           ),
           body: Map(
            Map {
             recursive: false,
             bindings: [
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "options",
                   span: Span {
                    start: Position {
                     line: 54,
                     column: 5,
                    },
                    end: Position {
                     line: 54,
                     column: 12,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "name",
                        span: Span {
                         start: Position {
                          line: 56,
                          column: 7,
                         },
                         end: Position {
                          line: 56,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 56,
                           column: 14,
                          },
                          end: Position {
                           line: 56,
                           column: 22,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 57,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 57,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 57,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 57,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "passwdEntry",
                                    span: Span {
                                     start: Position {
                                      line: 57,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 57,
                                      column: 33,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 57,
                                      column: 34,
                                     },
                                     end: Position {
                                      line: 57,
                                      column: 39,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "str",
                                     span: Span {
                                      start: Position {
                                       line: 57,
                                       column: 40,
                                      },
                                      end: Position {
                                       line: 57,
                                       column: 43,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "apply",
                                span: Span {
                                 start: Position {
                                  line: 58,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 58,
                                  column: 14,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Function(
                              Function {
                               head: Simple(
                                FunctionHeadSimple {
                                 identifier: "x",
                                },
                               ),
                               body: Assert(
                                Assert {
                                 expression: BinaryOperation(
                                  BinaryOperation {
                                   left: BinaryOperation(
                                    BinaryOperation {
                                     left: FunctionApplication(
                                      FunctionApplication {
                                       function: PropertyAccess(
                                        PropertyAccess {
                                         expression: Identifier(
                                          Identifier {
                                           id: "builtins",
                                           span: Span {
                                            start: Position {
                                             line: 58,
                                             column: 28,
                                            },
                                            end: Position {
                                             line: 58,
                                             column: 36,
                                            },
                                           },
                                          },
                                         ),
                                         attribute_path: [
                                          Raw(
                                           PartRaw {
                                            content: "stringLength",
                                            span: Span {
                                             start: Position {
                                              line: 58,
                                              column: 37,
                                             },
                                             end: Position {
                                              line: 58,
                                              column: 49,
                                             },
                                            },
                                           },
                                          ),
                                         ],
                                         default: None,
                                        },
                                       ),
                                       arguments: [
                                        Identifier(
                                         Identifier {
                                          id: "x",
                                          span: Span {
                                           start: Position {
                                            line: 58,
                                            column: 50,
                                           },
                                           end: Position {
                                            line: 58,
                                            column: 51,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                      },
                                     ),
                                     operator: LessThan,
                                     right: Integer(
                                      Integer {
                                       value: "32",
                                       span: Span {
                                        start: Position {
                                         line: 58,
                                         column: 54,
                                        },
                                        end: Position {
                                         line: 58,
                                         column: 56,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   operator: LogicalOr,
                                   right: FunctionApplication(
                                    FunctionApplication {
                                     function: Identifier(
                                      Identifier {
                                       id: "abort",
                                       span: Span {
                                        start: Position {
                                         line: 58,
                                         column: 60,
                                        },
                                        end: Position {
                                         line: 58,
                                         column: 65,
                                        },
                                       },
                                      },
                                     ),
                                     arguments: [
                                      String(
                                       String_ {
                                        parts: [
                                         Raw(
                                          PartRaw {
                                           content: "Username '",
                                           span: Span {
                                            start: Position {
                                             line: 58,
                                             column: 67,
                                            },
                                            end: Position {
                                             line: 58,
                                             column: 81,
                                            },
                                           },
                                          },
                                         ),
                                         Interpolation(
                                          PartInterpolation {
                                           expression: Identifier(
                                            Identifier {
                                             id: "x",
                                             span: Span {
                                              start: Position {
                                               line: 58,
                                               column: 79,
                                              },
                                              end: Position {
                                               line: 58,
                                               column: 80,
                                              },
                                             },
                                            },
                                           ),
                                          },
                                         ),
                                         Raw(
                                          PartRaw {
                                           content: "' is longer than 31 characters which is not allowed!",
                                           span: Span {
                                            start: Position {
                                             line: 58,
                                             column: 67,
                                            },
                                            end: Position {
                                             line: 58,
                                             column: 133,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        span: Span {
                                         start: Position {
                                          line: 58,
                                          column: 66,
                                         },
                                         end: Position {
                                          line: 58,
                                          column: 134,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                    },
                                   ),
                                  },
                                 ),
                                 target: Identifier(
                                  Identifier {
                                   id: "x",
                                   span: Span {
                                    start: Position {
                                     line: 58,
                                     column: 137,
                                    },
                                    end: Position {
                                     line: 58,
                                     column: 138,
                                    },
                                   },
                                  },
                                 ),
                                 span: Span {
                                  start: Position {
                                   line: 58,
                                   column: 20,
                                  },
                                  end: Position {
                                   line: 58,
                                   column: 138,
                                  },
                                 },
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 58,
                                 column: 17,
                                },
                                end: Position {
                                 line: 58,
                                 column: 138,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 59,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 59,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 59,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 59,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 59,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 59,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The name of the user account. If undefined, the name of the\nattribute set will be used.\n",
                                     span: Span {
                                      start: Position {
                                       line: 60,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 62,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 59,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 62,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 56,
                            column: 23,
                           },
                           end: Position {
                            line: 63,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "description",
                        span: Span {
                         start: Position {
                          line: 65,
                          column: 7,
                         },
                         end: Position {
                          line: 65,
                          column: 18,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 65,
                           column: 21,
                          },
                          end: Position {
                           line: 65,
                           column: 29,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 66,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 66,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 66,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 66,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "passwdEntry",
                                    span: Span {
                                     start: Position {
                                      line: 66,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 66,
                                      column: 33,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 66,
                                      column: 34,
                                     },
                                     end: Position {
                                      line: 66,
                                      column: 39,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "str",
                                     span: Span {
                                      start: Position {
                                       line: 66,
                                       column: 40,
                                      },
                                      end: Position {
                                       line: 66,
                                       column: 43,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 67,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 67,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: String(
                              String_ {
                               parts: [],
                               span: Span {
                                start: Position {
                                 line: 67,
                                 column: 19,
                                },
                                end: Position {
                                 line: 67,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 68,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 68,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: String(
                              String_ {
                               parts: [
                                Raw(
                                 PartRaw {
                                  content: "Alice Q. User",
                                  span: Span {
                                   start: Position {
                                    line: 68,
                                    column: 20,
                                   },
                                   end: Position {
                                    line: 68,
                                    column: 33,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 68,
                                 column: 19,
                                },
                                end: Position {
                                 line: 68,
                                 column: 34,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 69,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 69,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 69,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 69,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 69,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 69,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "A short description of the user account, typically the\nuser's full name.  This is actually the “GECOS” or “comment”\nfield in {file}`/etc/passwd`.\n",
                                     span: Span {
                                      start: Position {
                                       line: 70,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 73,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 69,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 73,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 65,
                            column: 30,
                           },
                           end: Position {
                            line: 74,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "uid",
                        span: Span {
                         start: Position {
                          line: 76,
                          column: 7,
                         },
                         end: Position {
                          line: 76,
                          column: 10,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 76,
                           column: 13,
                          },
                          end: Position {
                           line: 76,
                           column: 21,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 77,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 77,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 77,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 77,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 77,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 77,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "int",
                                    span: Span {
                                     start: Position {
                                      line: 77,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 77,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 77,
                                 column: 16,
                                },
                                end: Position {
                                 line: 77,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 78,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 78,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 78,
                                 column: 19,
                                },
                                end: Position {
                                 line: 78,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 79,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 79,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 79,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 79,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 79,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 79,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The account UID. If the UID is null, a free UID is picked on\nactivation.\n",
                                     span: Span {
                                      start: Position {
                                       line: 80,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 82,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 79,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 82,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 76,
                            column: 22,
                           },
                           end: Position {
                            line: 83,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "isSystemUser",
                        span: Span {
                         start: Position {
                          line: 85,
                          column: 7,
                         },
                         end: Position {
                          line: 85,
                          column: 19,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 85,
                           column: 22,
                          },
                          end: Position {
                           line: 85,
                           column: 30,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 86,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 86,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 86,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 86,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "bool",
                                  span: Span {
                                   start: Position {
                                    line: 86,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 86,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 87,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 87,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "false",
                               span: Span {
                                start: Position {
                                 line: 87,
                                 column: 19,
                                },
                                end: Position {
                                 line: 87,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 88,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 88,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 88,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 88,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 88,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 88,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Indicates if the user is a system user or not. This option\nonly has an effect if {option}`uid` is\n{option}`null`, in which case it determines whether\nthe user's UID is allocated in the range for system users\n(below 500) or in the range for normal users (starting at\n1000).\nExactly one of `isNormalUser` and\n`isSystemUser` must be true.\n",
                                     span: Span {
                                      start: Position {
                                       line: 89,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 97,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 88,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 97,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 85,
                            column: 31,
                           },
                           end: Position {
                            line: 98,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "isNormalUser",
                        span: Span {
                         start: Position {
                          line: 100,
                          column: 7,
                         },
                         end: Position {
                          line: 100,
                          column: 19,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 100,
                           column: 22,
                          },
                          end: Position {
                           line: 100,
                           column: 30,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 101,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 101,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 101,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 101,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "bool",
                                  span: Span {
                                   start: Position {
                                    line: 101,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 101,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 102,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 102,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "false",
                               span: Span {
                                start: Position {
                                 line: 102,
                                 column: 19,
                                },
                                end: Position {
                                 line: 102,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 103,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 103,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 103,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 103,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 103,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 103,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Indicates whether this is an account for a “real” user. This\nautomatically sets {option}`group` to\n`users`, {option}`createHome` to\n`true`, {option}`home` to\n{file}`/home/«username»`,\n{option}`useDefaultShell` to `true`,\nand {option}`isSystemUser` to\n`false`.\nExactly one of `isNormalUser` and\n`isSystemUser` must be true.\n",
                                     span: Span {
                                      start: Position {
                                       line: 104,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 114,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 103,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 114,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 100,
                            column: 31,
                           },
                           end: Position {
                            line: 115,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "group",
                        span: Span {
                         start: Position {
                          line: 117,
                          column: 7,
                         },
                         end: Position {
                          line: 117,
                          column: 12,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 117,
                           column: 15,
                          },
                          end: Position {
                           line: 117,
                           column: 23,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 118,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 118,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 118,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 118,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "str",
                                  span: Span {
                                   start: Position {
                                    line: 118,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 118,
                                    column: 25,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "apply",
                                span: Span {
                                 start: Position {
                                  line: 119,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 119,
                                  column: 14,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Function(
                              Function {
                               head: Simple(
                                FunctionHeadSimple {
                                 identifier: "x",
                                },
                               ),
                               body: Assert(
                                Assert {
                                 expression: BinaryOperation(
                                  BinaryOperation {
                                   left: BinaryOperation(
                                    BinaryOperation {
                                     left: FunctionApplication(
                                      FunctionApplication {
                                       function: PropertyAccess(
                                        PropertyAccess {
                                         expression: Identifier(
                                          Identifier {
                                           id: "builtins",
                                           span: Span {
                                            start: Position {
                                             line: 119,
                                             column: 28,
                                            },
                                            end: Position {
                                             line: 119,
                                             column: 36,
                                            },
                                           },
                                          },
                                         ),
                                         attribute_path: [
                                          Raw(
                                           PartRaw {
                                            content: "stringLength",
                                            span: Span {
                                             start: Position {
                                              line: 119,
                                              column: 37,
                                             },
                                             end: Position {
                                              line: 119,
                                              column: 49,
                                             },
                                            },
                                           },
                                          ),
                                         ],
                                         default: None,
                                        },
                                       ),
                                       arguments: [
                                        Identifier(
                                         Identifier {
                                          id: "x",
                                          span: Span {
                                           start: Position {
                                            line: 119,
                                            column: 50,
                                           },
                                           end: Position {
                                            line: 119,
                                            column: 51,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                      },
                                     ),
                                     operator: LessThan,
                                     right: Integer(
                                      Integer {
                                       value: "32",
                                       span: Span {
                                        start: Position {
                                         line: 119,
                                         column: 54,
                                        },
                                        end: Position {
                                         line: 119,
                                         column: 56,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   operator: LogicalOr,
                                   right: FunctionApplication(
                                    FunctionApplication {
                                     function: Identifier(
                                      Identifier {
                                       id: "abort",
                                       span: Span {
                                        start: Position {
                                         line: 119,
                                         column: 60,
                                        },
                                        end: Position {
                                         line: 119,
                                         column: 65,
                                        },
                                       },
                                      },
                                     ),
                                     arguments: [
                                      String(
                                       String_ {
                                        parts: [
                                         Raw(
                                          PartRaw {
                                           content: "Group name '",
                                           span: Span {
                                            start: Position {
                                             line: 119,
                                             column: 67,
                                            },
                                            end: Position {
                                             line: 119,
                                             column: 83,
                                            },
                                           },
                                          },
                                         ),
                                         Interpolation(
                                          PartInterpolation {
                                           expression: Identifier(
                                            Identifier {
                                             id: "x",
                                             span: Span {
                                              start: Position {
                                               line: 119,
                                               column: 81,
                                              },
                                              end: Position {
                                               line: 119,
                                               column: 82,
                                              },
                                             },
                                            },
                                           ),
                                          },
                                         ),
                                         Raw(
                                          PartRaw {
                                           content: "' is longer than 31 characters which is not allowed!",
                                           span: Span {
                                            start: Position {
                                             line: 119,
                                             column: 67,
                                            },
                                            end: Position {
                                             line: 119,
                                             column: 135,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        span: Span {
                                         start: Position {
                                          line: 119,
                                          column: 66,
                                         },
                                         end: Position {
                                          line: 119,
                                          column: 136,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                    },
                                   ),
                                  },
                                 ),
                                 target: Identifier(
                                  Identifier {
                                   id: "x",
                                   span: Span {
                                    start: Position {
                                     line: 119,
                                     column: 139,
                                    },
                                    end: Position {
                                     line: 119,
                                     column: 140,
                                    },
                                   },
                                  },
                                 ),
                                 span: Span {
                                  start: Position {
                                   line: 119,
                                   column: 20,
                                  },
                                  end: Position {
                                   line: 119,
                                   column: 140,
                                  },
                                 },
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 119,
                                 column: 17,
                                },
                                end: Position {
                                 line: 119,
                                 column: 140,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 120,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 120,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: String(
                              String_ {
                               parts: [],
                               span: Span {
                                start: Position {
                                 line: 120,
                                 column: 19,
                                },
                                end: Position {
                                 line: 120,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 121,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 121,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 121,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 121,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 121,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 121,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The user's primary group.",
                                     span: Span {
                                      start: Position {
                                       line: 121,
                                       column: 34,
                                      },
                                      end: Position {
                                       line: 121,
                                       column: 59,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 121,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 121,
                                    column: 60,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 117,
                            column: 24,
                           },
                           end: Position {
                            line: 122,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "extraGroups",
                        span: Span {
                         start: Position {
                          line: 124,
                          column: 7,
                         },
                         end: Position {
                          line: 124,
                          column: 18,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 124,
                           column: 21,
                          },
                          end: Position {
                           line: 124,
                           column: 29,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 125,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 125,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 125,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 125,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "listOf",
                                    span: Span {
                                     start: Position {
                                      line: 125,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 125,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 125,
                                      column: 29,
                                     },
                                     end: Position {
                                      line: 125,
                                      column: 34,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "str",
                                     span: Span {
                                      start: Position {
                                       line: 125,
                                       column: 35,
                                      },
                                      end: Position {
                                       line: 125,
                                       column: 38,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 126,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 126,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 126,
                                 column: 19,
                                },
                                end: Position {
                                 line: 126,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 127,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 127,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 127,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 127,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 127,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 127,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The user's auxiliary groups.",
                                     span: Span {
                                      start: Position {
                                       line: 127,
                                       column: 34,
                                      },
                                      end: Position {
                                       line: 127,
                                       column: 62,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 127,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 127,
                                    column: 63,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 124,
                            column: 30,
                           },
                           end: Position {
                            line: 128,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "home",
                        span: Span {
                         start: Position {
                          line: 130,
                          column: 7,
                         },
                         end: Position {
                          line: 130,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 130,
                           column: 14,
                          },
                          end: Position {
                           line: 130,
                           column: 22,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 131,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 131,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 131,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 131,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "passwdEntry",
                                    span: Span {
                                     start: Position {
                                      line: 131,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 131,
                                      column: 33,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 131,
                                      column: 34,
                                     },
                                     end: Position {
                                      line: 131,
                                      column: 39,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "path",
                                     span: Span {
                                      start: Position {
                                       line: 131,
                                       column: 40,
                                      },
                                      end: Position {
                                       line: 131,
                                       column: 44,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 132,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 132,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: String(
                              String_ {
                               parts: [
                                Raw(
                                 PartRaw {
                                  content: "/var/empty",
                                  span: Span {
                                   start: Position {
                                    line: 132,
                                    column: 20,
                                   },
                                   end: Position {
                                    line: 132,
                                    column: 30,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 132,
                                 column: 19,
                                },
                                end: Position {
                                 line: 132,
                                 column: 31,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 133,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 133,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 133,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 133,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 133,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 133,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The user's home directory.",
                                     span: Span {
                                      start: Position {
                                       line: 133,
                                       column: 34,
                                      },
                                      end: Position {
                                       line: 133,
                                       column: 60,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 133,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 133,
                                    column: 61,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 130,
                            column: 23,
                           },
                           end: Position {
                            line: 134,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "homeMode",
                        span: Span {
                         start: Position {
                          line: 136,
                          column: 7,
                         },
                         end: Position {
                          line: 136,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 136,
                           column: 18,
                          },
                          end: Position {
                           line: 136,
                           column: 26,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 137,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 137,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 137,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 137,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "strMatching",
                                    span: Span {
                                     start: Position {
                                      line: 137,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 137,
                                      column: 33,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "[0-7]{1,5}",
                                     span: Span {
                                      start: Position {
                                       line: 137,
                                       column: 35,
                                      },
                                      end: Position {
                                       line: 137,
                                       column: 45,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 137,
                                    column: 34,
                                   },
                                   end: Position {
                                    line: 137,
                                    column: 46,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 138,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 138,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: String(
                              String_ {
                               parts: [
                                Raw(
                                 PartRaw {
                                  content: "700",
                                  span: Span {
                                   start: Position {
                                    line: 138,
                                    column: 20,
                                   },
                                   end: Position {
                                    line: 138,
                                    column: 23,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 138,
                                 column: 19,
                                },
                                end: Position {
                                 line: 138,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 139,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 139,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 139,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 139,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 139,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 139,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The user's home directory mode in numeric format. See chmod(1). The mode is only applied if {option}`users.users.<name>.createHome` is true.",
                                     span: Span {
                                      start: Position {
                                       line: 139,
                                       column: 34,
                                      },
                                      end: Position {
                                       line: 139,
                                       column: 174,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 139,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 139,
                                    column: 175,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 136,
                            column: 27,
                           },
                           end: Position {
                            line: 140,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "cryptHomeLuks",
                        span: Span {
                         start: Position {
                          line: 142,
                          column: 7,
                         },
                         end: Position {
                          line: 142,
                          column: 20,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 142,
                           column: 23,
                          },
                          end: Position {
                           line: 142,
                           column: 31,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 143,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 143,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 143,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 143,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 143,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 143,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "str",
                                    span: Span {
                                     start: Position {
                                      line: 143,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 143,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 143,
                                 column: 16,
                                },
                                end: Position {
                                 line: 143,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 144,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 144,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 144,
                                 column: 19,
                                },
                                end: Position {
                                 line: 144,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 145,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 145,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 145,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 145,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 145,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 145,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Path to encrypted luks device that contains\nthe user's home directory.\n",
                                     span: Span {
                                      start: Position {
                                       line: 146,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 148,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 145,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 148,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 142,
                            column: 32,
                           },
                           end: Position {
                            line: 149,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "pamMount",
                        span: Span {
                         start: Position {
                          line: 151,
                          column: 7,
                         },
                         end: Position {
                          line: 151,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 151,
                           column: 18,
                          },
                          end: Position {
                           line: 151,
                           column: 26,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 152,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 152,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 152,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 152,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "attrsOf",
                                   span: Span {
                                    start: Position {
                                     line: 152,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 152,
                                     column: 35,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "str",
                                    span: Span {
                                     start: Position {
                                      line: 152,
                                      column: 36,
                                     },
                                     end: Position {
                                      line: 152,
                                      column: 39,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 152,
                                 column: 16,
                                },
                                end: Position {
                                 line: 152,
                                 column: 39,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 153,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 153,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Map(
                              Map {
                               recursive: false,
                               bindings: [],
                               span: Span {
                                start: Position {
                                 line: 153,
                                 column: 19,
                                },
                                end: Position {
                                 line: 153,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 154,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 154,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 154,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 154,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 154,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 154,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Attributes for user's entry in\n{file}`pam_mount.conf.xml`.\nUseful attributes might include `path`,\n`options`, `fstype`, and `server`.\nSee <http://pam-mount.sourceforge.net/pam_mount.conf.5.html>\nfor more information.\n",
                                     span: Span {
                                      start: Position {
                                       line: 155,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 161,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 154,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 161,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 151,
                            column: 27,
                           },
                           end: Position {
                            line: 162,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "shell",
                        span: Span {
                         start: Position {
                          line: 164,
                          column: 7,
                         },
                         end: Position {
                          line: 164,
                          column: 12,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 164,
                           column: 15,
                          },
                          end: Position {
                           line: 164,
                           column: 23,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 165,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 165,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 165,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 165,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "nullOr",
                                    span: Span {
                                     start: Position {
                                      line: 165,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 165,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                FunctionApplication(
                                 FunctionApplication {
                                  function: PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "types",
                                      span: Span {
                                       start: Position {
                                        line: 165,
                                        column: 30,
                                       },
                                       end: Position {
                                        line: 165,
                                        column: 35,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "either",
                                       span: Span {
                                        start: Position {
                                         line: 165,
                                         column: 36,
                                        },
                                        end: Position {
                                         line: 165,
                                         column: 42,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                  arguments: [
                                   PropertyAccess(
                                    PropertyAccess {
                                     expression: Identifier(
                                      Identifier {
                                       id: "types",
                                       span: Span {
                                        start: Position {
                                         line: 165,
                                         column: 43,
                                        },
                                        end: Position {
                                         line: 165,
                                         column: 48,
                                        },
                                       },
                                      },
                                     ),
                                     attribute_path: [
                                      Raw(
                                       PartRaw {
                                        content: "shellPackage",
                                        span: Span {
                                         start: Position {
                                          line: 165,
                                          column: 49,
                                         },
                                         end: Position {
                                          line: 165,
                                          column: 61,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     default: None,
                                    },
                                   ),
                                   FunctionApplication(
                                    FunctionApplication {
                                     function: PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "types",
                                         span: Span {
                                          start: Position {
                                           line: 165,
                                           column: 63,
                                          },
                                          end: Position {
                                           line: 165,
                                           column: 68,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "passwdEntry",
                                          span: Span {
                                           start: Position {
                                            line: 165,
                                            column: 69,
                                           },
                                           end: Position {
                                            line: 165,
                                            column: 80,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                     arguments: [
                                      PropertyAccess(
                                       PropertyAccess {
                                        expression: Identifier(
                                         Identifier {
                                          id: "types",
                                          span: Span {
                                           start: Position {
                                            line: 165,
                                            column: 81,
                                           },
                                           end: Position {
                                            line: 165,
                                            column: 86,
                                           },
                                          },
                                         },
                                        ),
                                        attribute_path: [
                                         Raw(
                                          PartRaw {
                                           content: "path",
                                           span: Span {
                                            start: Position {
                                             line: 165,
                                             column: 87,
                                            },
                                            end: Position {
                                             line: 165,
                                             column: 91,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        default: None,
                                       },
                                      ),
                                     ],
                                    },
                                   ),
                                  ],
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 166,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 166,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "pkgs",
                                 span: Span {
                                  start: Position {
                                   line: 166,
                                   column: 19,
                                  },
                                  end: Position {
                                   line: 166,
                                   column: 23,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "shadow",
                                  span: Span {
                                   start: Position {
                                    line: 166,
                                    column: 24,
                                   },
                                   end: Position {
                                    line: 166,
                                    column: 30,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "defaultText",
                                span: Span {
                                 start: Position {
                                  line: 167,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 167,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: Identifier(
                                Identifier {
                                 id: "literalExpression",
                                 span: Span {
                                  start: Position {
                                   line: 167,
                                   column: 23,
                                  },
                                  end: Position {
                                   line: 167,
                                   column: 40,
                                  },
                                 },
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "pkgs.shadow",
                                     span: Span {
                                      start: Position {
                                       line: 167,
                                       column: 42,
                                      },
                                      end: Position {
                                       line: 167,
                                       column: 53,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 167,
                                    column: 41,
                                   },
                                   end: Position {
                                    line: 167,
                                    column: 54,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 168,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 168,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: Identifier(
                                Identifier {
                                 id: "literalExpression",
                                 span: Span {
                                  start: Position {
                                   line: 168,
                                   column: 19,
                                  },
                                  end: Position {
                                   line: 168,
                                   column: 36,
                                  },
                                 },
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "pkgs.bashInteractive",
                                     span: Span {
                                      start: Position {
                                       line: 168,
                                       column: 38,
                                      },
                                      end: Position {
                                       line: 168,
                                       column: 58,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 168,
                                    column: 37,
                                   },
                                   end: Position {
                                    line: 168,
                                    column: 59,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 169,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 169,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 169,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 169,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 169,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 169,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The path to the user's shell. Can use shell derivations,\nlike `pkgs.bashInteractive`. Don’t\nforget to enable your shell in\n`programs` if necessary,\nlike `programs.zsh.enable = true;`.\n",
                                     span: Span {
                                      start: Position {
                                       line: 170,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 175,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 169,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 175,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 164,
                            column: 24,
                           },
                           end: Position {
                            line: 176,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "subUidRanges",
                        span: Span {
                         start: Position {
                          line: 178,
                          column: 7,
                         },
                         end: Position {
                          line: 178,
                          column: 19,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 178,
                           column: 22,
                          },
                          end: Position {
                           line: 178,
                           column: 30,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 179,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 179,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 179,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 179,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "listOf",
                                   span: Span {
                                    start: Position {
                                     line: 179,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 179,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "submodule",
                                      span: Span {
                                       start: Position {
                                        line: 179,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 179,
                                        column: 45,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "subordinateUidRange",
                                       span: Span {
                                        start: Position {
                                         line: 179,
                                         column: 46,
                                        },
                                        end: Position {
                                         line: 179,
                                         column: 65,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 179,
                                 column: 16,
                                },
                                end: Position {
                                 line: 179,
                                 column: 66,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 180,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 180,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 180,
                                 column: 19,
                                },
                                end: Position {
                                 line: 180,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 181,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 181,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [
                                Map(
                                 Map {
                                  recursive: false,
                                  bindings: [
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "startUid",
                                        span: Span {
                                         start: Position {
                                          line: 182,
                                          column: 13,
                                         },
                                         end: Position {
                                          line: 182,
                                          column: 21,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "1000",
                                       span: Span {
                                        start: Position {
                                         line: 182,
                                         column: 24,
                                        },
                                        end: Position {
                                         line: 182,
                                         column: 28,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "count",
                                        span: Span {
                                         start: Position {
                                          line: 182,
                                          column: 30,
                                         },
                                         end: Position {
                                          line: 182,
                                          column: 35,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "1",
                                       span: Span {
                                        start: Position {
                                         line: 182,
                                         column: 38,
                                        },
                                        end: Position {
                                         line: 182,
                                         column: 39,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 182,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 182,
                                    column: 42,
                                   },
                                  },
                                 },
                                ),
                                Map(
                                 Map {
                                  recursive: false,
                                  bindings: [
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "startUid",
                                        span: Span {
                                         start: Position {
                                          line: 183,
                                          column: 13,
                                         },
                                         end: Position {
                                          line: 183,
                                          column: 21,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "100001",
                                       span: Span {
                                        start: Position {
                                         line: 183,
                                         column: 24,
                                        },
                                        end: Position {
                                         line: 183,
                                         column: 30,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "count",
                                        span: Span {
                                         start: Position {
                                          line: 183,
                                          column: 32,
                                         },
                                         end: Position {
                                          line: 183,
                                          column: 37,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "65534",
                                       span: Span {
                                        start: Position {
                                         line: 183,
                                         column: 40,
                                        },
                                        end: Position {
                                         line: 183,
                                         column: 45,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 183,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 183,
                                    column: 48,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 181,
                                 column: 19,
                                },
                                end: Position {
                                 line: 184,
                                 column: 10,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 185,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 185,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 185,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 185,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 185,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 185,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Subordinate user ids that user is allowed to use.\nThey are set into {file}`/etc/subuid` and are used\nby `newuidmap` for user namespaces.\n",
                                     span: Span {
                                      start: Position {
                                       line: 186,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 189,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 185,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 189,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 178,
                            column: 31,
                           },
                           end: Position {
                            line: 190,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "subGidRanges",
                        span: Span {
                         start: Position {
                          line: 192,
                          column: 7,
                         },
                         end: Position {
                          line: 192,
                          column: 19,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 192,
                           column: 22,
                          },
                          end: Position {
                           line: 192,
                           column: 30,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 193,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 193,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 193,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 193,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "listOf",
                                   span: Span {
                                    start: Position {
                                     line: 193,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 193,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "submodule",
                                      span: Span {
                                       start: Position {
                                        line: 193,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 193,
                                        column: 45,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "subordinateGidRange",
                                       span: Span {
                                        start: Position {
                                         line: 193,
                                         column: 46,
                                        },
                                        end: Position {
                                         line: 193,
                                         column: 65,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 193,
                                 column: 16,
                                },
                                end: Position {
                                 line: 193,
                                 column: 66,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 194,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 194,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 194,
                                 column: 19,
                                },
                                end: Position {
                                 line: 194,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 195,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 195,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [
                                Map(
                                 Map {
                                  recursive: false,
                                  bindings: [
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "startGid",
                                        span: Span {
                                         start: Position {
                                          line: 196,
                                          column: 13,
                                         },
                                         end: Position {
                                          line: 196,
                                          column: 21,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "100",
                                       span: Span {
                                        start: Position {
                                         line: 196,
                                         column: 24,
                                        },
                                        end: Position {
                                         line: 196,
                                         column: 27,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "count",
                                        span: Span {
                                         start: Position {
                                          line: 196,
                                          column: 29,
                                         },
                                         end: Position {
                                          line: 196,
                                          column: 34,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "1",
                                       span: Span {
                                        start: Position {
                                         line: 196,
                                         column: 37,
                                        },
                                        end: Position {
                                         line: 196,
                                         column: 38,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 196,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 196,
                                    column: 41,
                                   },
                                  },
                                 },
                                ),
                                Map(
                                 Map {
                                  recursive: false,
                                  bindings: [
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "startGid",
                                        span: Span {
                                         start: Position {
                                          line: 197,
                                          column: 13,
                                         },
                                         end: Position {
                                          line: 197,
                                          column: 21,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "1001",
                                       span: Span {
                                        start: Position {
                                         line: 197,
                                         column: 24,
                                        },
                                        end: Position {
                                         line: 197,
                                         column: 28,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   KeyValue(
                                    BindingKeyValue {
                                     from: [
                                      Raw(
                                       PartRaw {
                                        content: "count",
                                        span: Span {
                                         start: Position {
                                          line: 197,
                                          column: 30,
                                         },
                                         end: Position {
                                          line: 197,
                                          column: 35,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     to: Integer(
                                      Integer {
                                       value: "999",
                                       span: Span {
                                        start: Position {
                                         line: 197,
                                         column: 38,
                                        },
                                        end: Position {
                                         line: 197,
                                         column: 41,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 197,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 197,
                                    column: 44,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 195,
                                 column: 19,
                                },
                                end: Position {
                                 line: 198,
                                 column: 10,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 199,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 199,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 199,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 199,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 199,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 199,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Subordinate group ids that user is allowed to use.\nThey are set into {file}`/etc/subgid` and are used\nby `newgidmap` for user namespaces.\n",
                                     span: Span {
                                      start: Position {
                                       line: 200,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 203,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 199,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 203,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 192,
                            column: 31,
                           },
                           end: Position {
                            line: 204,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "autoSubUidGidRange",
                        span: Span {
                         start: Position {
                          line: 206,
                          column: 7,
                         },
                         end: Position {
                          line: 206,
                          column: 25,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 206,
                           column: 28,
                          },
                          end: Position {
                           line: 206,
                           column: 36,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 207,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 207,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 207,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 207,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "bool",
                                  span: Span {
                                   start: Position {
                                    line: 207,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 207,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 208,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 208,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "false",
                               span: Span {
                                start: Position {
                                 line: 208,
                                 column: 19,
                                },
                                end: Position {
                                 line: 208,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 209,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 209,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "true",
                               span: Span {
                                start: Position {
                                 line: 209,
                                 column: 19,
                                },
                                end: Position {
                                 line: 209,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 210,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 210,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 210,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 210,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 210,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 210,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Automatically allocate subordinate user and group ids for this user.\nAllocated range is currently always of size 65536.\n",
                                     span: Span {
                                      start: Position {
                                       line: 211,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 213,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 210,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 213,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 206,
                            column: 37,
                           },
                           end: Position {
                            line: 214,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "createHome",
                        span: Span {
                         start: Position {
                          line: 216,
                          column: 7,
                         },
                         end: Position {
                          line: 216,
                          column: 17,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 216,
                           column: 20,
                          },
                          end: Position {
                           line: 216,
                           column: 28,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 217,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 217,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 217,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 217,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "bool",
                                  span: Span {
                                   start: Position {
                                    line: 217,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 217,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 218,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 218,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "false",
                               span: Span {
                                start: Position {
                                 line: 218,
                                 column: 19,
                                },
                                end: Position {
                                 line: 218,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 219,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 219,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 219,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 219,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 219,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 219,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Whether to create the home directory and ensure ownership as well as\npermissions to match the user.\n",
                                     span: Span {
                                      start: Position {
                                       line: 220,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 222,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 219,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 222,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 216,
                            column: 29,
                           },
                           end: Position {
                            line: 223,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "useDefaultShell",
                        span: Span {
                         start: Position {
                          line: 225,
                          column: 7,
                         },
                         end: Position {
                          line: 225,
                          column: 22,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 225,
                           column: 25,
                          },
                          end: Position {
                           line: 225,
                           column: 33,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 226,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 226,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 226,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 226,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "bool",
                                  span: Span {
                                   start: Position {
                                    line: 226,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 226,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 227,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 227,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "false",
                               span: Span {
                                start: Position {
                                 line: 227,
                                 column: 19,
                                },
                                end: Position {
                                 line: 227,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 228,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 228,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 228,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 228,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 228,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 228,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "If true, the user's shell will be set to\n{option}`users.defaultUserShell`.\n",
                                     span: Span {
                                      start: Position {
                                       line: 229,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 231,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 228,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 231,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 225,
                            column: 34,
                           },
                           end: Position {
                            line: 232,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "hashedPassword",
                        span: Span {
                         start: Position {
                          line: 234,
                          column: 7,
                         },
                         end: Position {
                          line: 234,
                          column: 21,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 234,
                           column: 24,
                          },
                          end: Position {
                           line: 234,
                           column: 32,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 235,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 235,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 235,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 235,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 235,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 235,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "passwdEntry",
                                      span: Span {
                                       start: Position {
                                        line: 235,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 235,
                                        column: 47,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "str",
                                       span: Span {
                                        start: Position {
                                         line: 235,
                                         column: 48,
                                        },
                                        end: Position {
                                         line: 235,
                                         column: 51,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 235,
                                 column: 16,
                                },
                                end: Position {
                                 line: 235,
                                 column: 52,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 236,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 236,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 236,
                                 column: 19,
                                },
                                end: Position {
                                 line: 236,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 237,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 237,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 237,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 237,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 237,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 237,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Specifies the hashed password for the user.\n",
                                     span: Span {
                                      start: Position {
                                       line: 238,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 239,
                                       column: 11,
                                      },
                                     },
                                    },
                                   ),
                                   Interpolation(
                                    PartInterpolation {
                                     expression: Identifier(
                                      Identifier {
                                       id: "passwordDescription",
                                       span: Span {
                                        start: Position {
                                         line: 239,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 239,
                                         column: 32,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   Raw(
                                    PartRaw {
                                     content: "\n",
                                     span: Span {
                                      start: Position {
                                       line: 238,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 240,
                                       column: 11,
                                      },
                                     },
                                    },
                                   ),
                                   Interpolation(
                                    PartInterpolation {
                                     expression: Identifier(
                                      Identifier {
                                       id: "hashedPasswordDescription",
                                       span: Span {
                                        start: Position {
                                         line: 240,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 240,
                                         column: 38,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   Raw(
                                    PartRaw {
                                     content: "\n",
                                     span: Span {
                                      start: Position {
                                       line: 238,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 241,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 237,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 241,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 234,
                            column: 33,
                           },
                           end: Position {
                            line: 242,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "password",
                        span: Span {
                         start: Position {
                          line: 244,
                          column: 7,
                         },
                         end: Position {
                          line: 244,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 244,
                           column: 18,
                          },
                          end: Position {
                           line: 244,
                           column: 26,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 245,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 245,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 245,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 245,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 245,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 245,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "str",
                                    span: Span {
                                     start: Position {
                                      line: 245,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 245,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 245,
                                 column: 16,
                                },
                                end: Position {
                                 line: 245,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 246,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 246,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 246,
                                 column: 19,
                                },
                                end: Position {
                                 line: 246,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 247,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 247,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 247,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 247,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 247,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 247,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Specifies the (clear text) password for the user.\nWarning: do not set confidential information here\nbecause it is world-readable in the Nix store. This option\nshould only be used for public accounts.\n",
                                     span: Span {
                                      start: Position {
                                       line: 248,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 252,
                                       column: 11,
                                      },
                                     },
                                    },
                                   ),
                                   Interpolation(
                                    PartInterpolation {
                                     expression: Identifier(
                                      Identifier {
                                       id: "passwordDescription",
                                       span: Span {
                                        start: Position {
                                         line: 252,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 252,
                                         column: 32,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   Raw(
                                    PartRaw {
                                     content: "\n",
                                     span: Span {
                                      start: Position {
                                       line: 248,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 253,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 247,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 253,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 244,
                            column: 27,
                           },
                           end: Position {
                            line: 254,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "passwordFile",
                        span: Span {
                         start: Position {
                          line: 256,
                          column: 7,
                         },
                         end: Position {
                          line: 256,
                          column: 19,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 256,
                           column: 22,
                          },
                          end: Position {
                           line: 256,
                           column: 30,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 257,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 257,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 257,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 257,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 257,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 257,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "str",
                                    span: Span {
                                     start: Position {
                                      line: 257,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 257,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 257,
                                 column: 16,
                                },
                                end: Position {
                                 line: 257,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 258,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 258,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 258,
                                 column: 19,
                                },
                                end: Position {
                                 line: 258,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 259,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 259,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 259,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 259,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 259,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 259,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The full path to a file that contains the user's password. The password\nfile is read on each system activation. The file should contain\nexactly one line, which should be the password in an encrypted form\nthat is suitable for the `chpasswd -e` command.\n",
                                     span: Span {
                                      start: Position {
                                       line: 260,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 264,
                                       column: 11,
                                      },
                                     },
                                    },
                                   ),
                                   Interpolation(
                                    PartInterpolation {
                                     expression: Identifier(
                                      Identifier {
                                       id: "passwordDescription",
                                       span: Span {
                                        start: Position {
                                         line: 264,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 264,
                                         column: 32,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   Raw(
                                    PartRaw {
                                     content: "\n",
                                     span: Span {
                                      start: Position {
                                       line: 260,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 265,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 259,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 265,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 256,
                            column: 31,
                           },
                           end: Position {
                            line: 266,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "initialHashedPassword",
                        span: Span {
                         start: Position {
                          line: 268,
                          column: 7,
                         },
                         end: Position {
                          line: 268,
                          column: 28,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 268,
                           column: 31,
                          },
                          end: Position {
                           line: 268,
                           column: 39,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 269,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 269,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 269,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 269,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 269,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 269,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "passwdEntry",
                                      span: Span {
                                       start: Position {
                                        line: 269,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 269,
                                        column: 47,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "str",
                                       span: Span {
                                        start: Position {
                                         line: 269,
                                         column: 48,
                                        },
                                        end: Position {
                                         line: 269,
                                         column: 51,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 269,
                                 column: 16,
                                },
                                end: Position {
                                 line: 269,
                                 column: 52,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 270,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 270,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 270,
                                 column: 19,
                                },
                                end: Position {
                                 line: 270,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 271,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 271,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 271,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 271,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 271,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 271,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Specifies the initial hashed password for the user, i.e. the\nhashed password assigned if the user does not already\nexist. If {option}`users.mutableUsers` is true, the\npassword can be changed subsequently using the\n{command}`passwd` command. Otherwise, it's\nequivalent to setting the {option}`hashedPassword` option.\n\n",
                                     span: Span {
                                      start: Position {
                                       line: 272,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 279,
                                       column: 11,
                                      },
                                     },
                                    },
                                   ),
                                   Interpolation(
                                    PartInterpolation {
                                     expression: Identifier(
                                      Identifier {
                                       id: "hashedPasswordDescription",
                                       span: Span {
                                        start: Position {
                                         line: 279,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 279,
                                         column: 38,
                                        },
                                       },
                                      },
                                     ),
                                    },
                                   ),
                                   Raw(
                                    PartRaw {
                                     content: "\n",
                                     span: Span {
                                      start: Position {
                                       line: 272,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 280,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 271,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 280,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 268,
                            column: 40,
                           },
                           end: Position {
                            line: 281,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "initialPassword",
                        span: Span {
                         start: Position {
                          line: 283,
                          column: 7,
                         },
                         end: Position {
                          line: 283,
                          column: 22,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 283,
                           column: 25,
                          },
                          end: Position {
                           line: 283,
                           column: 33,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 284,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 284,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 284,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 284,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 284,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 284,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "str",
                                    span: Span {
                                     start: Position {
                                      line: 284,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 284,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 284,
                                 column: 16,
                                },
                                end: Position {
                                 line: 284,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 285,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 285,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 285,
                                 column: 19,
                                },
                                end: Position {
                                 line: 285,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 286,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 286,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 286,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 286,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 286,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 286,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "Specifies the initial password for the user, i.e. the\npassword assigned if the user does not already exist. If\n{option}`users.mutableUsers` is true, the password\ncan be changed subsequently using the\n{command}`passwd` command. Otherwise, it's\nequivalent to setting the {option}`password`\noption. The same caveat applies: the password specified here\nis world-readable in the Nix store, so it should only be\nused for guest accounts or passwords that will be changed\npromptly.\n",
                                     span: Span {
                                      start: Position {
                                       line: 287,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 297,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 286,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 297,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 283,
                            column: 34,
                           },
                           end: Position {
                            line: 298,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "packages",
                        span: Span {
                         start: Position {
                          line: 300,
                          column: 7,
                         },
                         end: Position {
                          line: 300,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 300,
                           column: 18,
                          },
                          end: Position {
                           line: 300,
                           column: 26,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 301,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 301,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 301,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 301,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "listOf",
                                    span: Span {
                                     start: Position {
                                      line: 301,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 301,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 301,
                                      column: 29,
                                     },
                                     end: Position {
                                      line: 301,
                                      column: 34,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "package",
                                     span: Span {
                                      start: Position {
                                       line: 301,
                                       column: 35,
                                      },
                                      end: Position {
                                       line: 301,
                                       column: 42,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 302,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 302,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 302,
                                 column: 19,
                                },
                                end: Position {
                                 line: 302,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "example",
                                span: Span {
                                 start: Position {
                                  line: 303,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 303,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: Identifier(
                                Identifier {
                                 id: "literalExpression",
                                 span: Span {
                                  start: Position {
                                   line: 303,
                                   column: 19,
                                  },
                                  end: Position {
                                   line: 303,
                                   column: 36,
                                  },
                                 },
                                },
                               ),
                               arguments: [
                                String(
                                 String_ {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "[ pkgs.firefox pkgs.thunderbird ]",
                                     span: Span {
                                      start: Position {
                                       line: 303,
                                       column: 38,
                                      },
                                      end: Position {
                                       line: 303,
                                       column: 71,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 303,
                                    column: 37,
                                   },
                                   end: Position {
                                    line: 303,
                                    column: 72,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 304,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 304,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 304,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 304,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 304,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 304,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The set of packages that should be made available to the user.\nThis is in contrast to {option}`environment.systemPackages`,\nwhich adds packages to all users.\n",
                                     span: Span {
                                      start: Position {
                                       line: 305,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 308,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 304,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 308,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 300,
                            column: 27,
                           },
                           end: Position {
                            line: 309,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 54,
                    column: 15,
                   },
                   end: Position {
                    line: 311,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "config",
                   span: Span {
                    start: Position {
                     line: 313,
                     column: 5,
                    },
                    end: Position {
                     line: 313,
                     column: 11,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkMerge",
                    span: Span {
                     start: Position {
                      line: 313,
                      column: 14,
                     },
                     end: Position {
                      line: 313,
                      column: 21,
                     },
                    },
                   },
                  ),
                  arguments: [
                   List(
                    List {
                     elements: [
                      Map(
                       Map {
                        recursive: false,
                        bindings: [
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "name",
                              span: Span {
                               start: Position {
                                line: 314,
                                column: 11,
                               },
                               end: Position {
                                line: 314,
                                column: 15,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: Identifier(
                              Identifier {
                               id: "mkDefault",
                               span: Span {
                                start: Position {
                                 line: 314,
                                 column: 18,
                                },
                                end: Position {
                                 line: 314,
                                 column: 27,
                                },
                               },
                              },
                             ),
                             arguments: [
                              Identifier(
                               Identifier {
                                id: "name",
                                span: Span {
                                 start: Position {
                                  line: 314,
                                  column: 28,
                                 },
                                 end: Position {
                                  line: 314,
                                  column: 32,
                                 },
                                },
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "shell",
                              span: Span {
                               start: Position {
                                line: 315,
                                column: 11,
                               },
                               end: Position {
                                line: 315,
                                column: 16,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: Identifier(
                              Identifier {
                               id: "mkIf",
                               span: Span {
                                start: Position {
                                 line: 315,
                                 column: 19,
                                },
                                end: Position {
                                 line: 315,
                                 column: 23,
                                },
                               },
                              },
                             ),
                             arguments: [
                              PropertyAccess(
                               PropertyAccess {
                                expression: Identifier(
                                 Identifier {
                                  id: "config",
                                  span: Span {
                                   start: Position {
                                    line: 315,
                                    column: 24,
                                   },
                                   end: Position {
                                    line: 315,
                                    column: 30,
                                   },
                                  },
                                 },
                                ),
                                attribute_path: [
                                 Raw(
                                  PartRaw {
                                   content: "useDefaultShell",
                                   span: Span {
                                    start: Position {
                                     line: 315,
                                     column: 31,
                                    },
                                    end: Position {
                                     line: 315,
                                     column: 46,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                default: None,
                               },
                              ),
                              FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 315,
                                    column: 48,
                                   },
                                   end: Position {
                                    line: 315,
                                    column: 57,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 PropertyAccess(
                                  PropertyAccess {
                                   expression: Identifier(
                                    Identifier {
                                     id: "cfg",
                                     span: Span {
                                      start: Position {
                                       line: 315,
                                       column: 58,
                                      },
                                      end: Position {
                                       line: 315,
                                       column: 61,
                                      },
                                     },
                                    },
                                   ),
                                   attribute_path: [
                                    Raw(
                                     PartRaw {
                                      content: "defaultUserShell",
                                      span: Span {
                                       start: Position {
                                        line: 315,
                                        column: 62,
                                       },
                                       end: Position {
                                        line: 315,
                                        column: 78,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   default: None,
                                  },
                                 ),
                                ],
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 314,
                          column: 9,
                         },
                         end: Position {
                          line: 316,
                          column: 10,
                         },
                        },
                       },
                      ),
                      FunctionApplication(
                       FunctionApplication {
                        function: Identifier(
                         Identifier {
                          id: "mkIf",
                          span: Span {
                           start: Position {
                            line: 317,
                            column: 10,
                           },
                           end: Position {
                            line: 317,
                            column: 14,
                           },
                          },
                         },
                        ),
                        arguments: [
                         PropertyAccess(
                          PropertyAccess {
                           expression: Identifier(
                            Identifier {
                             id: "config",
                             span: Span {
                              start: Position {
                               line: 317,
                               column: 15,
                              },
                              end: Position {
                               line: 317,
                               column: 21,
                              },
                             },
                            },
                           ),
                           attribute_path: [
                            Raw(
                             PartRaw {
                              content: "isNormalUser",
                              span: Span {
                               start: Position {
                                line: 317,
                                column: 22,
                               },
                               end: Position {
                                line: 317,
                                column: 34,
                               },
                              },
                             },
                            ),
                           ],
                           default: None,
                          },
                         ),
                         Map(
                          Map {
                           recursive: false,
                           bindings: [
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "group",
                                 span: Span {
                                  start: Position {
                                   line: 318,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 318,
                                   column: 16,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 318,
                                    column: 19,
                                   },
                                   end: Position {
                                    line: 318,
                                    column: 28,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 String(
                                  String_ {
                                   parts: [
                                    Raw(
                                     PartRaw {
                                      content: "users",
                                      span: Span {
                                       start: Position {
                                        line: 318,
                                        column: 30,
                                       },
                                       end: Position {
                                        line: 318,
                                        column: 35,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   span: Span {
                                    start: Position {
                                     line: 318,
                                     column: 29,
                                    },
                                    end: Position {
                                     line: 318,
                                     column: 36,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "createHome",
                                 span: Span {
                                  start: Position {
                                   line: 319,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 319,
                                   column: 21,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 319,
                                    column: 24,
                                   },
                                   end: Position {
                                    line: 319,
                                    column: 33,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 Identifier(
                                  Identifier {
                                   id: "true",
                                   span: Span {
                                    start: Position {
                                     line: 319,
                                     column: 34,
                                    },
                                    end: Position {
                                     line: 319,
                                     column: 38,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "home",
                                 span: Span {
                                  start: Position {
                                   line: 320,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 320,
                                   column: 15,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 320,
                                    column: 18,
                                   },
                                   end: Position {
                                    line: 320,
                                    column: 27,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 String(
                                  String_ {
                                   parts: [
                                    Raw(
                                     PartRaw {
                                      content: "/home/",
                                      span: Span {
                                       start: Position {
                                        line: 320,
                                        column: 29,
                                       },
                                       end: Position {
                                        line: 320,
                                        column: 49,
                                       },
                                      },
                                     },
                                    ),
                                    Interpolation(
                                     PartInterpolation {
                                      expression: PropertyAccess(
                                       PropertyAccess {
                                        expression: Identifier(
                                         Identifier {
                                          id: "config",
                                          span: Span {
                                           start: Position {
                                            line: 320,
                                            column: 37,
                                           },
                                           end: Position {
                                            line: 320,
                                            column: 43,
                                           },
                                          },
                                         },
                                        ),
                                        attribute_path: [
                                         Raw(
                                          PartRaw {
                                           content: "name",
                                           span: Span {
                                            start: Position {
                                             line: 320,
                                             column: 44,
                                            },
                                            end: Position {
                                             line: 320,
                                             column: 48,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        default: None,
                                       },
                                      ),
                                     },
                                    ),
                                   ],
                                   span: Span {
                                    start: Position {
                                     line: 320,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 320,
                                     column: 50,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "homeMode",
                                 span: Span {
                                  start: Position {
                                   line: 321,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 321,
                                   column: 19,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 321,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 321,
                                    column: 31,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 String(
                                  String_ {
                                   parts: [
                                    Raw(
                                     PartRaw {
                                      content: "700",
                                      span: Span {
                                       start: Position {
                                        line: 321,
                                        column: 33,
                                       },
                                       end: Position {
                                        line: 321,
                                        column: 36,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   span: Span {
                                    start: Position {
                                     line: 321,
                                     column: 32,
                                    },
                                    end: Position {
                                     line: 321,
                                     column: 37,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "useDefaultShell",
                                 span: Span {
                                  start: Position {
                                   line: 322,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 322,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 322,
                                    column: 29,
                                   },
                                   end: Position {
                                    line: 322,
                                    column: 38,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 Identifier(
                                  Identifier {
                                   id: "true",
                                   span: Span {
                                    start: Position {
                                     line: 322,
                                     column: 39,
                                    },
                                    end: Position {
                                     line: 322,
                                     column: 43,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "isSystemUser",
                                 span: Span {
                                  start: Position {
                                   line: 323,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 323,
                                   column: 23,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 323,
                                    column: 26,
                                   },
                                   end: Position {
                                    line: 323,
                                    column: 35,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 Identifier(
                                  Identifier {
                                   id: "false",
                                   span: Span {
                                    start: Position {
                                     line: 323,
                                     column: 36,
                                    },
                                    end: Position {
                                     line: 323,
                                     column: 41,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                           ],
                           span: Span {
                            start: Position {
                             line: 317,
                             column: 35,
                            },
                            end: Position {
                             line: 324,
                             column: 10,
                            },
                           },
                          },
                         ),
                        ],
                       },
                      ),
                      FunctionApplication(
                       FunctionApplication {
                        function: Identifier(
                         Identifier {
                          id: "mkIf",
                          span: Span {
                           start: Position {
                            line: 327,
                            column: 10,
                           },
                           end: Position {
                            line: 327,
                            column: 14,
                           },
                          },
                         },
                        ),
                        arguments: [
                         BinaryOperation(
                          BinaryOperation {
                           left: UnaryOperation(
                            UnaryOperation {
                             operator: Not,
                             operand: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "cfg",
                                 span: Span {
                                  start: Position {
                                   line: 327,
                                   column: 17,
                                  },
                                  end: Position {
                                   line: 327,
                                   column: 20,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mutableUsers",
                                  span: Span {
                                   start: Position {
                                    line: 327,
                                    column: 21,
                                   },
                                   end: Position {
                                    line: 327,
                                    column: 33,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             span: Span {
                              start: Position {
                               line: 327,
                               column: 16,
                              },
                              end: Position {
                               line: 327,
                               column: 33,
                              },
                             },
                            },
                           ),
                           operator: LogicalAnd,
                           right: BinaryOperation(
                            BinaryOperation {
                             left: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "config",
                                 span: Span {
                                  start: Position {
                                   line: 327,
                                   column: 37,
                                  },
                                  end: Position {
                                   line: 327,
                                   column: 43,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "initialPassword",
                                  span: Span {
                                   start: Position {
                                    line: 327,
                                    column: 44,
                                   },
                                   end: Position {
                                    line: 327,
                                    column: 59,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             operator: NotEqualTo,
                             right: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 327,
                                 column: 63,
                                },
                                end: Position {
                                 line: 327,
                                 column: 67,
                                },
                               },
                              },
                             ),
                            },
                           ),
                          },
                         ),
                         Map(
                          Map {
                           recursive: false,
                           bindings: [
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "password",
                                 span: Span {
                                  start: Position {
                                   line: 328,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 328,
                                   column: 19,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 328,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 328,
                                    column: 31,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 PropertyAccess(
                                  PropertyAccess {
                                   expression: Identifier(
                                    Identifier {
                                     id: "config",
                                     span: Span {
                                      start: Position {
                                       line: 328,
                                       column: 32,
                                      },
                                      end: Position {
                                       line: 328,
                                       column: 38,
                                      },
                                     },
                                    },
                                   ),
                                   attribute_path: [
                                    Raw(
                                     PartRaw {
                                      content: "initialPassword",
                                      span: Span {
                                       start: Position {
                                        line: 328,
                                        column: 39,
                                       },
                                       end: Position {
                                        line: 328,
                                        column: 54,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   default: None,
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                           ],
                           span: Span {
                            start: Position {
                             line: 327,
                             column: 69,
                            },
                            end: Position {
                             line: 329,
                             column: 10,
                            },
                           },
                          },
                         ),
                        ],
                       },
                      ),
                      FunctionApplication(
                       FunctionApplication {
                        function: Identifier(
                         Identifier {
                          id: "mkIf",
                          span: Span {
                           start: Position {
                            line: 330,
                            column: 10,
                           },
                           end: Position {
                            line: 330,
                            column: 14,
                           },
                          },
                         },
                        ),
                        arguments: [
                         BinaryOperation(
                          BinaryOperation {
                           left: UnaryOperation(
                            UnaryOperation {
                             operator: Not,
                             operand: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "cfg",
                                 span: Span {
                                  start: Position {
                                   line: 330,
                                   column: 17,
                                  },
                                  end: Position {
                                   line: 330,
                                   column: 20,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mutableUsers",
                                  span: Span {
                                   start: Position {
                                    line: 330,
                                    column: 21,
                                   },
                                   end: Position {
                                    line: 330,
                                    column: 33,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             span: Span {
                              start: Position {
                               line: 330,
                               column: 16,
                              },
                              end: Position {
                               line: 330,
                               column: 33,
                              },
                             },
                            },
                           ),
                           operator: LogicalAnd,
                           right: BinaryOperation(
                            BinaryOperation {
                             left: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "config",
                                 span: Span {
                                  start: Position {
                                   line: 330,
                                   column: 37,
                                  },
                                  end: Position {
                                   line: 330,
                                   column: 43,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "initialHashedPassword",
                                  span: Span {
                                   start: Position {
                                    line: 330,
                                    column: 44,
                                   },
                                   end: Position {
                                    line: 330,
                                    column: 65,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             operator: NotEqualTo,
                             right: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 330,
                                 column: 69,
                                },
                                end: Position {
                                 line: 330,
                                 column: 73,
                                },
                               },
                              },
                             ),
                            },
                           ),
                          },
                         ),
                         Map(
                          Map {
                           recursive: false,
                           bindings: [
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "hashedPassword",
                                 span: Span {
                                  start: Position {
                                   line: 331,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 331,
                                   column: 25,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 331,
                                    column: 28,
                                   },
                                   end: Position {
                                    line: 331,
                                    column: 37,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 PropertyAccess(
                                  PropertyAccess {
                                   expression: Identifier(
                                    Identifier {
                                     id: "config",
                                     span: Span {
                                      start: Position {
                                       line: 331,
                                       column: 38,
                                      },
                                      end: Position {
                                       line: 331,
                                       column: 44,
                                      },
                                     },
                                    },
                                   ),
                                   attribute_path: [
                                    Raw(
                                     PartRaw {
                                      content: "initialHashedPassword",
                                      span: Span {
                                       start: Position {
                                        line: 331,
                                        column: 45,
                                       },
                                       end: Position {
                                        line: 331,
                                        column: 66,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   default: None,
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                           ],
                           span: Span {
                            start: Position {
                             line: 330,
                             column: 75,
                            },
                            end: Position {
                             line: 332,
                             column: 10,
                            },
                           },
                          },
                         ),
                        ],
                       },
                      ),
                      FunctionApplication(
                       FunctionApplication {
                        function: Identifier(
                         Identifier {
                          id: "mkIf",
                          span: Span {
                           start: Position {
                            line: 333,
                            column: 10,
                           },
                           end: Position {
                            line: 333,
                            column: 14,
                           },
                          },
                         },
                        ),
                        arguments: [
                         BinaryOperation(
                          BinaryOperation {
                           left: BinaryOperation(
                            BinaryOperation {
                             left: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "config",
                                 span: Span {
                                  start: Position {
                                   line: 333,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 333,
                                   column: 22,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "isNormalUser",
                                  span: Span {
                                   start: Position {
                                    line: 333,
                                    column: 23,
                                   },
                                   end: Position {
                                    line: 333,
                                    column: 35,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             operator: LogicalAnd,
                             right: BinaryOperation(
                              BinaryOperation {
                               left: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "config",
                                   span: Span {
                                    start: Position {
                                     line: 333,
                                     column: 39,
                                    },
                                    end: Position {
                                     line: 333,
                                     column: 45,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "subUidRanges",
                                    span: Span {
                                     start: Position {
                                      line: 333,
                                      column: 46,
                                     },
                                     end: Position {
                                      line: 333,
                                      column: 58,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               operator: EqualTo,
                               right: List(
                                List {
                                 elements: [],
                                 span: Span {
                                  start: Position {
                                   line: 333,
                                   column: 62,
                                  },
                                  end: Position {
                                   line: 333,
                                   column: 64,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                            },
                           ),
                           operator: LogicalAnd,
                           right: BinaryOperation(
                            BinaryOperation {
                             left: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "config",
                                 span: Span {
                                  start: Position {
                                   line: 333,
                                   column: 68,
                                  },
                                  end: Position {
                                   line: 333,
                                   column: 74,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "subGidRanges",
                                  span: Span {
                                   start: Position {
                                    line: 333,
                                    column: 75,
                                   },
                                   end: Position {
                                    line: 333,
                                    column: 87,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             operator: EqualTo,
                             right: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 333,
                                 column: 91,
                                },
                                end: Position {
                                 line: 333,
                                 column: 93,
                                },
                               },
                              },
                             ),
                            },
                           ),
                          },
                         ),
                         Map(
                          Map {
                           recursive: false,
                           bindings: [
                            KeyValue(
                             BindingKeyValue {
                              from: [
                               Raw(
                                PartRaw {
                                 content: "autoSubUidGidRange",
                                 span: Span {
                                  start: Position {
                                   line: 334,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 334,
                                   column: 29,
                                  },
                                 },
                                },
                               ),
                              ],
                              to: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "mkDefault",
                                  span: Span {
                                   start: Position {
                                    line: 334,
                                    column: 32,
                                   },
                                   end: Position {
                                    line: 334,
                                    column: 41,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 Identifier(
                                  Identifier {
                                   id: "true",
                                   span: Span {
                                    start: Position {
                                     line: 334,
                                     column: 42,
                                    },
                                    end: Position {
                                     line: 334,
                                     column: 46,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                           ],
                           span: Span {
                            start: Position {
                             line: 333,
                             column: 95,
                            },
                            end: Position {
                             line: 335,
                             column: 10,
                            },
                           },
                          },
                         ),
                        ],
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 314,
                       column: 7,
                      },
                      end: Position {
                       line: 336,
                       column: 8,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
             ],
             span: Span {
              start: Position {
               line: 52,
               column: 37,
              },
              end: Position {
               line: 338,
               column: 4,
              },
             },
            },
           ),
           span: Span {
            start: Position {
             line: 52,
             column: 14,
            },
            end: Position {
             line: 338,
             column: 4,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "groupOpts",
            span: Span {
             start: Position {
              line: 340,
              column: 3,
             },
             end: Position {
              line: 340,
              column: 12,
             },
            },
           },
          ),
         ],
         to: Function(
          Function {
           head: Destructured(
            FunctionHeadDestructured {
             ellipsis: true,
             identifier: None,
             arguments: [
              FunctionHeadDestructuredArgument {
               identifier: "name",
               default: None,
              },
              FunctionHeadDestructuredArgument {
               identifier: "config",
               default: None,
              },
             ],
            },
           ),
           body: Map(
            Map {
             recursive: false,
             bindings: [
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "options",
                   span: Span {
                    start: Position {
                     line: 342,
                     column: 5,
                    },
                    end: Position {
                     line: 342,
                     column: 12,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "name",
                        span: Span {
                         start: Position {
                          line: 344,
                          column: 7,
                         },
                         end: Position {
                          line: 344,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 344,
                           column: 14,
                          },
                          end: Position {
                           line: 344,
                           column: 22,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 345,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 345,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "types",
                                   span: Span {
                                    start: Position {
                                     line: 345,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 345,
                                     column: 21,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "passwdEntry",
                                    span: Span {
                                     start: Position {
                                      line: 345,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 345,
                                      column: 33,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "types",
                                    span: Span {
                                     start: Position {
                                      line: 345,
                                      column: 34,
                                     },
                                     end: Position {
                                      line: 345,
                                      column: 39,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "str",
                                     span: Span {
                                      start: Position {
                                       line: 345,
                                       column: 40,
                                      },
                                      end: Position {
                                       line: 345,
                                       column: 43,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 346,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 346,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 346,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 346,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 346,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 346,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The name of the group. If undefined, the name of the attribute set\nwill be used.\n",
                                     span: Span {
                                      start: Position {
                                       line: 347,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 349,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 346,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 349,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 344,
                            column: 23,
                           },
                           end: Position {
                            line: 350,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 352,
                          column: 7,
                         },
                         end: Position {
                          line: 352,
                          column: 10,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 352,
                           column: 13,
                          },
                          end: Position {
                           line: 352,
                           column: 21,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 353,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 353,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 353,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 353,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "nullOr",
                                   span: Span {
                                    start: Position {
                                     line: 353,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 353,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  Identifier(
                                   Identifier {
                                    id: "int",
                                    span: Span {
                                     start: Position {
                                      line: 353,
                                      column: 35,
                                     },
                                     end: Position {
                                      line: 353,
                                      column: 38,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 353,
                                 column: 16,
                                },
                                end: Position {
                                 line: 353,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 354,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 354,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Identifier(
                              Identifier {
                               id: "null",
                               span: Span {
                                start: Position {
                                 line: 354,
                                 column: 19,
                                },
                                end: Position {
                                 line: 354,
                                 column: 23,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 355,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 355,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 355,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 355,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 355,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 355,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The group GID. If the GID is null, a free GID is picked on\nactivation.\n",
                                     span: Span {
                                      start: Position {
                                       line: 356,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 358,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 355,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 358,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 352,
                            column: 22,
                           },
                           end: Position {
                            line: 359,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "members",
                        span: Span {
                         start: Position {
                          line: 361,
                          column: 7,
                         },
                         end: Position {
                          line: 361,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkOption",
                         span: Span {
                          start: Position {
                           line: 361,
                           column: 17,
                          },
                          end: Position {
                           line: 361,
                           column: 25,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "type",
                                span: Span {
                                 start: Position {
                                  line: 362,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 362,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: With(
                              With {
                               expression: Identifier(
                                Identifier {
                                 id: "types",
                                 span: Span {
                                  start: Position {
                                   line: 362,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 362,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               target: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "listOf",
                                   span: Span {
                                    start: Position {
                                     line: 362,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 362,
                                     column: 34,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "passwdEntry",
                                      span: Span {
                                       start: Position {
                                        line: 362,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 362,
                                        column: 47,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "str",
                                       span: Span {
                                        start: Position {
                                         line: 362,
                                         column: 48,
                                        },
                                        end: Position {
                                         line: 362,
                                         column: 51,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 362,
                                 column: 16,
                                },
                                end: Position {
                                 line: 362,
                                 column: 52,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "default",
                                span: Span {
                                 start: Position {
                                  line: 363,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 363,
                                  column: 16,
                                 },
                                },
                               },
                              ),
                             ],
                             to: List(
                              List {
                               elements: [],
                               span: Span {
                                start: Position {
                                 line: 363,
                                 column: 19,
                                },
                                end: Position {
                                 line: 363,
                                 column: 21,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "description",
                                span: Span {
                                 start: Position {
                                  line: 364,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 364,
                                  column: 20,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "lib",
                                   span: Span {
                                    start: Position {
                                     line: 364,
                                     column: 23,
                                    },
                                    end: Position {
                                     line: 364,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "mdDoc",
                                    span: Span {
                                     start: Position {
                                      line: 364,
                                      column: 27,
                                     },
                                     end: Position {
                                      line: 364,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                IndentedString(
                                 IndentedString {
                                  parts: [
                                   Raw(
                                    PartRaw {
                                     content: "The user names of the group members, added to the\n`/etc/group` file.\n",
                                     span: Span {
                                      start: Position {
                                       line: 365,
                                       column: 1,
                                      },
                                      end: Position {
                                       line: 367,
                                       column: 9,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  span: Span {
                                   start: Position {
                                    line: 364,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 367,
                                    column: 11,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 361,
                            column: 26,
                           },
                           end: Position {
                            line: 368,
                            column: 8,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 342,
                    column: 15,
                   },
                   end: Position {
                    line: 370,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "config",
                   span: Span {
                    start: Position {
                     line: 372,
                     column: 5,
                    },
                    end: Position {
                     line: 372,
                     column: 11,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "name",
                        span: Span {
                         start: Position {
                          line: 373,
                          column: 7,
                         },
                         end: Position {
                          line: 373,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mkDefault",
                         span: Span {
                          start: Position {
                           line: 373,
                           column: 14,
                          },
                          end: Position {
                           line: 373,
                           column: 23,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Identifier(
                         Identifier {
                          id: "name",
                          span: Span {
                           start: Position {
                            line: 373,
                            column: 24,
                           },
                           end: Position {
                            line: 373,
                            column: 28,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "members",
                        span: Span {
                         start: Position {
                          line: 375,
                          column: 7,
                         },
                         end: Position {
                          line: 375,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "mapAttrsToList",
                         span: Span {
                          start: Position {
                           line: 375,
                           column: 17,
                          },
                          end: Position {
                           line: 375,
                           column: 31,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Function(
                         Function {
                          head: Simple(
                           FunctionHeadSimple {
                            identifier: "n",
                           },
                          ),
                          body: Function(
                           Function {
                            head: Simple(
                             FunctionHeadSimple {
                              identifier: "u",
                             },
                            ),
                            body: PropertyAccess(
                             PropertyAccess {
                              expression: Identifier(
                               Identifier {
                                id: "u",
                                span: Span {
                                 start: Position {
                                  line: 375,
                                  column: 39,
                                 },
                                 end: Position {
                                  line: 375,
                                  column: 40,
                                 },
                                },
                               },
                              ),
                              attribute_path: [
                               Raw(
                                PartRaw {
                                 content: "name",
                                 span: Span {
                                  start: Position {
                                   line: 375,
                                   column: 41,
                                  },
                                  end: Position {
                                   line: 375,
                                   column: 45,
                                  },
                                 },
                                },
                               ),
                              ],
                              default: None,
                             },
                            ),
                            span: Span {
                             start: Position {
                              line: 375,
                              column: 36,
                             },
                             end: Position {
                              line: 375,
                              column: 45,
                             },
                            },
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 375,
                            column: 33,
                           },
                           end: Position {
                            line: 375,
                            column: 45,
                           },
                          },
                         },
                        ),
                        FunctionApplication(
                         FunctionApplication {
                          function: Identifier(
                           Identifier {
                            id: "filterAttrs",
                            span: Span {
                             start: Position {
                              line: 376,
                              column: 9,
                             },
                             end: Position {
                              line: 376,
                              column: 20,
                             },
                            },
                           },
                          ),
                          arguments: [
                           Function(
                            Function {
                             head: Simple(
                              FunctionHeadSimple {
                               identifier: "n",
                              },
                             ),
                             body: Function(
                              Function {
                               head: Simple(
                                FunctionHeadSimple {
                                 identifier: "u",
                                },
                               ),
                               body: FunctionApplication(
                                FunctionApplication {
                                 function: Identifier(
                                  Identifier {
                                   id: "elem",
                                   span: Span {
                                    start: Position {
                                     line: 376,
                                     column: 28,
                                    },
                                    end: Position {
                                     line: 376,
                                     column: 32,
                                    },
                                   },
                                  },
                                 ),
                                 arguments: [
                                  PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "config",
                                      span: Span {
                                       start: Position {
                                        line: 376,
                                        column: 33,
                                       },
                                       end: Position {
                                        line: 376,
                                        column: 39,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "name",
                                       span: Span {
                                        start: Position {
                                         line: 376,
                                         column: 40,
                                        },
                                        end: Position {
                                         line: 376,
                                         column: 44,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                  PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "u",
                                      span: Span {
                                       start: Position {
                                        line: 376,
                                        column: 45,
                                       },
                                       end: Position {
                                        line: 376,
                                        column: 46,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "extraGroups",
                                       span: Span {
                                        start: Position {
                                         line: 376,
                                         column: 47,
                                        },
                                        end: Position {
                                         line: 376,
                                         column: 58,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                 ],
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 376,
                                 column: 25,
                                },
                                end: Position {
                                 line: 376,
                                 column: 58,
                                },
                               },
                              },
                             ),
                             span: Span {
                              start: Position {
                               line: 376,
                               column: 22,
                              },
                              end: Position {
                               line: 376,
                               column: 58,
                              },
                             },
                            },
                           ),
                           PropertyAccess(
                            PropertyAccess {
                             expression: Identifier(
                              Identifier {
                               id: "cfg",
                               span: Span {
                                start: Position {
                                 line: 376,
                                 column: 60,
                                },
                                end: Position {
                                 line: 376,
                                 column: 63,
                                },
                               },
                              },
                             ),
                             attribute_path: [
                              Raw(
                               PartRaw {
                                content: "users",
                                span: Span {
                                 start: Position {
                                  line: 376,
                                  column: 64,
                                 },
                                 end: Position {
                                  line: 376,
                                  column: 69,
                                 },
                                },
                               },
                              ),
                             ],
                             default: None,
                            },
                           ),
                          ],
                         },
                        ),
                       ],
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 372,
                    column: 14,
                   },
                   end: Position {
                    line: 378,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
             ],
             span: Span {
              start: Position {
               line: 340,
               column: 38,
              },
              end: Position {
               line: 380,
               column: 4,
              },
             },
            },
           ),
           span: Span {
            start: Position {
             line: 340,
             column: 15,
            },
            end: Position {
             line: 380,
             column: 4,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "subordinateUidRange",
            span: Span {
             start: Position {
              line: 382,
              column: 3,
             },
             end: Position {
              line: 382,
              column: 22,
             },
            },
           },
          ),
         ],
         to: Map(
          Map {
           recursive: false,
           bindings: [
            KeyValue(
             BindingKeyValue {
              from: [
               Raw(
                PartRaw {
                 content: "options",
                 span: Span {
                  start: Position {
                   line: 383,
                   column: 5,
                  },
                  end: Position {
                   line: 383,
                   column: 12,
                  },
                 },
                },
               ),
              ],
              to: Map(
               Map {
                recursive: false,
                bindings: [
                 KeyValue(
                  BindingKeyValue {
                   from: [
                    Raw(
                     PartRaw {
                      content: "startUid",
                      span: Span {
                       start: Position {
                        line: 384,
                        column: 7,
                       },
                       end: Position {
                        line: 384,
                        column: 15,
                       },
                      },
                     },
                    ),
                   ],
                   to: FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "mkOption",
                       span: Span {
                        start: Position {
                         line: 384,
                         column: 18,
                        },
                        end: Position {
                         line: 384,
                         column: 26,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Map(
                       Map {
                        recursive: false,
                        bindings: [
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "type",
                              span: Span {
                               start: Position {
                                line: 385,
                                column: 9,
                               },
                               end: Position {
                                line: 385,
                                column: 13,
                               },
                              },
                             },
                            ),
                           ],
                           to: PropertyAccess(
                            PropertyAccess {
                             expression: Identifier(
                              Identifier {
                               id: "types",
                               span: Span {
                                start: Position {
                                 line: 385,
                                 column: 16,
                                },
                                end: Position {
                                 line: 385,
                                 column: 21,
                                },
                               },
                              },
                             ),
                             attribute_path: [
                              Raw(
                               PartRaw {
                                content: "int",
                                span: Span {
                                 start: Position {
                                  line: 385,
                                  column: 22,
                                 },
                                 end: Position {
                                  line: 385,
                                  column: 25,
                                 },
                                },
                               },
                              ),
                             ],
                             default: None,
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "description",
                              span: Span {
                               start: Position {
                                line: 386,
                                column: 9,
                               },
                               end: Position {
                                line: 386,
                                column: 20,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "lib",
                                 span: Span {
                                  start: Position {
                                   line: 386,
                                   column: 23,
                                  },
                                  end: Position {
                                   line: 386,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mdDoc",
                                  span: Span {
                                   start: Position {
                                    line: 386,
                                    column: 27,
                                   },
                                   end: Position {
                                    line: 386,
                                    column: 32,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             arguments: [
                              IndentedString(
                               IndentedString {
                                parts: [
                                 Raw(
                                  PartRaw {
                                   content: "Start of the range of subordinate user ids that user is\nallowed to use.\n",
                                   span: Span {
                                    start: Position {
                                     line: 387,
                                     column: 1,
                                    },
                                    end: Position {
                                     line: 389,
                                     column: 9,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 386,
                                  column: 33,
                                 },
                                 end: Position {
                                  line: 389,
                                  column: 11,
                                 },
                                },
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 384,
                          column: 27,
                         },
                         end: Position {
                          line: 390,
                          column: 8,
                         },
                        },
                       },
                      ),
                     ],
                    },
                   ),
                  },
                 ),
                 KeyValue(
                  BindingKeyValue {
                   from: [
                    Raw(
                     PartRaw {
                      content: "count",
                      span: Span {
                       start: Position {
                        line: 391,
                        column: 7,
                       },
                       end: Position {
                        line: 391,
                        column: 12,
                       },
                      },
                     },
                    ),
                   ],
                   to: FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "mkOption",
                       span: Span {
                        start: Position {
                         line: 391,
                         column: 15,
                        },
                        end: Position {
                         line: 391,
                         column: 23,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Map(
                       Map {
                        recursive: false,
                        bindings: [
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "type",
                              span: Span {
                               start: Position {
                                line: 392,
                                column: 9,
                               },
                               end: Position {
                                line: 392,
                                column: 13,
                               },
                              },
                             },
                            ),
                           ],
                           to: PropertyAccess(
                            PropertyAccess {
                             expression: Identifier(
                              Identifier {
                               id: "types",
                               span: Span {
                                start: Position {
                                 line: 392,
                                 column: 16,
                                },
                                end: Position {
                                 line: 392,
                                 column: 21,
                                },
                               },
                              },
                             ),
                             attribute_path: [
                              Raw(
                               PartRaw {
                                content: "int",
                                span: Span {
                                 start: Position {
                                  line: 392,
                                  column: 22,
                                 },
                                 end: Position {
                                  line: 392,
                                  column: 25,
                                 },
                                },
                               },
                              ),
                             ],
                             default: None,
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "default",
                              span: Span {
                               start: Position {
                                line: 393,
                                column: 9,
                               },
                               end: Position {
                                line: 393,
                                column: 16,
                               },
                              },
                             },
                            ),
                           ],
                           to: Integer(
                            Integer {
                             value: "1",
                             span: Span {
                              start: Position {
                               line: 393,
                               column: 19,
                              },
                              end: Position {
                               line: 393,
                               column: 20,
                              },
                             },
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "description",
                              span: Span {
                               start: Position {
                                line: 394,
                                column: 9,
                               },
                               end: Position {
                                line: 394,
                                column: 20,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "lib",
                                 span: Span {
                                  start: Position {
                                   line: 394,
                                   column: 23,
                                  },
                                  end: Position {
                                   line: 394,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mdDoc",
                                  span: Span {
                                   start: Position {
                                    line: 394,
                                    column: 27,
                                   },
                                   end: Position {
                                    line: 394,
                                    column: 32,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             arguments: [
                              String(
                               String_ {
                                parts: [
                                 Raw(
                                  PartRaw {
                                   content: "Count of subordinate user ids",
                                   span: Span {
                                    start: Position {
                                     line: 394,
                                     column: 34,
                                    },
                                    end: Position {
                                     line: 394,
                                     column: 63,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 394,
                                  column: 33,
                                 },
                                 end: Position {
                                  line: 394,
                                  column: 64,
                                 },
                                },
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 391,
                          column: 24,
                         },
                         end: Position {
                          line: 395,
                          column: 8,
                         },
                        },
                       },
                      ),
                     ],
                    },
                   ),
                  },
                 ),
                ],
                span: Span {
                 start: Position {
                  line: 383,
                  column: 15,
                 },
                 end: Position {
                  line: 396,
                  column: 6,
                 },
                },
               },
              ),
             },
            ),
           ],
           span: Span {
            start: Position {
             line: 382,
             column: 25,
            },
            end: Position {
             line: 397,
             column: 4,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "subordinateGidRange",
            span: Span {
             start: Position {
              line: 399,
              column: 3,
             },
             end: Position {
              line: 399,
              column: 22,
             },
            },
           },
          ),
         ],
         to: Map(
          Map {
           recursive: false,
           bindings: [
            KeyValue(
             BindingKeyValue {
              from: [
               Raw(
                PartRaw {
                 content: "options",
                 span: Span {
                  start: Position {
                   line: 400,
                   column: 5,
                  },
                  end: Position {
                   line: 400,
                   column: 12,
                  },
                 },
                },
               ),
              ],
              to: Map(
               Map {
                recursive: false,
                bindings: [
                 KeyValue(
                  BindingKeyValue {
                   from: [
                    Raw(
                     PartRaw {
                      content: "startGid",
                      span: Span {
                       start: Position {
                        line: 401,
                        column: 7,
                       },
                       end: Position {
                        line: 401,
                        column: 15,
                       },
                      },
                     },
                    ),
                   ],
                   to: FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "mkOption",
                       span: Span {
                        start: Position {
                         line: 401,
                         column: 18,
                        },
                        end: Position {
                         line: 401,
                         column: 26,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Map(
                       Map {
                        recursive: false,
                        bindings: [
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "type",
                              span: Span {
                               start: Position {
                                line: 402,
                                column: 9,
                               },
                               end: Position {
                                line: 402,
                                column: 13,
                               },
                              },
                             },
                            ),
                           ],
                           to: PropertyAccess(
                            PropertyAccess {
                             expression: Identifier(
                              Identifier {
                               id: "types",
                               span: Span {
                                start: Position {
                                 line: 402,
                                 column: 16,
                                },
                                end: Position {
                                 line: 402,
                                 column: 21,
                                },
                               },
                              },
                             ),
                             attribute_path: [
                              Raw(
                               PartRaw {
                                content: "int",
                                span: Span {
                                 start: Position {
                                  line: 402,
                                  column: 22,
                                 },
                                 end: Position {
                                  line: 402,
                                  column: 25,
                                 },
                                },
                               },
                              ),
                             ],
                             default: None,
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "description",
                              span: Span {
                               start: Position {
                                line: 403,
                                column: 9,
                               },
                               end: Position {
                                line: 403,
                                column: 20,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "lib",
                                 span: Span {
                                  start: Position {
                                   line: 403,
                                   column: 23,
                                  },
                                  end: Position {
                                   line: 403,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mdDoc",
                                  span: Span {
                                   start: Position {
                                    line: 403,
                                    column: 27,
                                   },
                                   end: Position {
                                    line: 403,
                                    column: 32,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             arguments: [
                              IndentedString(
                               IndentedString {
                                parts: [
                                 Raw(
                                  PartRaw {
                                   content: "Start of the range of subordinate group ids that user is\nallowed to use.\n",
                                   span: Span {
                                    start: Position {
                                     line: 404,
                                     column: 1,
                                    },
                                    end: Position {
                                     line: 406,
                                     column: 9,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 403,
                                  column: 33,
                                 },
                                 end: Position {
                                  line: 406,
                                  column: 11,
                                 },
                                },
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 401,
                          column: 27,
                         },
                         end: Position {
                          line: 407,
                          column: 8,
                         },
                        },
                       },
                      ),
                     ],
                    },
                   ),
                  },
                 ),
                 KeyValue(
                  BindingKeyValue {
                   from: [
                    Raw(
                     PartRaw {
                      content: "count",
                      span: Span {
                       start: Position {
                        line: 408,
                        column: 7,
                       },
                       end: Position {
                        line: 408,
                        column: 12,
                       },
                      },
                     },
                    ),
                   ],
                   to: FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "mkOption",
                       span: Span {
                        start: Position {
                         line: 408,
                         column: 15,
                        },
                        end: Position {
                         line: 408,
                         column: 23,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Map(
                       Map {
                        recursive: false,
                        bindings: [
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "type",
                              span: Span {
                               start: Position {
                                line: 409,
                                column: 9,
                               },
                               end: Position {
                                line: 409,
                                column: 13,
                               },
                              },
                             },
                            ),
                           ],
                           to: PropertyAccess(
                            PropertyAccess {
                             expression: Identifier(
                              Identifier {
                               id: "types",
                               span: Span {
                                start: Position {
                                 line: 409,
                                 column: 16,
                                },
                                end: Position {
                                 line: 409,
                                 column: 21,
                                },
                               },
                              },
                             ),
                             attribute_path: [
                              Raw(
                               PartRaw {
                                content: "int",
                                span: Span {
                                 start: Position {
                                  line: 409,
                                  column: 22,
                                 },
                                 end: Position {
                                  line: 409,
                                  column: 25,
                                 },
                                },
                               },
                              ),
                             ],
                             default: None,
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "default",
                              span: Span {
                               start: Position {
                                line: 410,
                                column: 9,
                               },
                               end: Position {
                                line: 410,
                                column: 16,
                               },
                              },
                             },
                            ),
                           ],
                           to: Integer(
                            Integer {
                             value: "1",
                             span: Span {
                              start: Position {
                               line: 410,
                               column: 19,
                              },
                              end: Position {
                               line: 410,
                               column: 20,
                              },
                             },
                            },
                           ),
                          },
                         ),
                         KeyValue(
                          BindingKeyValue {
                           from: [
                            Raw(
                             PartRaw {
                              content: "description",
                              span: Span {
                               start: Position {
                                line: 411,
                                column: 9,
                               },
                               end: Position {
                                line: 411,
                                column: 20,
                               },
                              },
                             },
                            ),
                           ],
                           to: FunctionApplication(
                            FunctionApplication {
                             function: PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "lib",
                                 span: Span {
                                  start: Position {
                                   line: 411,
                                   column: 23,
                                  },
                                  end: Position {
                                   line: 411,
                                   column: 26,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "mdDoc",
                                  span: Span {
                                   start: Position {
                                    line: 411,
                                    column: 27,
                                   },
                                   end: Position {
                                    line: 411,
                                    column: 32,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                             arguments: [
                              String(
                               String_ {
                                parts: [
                                 Raw(
                                  PartRaw {
                                   content: "Count of subordinate group ids",
                                   span: Span {
                                    start: Position {
                                     line: 411,
                                     column: 34,
                                    },
                                    end: Position {
                                     line: 411,
                                     column: 64,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 411,
                                  column: 33,
                                 },
                                 end: Position {
                                  line: 411,
                                  column: 65,
                                 },
                                },
                               },
                              ),
                             ],
                            },
                           ),
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 408,
                          column: 24,
                         },
                         end: Position {
                          line: 412,
                          column: 8,
                         },
                        },
                       },
                      ),
                     ],
                    },
                   ),
                  },
                 ),
                ],
                span: Span {
                 start: Position {
                  line: 400,
                  column: 15,
                 },
                 end: Position {
                  line: 413,
                  column: 6,
                 },
                },
               },
              ),
             },
            ),
           ],
           span: Span {
            start: Position {
             line: 399,
             column: 25,
            },
            end: Position {
             line: 414,
             column: 4,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "idsAreUnique",
            span: Span {
             start: Position {
              line: 416,
              column: 3,
             },
             end: Position {
              line: 416,
              column: 15,
             },
            },
           },
          ),
         ],
         to: Function(
          Function {
           head: Simple(
            FunctionHeadSimple {
             identifier: "set",
            },
           ),
           body: Function(
            Function {
             head: Simple(
              FunctionHeadSimple {
               identifier: "idAttr",
              },
             ),
             body: UnaryOperation(
              UnaryOperation {
               operator: Not,
               operand: PropertyAccess(
                PropertyAccess {
                 expression: FunctionApplication(
                  FunctionApplication {
                   function: Identifier(
                    Identifier {
                     id: "foldr",
                     span: Span {
                      start: Position {
                       line: 416,
                       column: 33,
                      },
                      end: Position {
                       line: 416,
                       column: 38,
                      },
                     },
                    },
                   ),
                   arguments: [
                    Function(
                     Function {
                      head: Simple(
                       FunctionHeadSimple {
                        identifier: "name",
                       },
                      ),
                      body: Function(
                       Function {
                        head: Destructured(
                         FunctionHeadDestructured {
                          ellipsis: false,
                          identifier: LeftAt(
                           "args",
                          ),
                          arguments: [
                           FunctionHeadDestructuredArgument {
                            identifier: "dup",
                            default: None,
                           },
                           FunctionHeadDestructuredArgument {
                            identifier: "acc",
                            default: None,
                           },
                          ],
                         },
                        ),
                        body: LetIn(
                         LetIn {
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "id",
                                span: Span {
                                 start: Position {
                                  line: 418,
                                  column: 7,
                                 },
                                 end: Position {
                                  line: 418,
                                  column: 9,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "builtins",
                                   span: Span {
                                    start: Position {
                                     line: 418,
                                     column: 12,
                                    },
                                    end: Position {
                                     line: 418,
                                     column: 20,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "toString",
                                    span: Span {
                                     start: Position {
                                      line: 418,
                                      column: 21,
                                     },
                                     end: Position {
                                      line: 418,
                                      column: 29,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                FunctionApplication(
                                 FunctionApplication {
                                  function: PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "builtins",
                                      span: Span {
                                       start: Position {
                                        line: 418,
                                        column: 31,
                                       },
                                       end: Position {
                                        line: 418,
                                        column: 39,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "getAttr",
                                       span: Span {
                                        start: Position {
                                         line: 418,
                                         column: 40,
                                        },
                                        end: Position {
                                         line: 418,
                                         column: 47,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                  arguments: [
                                   Identifier(
                                    Identifier {
                                     id: "idAttr",
                                     span: Span {
                                      start: Position {
                                       line: 418,
                                       column: 48,
                                      },
                                      end: Position {
                                       line: 418,
                                       column: 54,
                                      },
                                     },
                                    },
                                   ),
                                   FunctionApplication(
                                    FunctionApplication {
                                     function: PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "builtins",
                                         span: Span {
                                          start: Position {
                                           line: 418,
                                           column: 56,
                                          },
                                          end: Position {
                                           line: 418,
                                           column: 64,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "getAttr",
                                          span: Span {
                                           start: Position {
                                            line: 418,
                                            column: 65,
                                           },
                                           end: Position {
                                            line: 418,
                                            column: 72,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                     arguments: [
                                      Identifier(
                                       Identifier {
                                        id: "name",
                                        span: Span {
                                         start: Position {
                                          line: 418,
                                          column: 73,
                                         },
                                         end: Position {
                                          line: 418,
                                          column: 77,
                                         },
                                        },
                                       },
                                      ),
                                      Identifier(
                                       Identifier {
                                        id: "set",
                                        span: Span {
                                         start: Position {
                                          line: 418,
                                          column: 78,
                                         },
                                         end: Position {
                                          line: 418,
                                          column: 81,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                    },
                                   ),
                                  ],
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "exists",
                                span: Span {
                                 start: Position {
                                  line: 419,
                                  column: 7,
                                 },
                                 end: Position {
                                  line: 419,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: FunctionApplication(
                              FunctionApplication {
                               function: PropertyAccess(
                                PropertyAccess {
                                 expression: Identifier(
                                  Identifier {
                                   id: "builtins",
                                   span: Span {
                                    start: Position {
                                     line: 419,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 419,
                                     column: 24,
                                    },
                                   },
                                  },
                                 ),
                                 attribute_path: [
                                  Raw(
                                   PartRaw {
                                    content: "hasAttr",
                                    span: Span {
                                     start: Position {
                                      line: 419,
                                      column: 25,
                                     },
                                     end: Position {
                                      line: 419,
                                      column: 32,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 default: None,
                                },
                               ),
                               arguments: [
                                Identifier(
                                 Identifier {
                                  id: "id",
                                  span: Span {
                                   start: Position {
                                    line: 419,
                                    column: 33,
                                   },
                                   end: Position {
                                    line: 419,
                                    column: 35,
                                   },
                                  },
                                 },
                                ),
                                Identifier(
                                 Identifier {
                                  id: "acc",
                                  span: Span {
                                   start: Position {
                                    line: 419,
                                    column: 36,
                                   },
                                   end: Position {
                                    line: 419,
                                    column: 39,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "newAcc",
                                span: Span {
                                 start: Position {
                                  line: 420,
                                  column: 7,
                                 },
                                 end: Position {
                                  line: 420,
                                  column: 13,
                                 },
                                },
                               },
                              ),
                             ],
                             to: BinaryOperation(
                              BinaryOperation {
                               left: Identifier(
                                Identifier {
                                 id: "acc",
                                 span: Span {
                                  start: Position {
                                   line: 420,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 420,
                                   column: 19,
                                  },
                                 },
                                },
                               ),
                               operator: Update,
                               right: FunctionApplication(
                                FunctionApplication {
                                 function: PropertyAccess(
                                  PropertyAccess {
                                   expression: Identifier(
                                    Identifier {
                                     id: "builtins",
                                     span: Span {
                                      start: Position {
                                       line: 420,
                                       column: 24,
                                      },
                                      end: Position {
                                       line: 420,
                                       column: 32,
                                      },
                                     },
                                    },
                                   ),
                                   attribute_path: [
                                    Raw(
                                     PartRaw {
                                      content: "listToAttrs",
                                      span: Span {
                                       start: Position {
                                        line: 420,
                                        column: 33,
                                       },
                                       end: Position {
                                        line: 420,
                                        column: 44,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   default: None,
                                  },
                                 ),
                                 arguments: [
                                  List(
                                   List {
                                    elements: [
                                     Map(
                                      Map {
                                       recursive: false,
                                       bindings: [
                                        KeyValue(
                                         BindingKeyValue {
                                          from: [
                                           Raw(
                                            PartRaw {
                                             content: "name",
                                             span: Span {
                                              start: Position {
                                               line: 420,
                                               column: 49,
                                              },
                                              end: Position {
                                               line: 420,
                                               column: 53,
                                              },
                                             },
                                            },
                                           ),
                                          ],
                                          to: Identifier(
                                           Identifier {
                                            id: "id",
                                            span: Span {
                                             start: Position {
                                              line: 420,
                                              column: 56,
                                             },
                                             end: Position {
                                              line: 420,
                                              column: 58,
                                             },
                                            },
                                           },
                                          ),
                                         },
                                        ),
                                        KeyValue(
                                         BindingKeyValue {
                                          from: [
                                           Raw(
                                            PartRaw {
                                             content: "value",
                                             span: Span {
                                              start: Position {
                                               line: 420,
                                               column: 60,
                                              },
                                              end: Position {
                                               line: 420,
                                               column: 65,
                                              },
                                             },
                                            },
                                           ),
                                          ],
                                          to: Identifier(
                                           Identifier {
                                            id: "true",
                                            span: Span {
                                             start: Position {
                                              line: 420,
                                              column: 68,
                                             },
                                             end: Position {
                                              line: 420,
                                              column: 72,
                                             },
                                            },
                                           },
                                          ),
                                         },
                                        ),
                                       ],
                                       span: Span {
                                        start: Position {
                                         line: 420,
                                         column: 47,
                                        },
                                        end: Position {
                                         line: 420,
                                         column: 75,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 420,
                                      column: 45,
                                     },
                                     end: Position {
                                      line: 420,
                                      column: 77,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                },
                               ),
                              },
                             ),
                            },
                           ),
                          ],
                          target: IfThenElse(
                           IfThenElse {
                            predicate: Identifier(
                             Identifier {
                              id: "dup",
                              span: Span {
                               start: Position {
                                line: 421,
                                column: 11,
                               },
                               end: Position {
                                line: 421,
                                column: 14,
                               },
                              },
                             },
                            ),
                            then: Identifier(
                             Identifier {
                              id: "args",
                              span: Span {
                               start: Position {
                                line: 421,
                                column: 20,
                               },
                               end: Position {
                                line: 421,
                                column: 24,
                               },
                              },
                             },
                            ),
                            else_: IfThenElse(
                             IfThenElse {
                              predicate: Identifier(
                               Identifier {
                                id: "exists",
                                span: Span {
                                 start: Position {
                                  line: 421,
                                  column: 33,
                                 },
                                 end: Position {
                                  line: 421,
                                  column: 39,
                                 },
                                },
                               },
                              ),
                              then: FunctionApplication(
                               FunctionApplication {
                                function: PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "builtins",
                                    span: Span {
                                     start: Position {
                                      line: 422,
                                      column: 12,
                                     },
                                     end: Position {
                                      line: 422,
                                      column: 20,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "trace",
                                     span: Span {
                                      start: Position {
                                       line: 422,
                                       column: 21,
                                      },
                                      end: Position {
                                       line: 422,
                                       column: 26,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                                arguments: [
                                 String(
                                  String_ {
                                   parts: [
                                    Raw(
                                     PartRaw {
                                      content: "Duplicate ",
                                      span: Span {
                                       start: Position {
                                        line: 422,
                                        column: 28,
                                       },
                                       end: Position {
                                        line: 422,
                                        column: 47,
                                       },
                                      },
                                     },
                                    ),
                                    Interpolation(
                                     PartInterpolation {
                                      expression: Identifier(
                                       Identifier {
                                        id: "idAttr",
                                        span: Span {
                                         start: Position {
                                          line: 422,
                                          column: 40,
                                         },
                                         end: Position {
                                          line: 422,
                                          column: 46,
                                         },
                                        },
                                       },
                                      ),
                                     },
                                    ),
                                    Raw(
                                     PartRaw {
                                      content: " ",
                                      span: Span {
                                       start: Position {
                                        line: 422,
                                        column: 28,
                                       },
                                       end: Position {
                                        line: 422,
                                        column: 48,
                                       },
                                      },
                                     },
                                    ),
                                    Interpolation(
                                     PartInterpolation {
                                      expression: Identifier(
                                       Identifier {
                                        id: "id",
                                        span: Span {
                                         start: Position {
                                          line: 422,
                                          column: 50,
                                         },
                                         end: Position {
                                          line: 422,
                                          column: 52,
                                         },
                                        },
                                       },
                                      ),
                                     },
                                    ),
                                   ],
                                   span: Span {
                                    start: Position {
                                     line: 422,
                                     column: 27,
                                    },
                                    end: Position {
                                     line: 422,
                                     column: 54,
                                    },
                                   },
                                  },
                                 ),
                                 Map(
                                  Map {
                                   recursive: false,
                                   bindings: [
                                    KeyValue(
                                     BindingKeyValue {
                                      from: [
                                       Raw(
                                        PartRaw {
                                         content: "dup",
                                         span: Span {
                                          start: Position {
                                           line: 422,
                                           column: 57,
                                          },
                                          end: Position {
                                           line: 422,
                                           column: 60,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      to: Identifier(
                                       Identifier {
                                        id: "true",
                                        span: Span {
                                         start: Position {
                                          line: 422,
                                          column: 63,
                                         },
                                         end: Position {
                                          line: 422,
                                          column: 67,
                                         },
                                        },
                                       },
                                      ),
                                     },
                                    ),
                                    KeyValue(
                                     BindingKeyValue {
                                      from: [
                                       Raw(
                                        PartRaw {
                                         content: "acc",
                                         span: Span {
                                          start: Position {
                                           line: 422,
                                           column: 69,
                                          },
                                          end: Position {
                                           line: 422,
                                           column: 72,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      to: Identifier(
                                       Identifier {
                                        id: "null",
                                        span: Span {
                                         start: Position {
                                          line: 422,
                                          column: 75,
                                         },
                                         end: Position {
                                          line: 422,
                                          column: 79,
                                         },
                                        },
                                       },
                                      ),
                                     },
                                    ),
                                   ],
                                   span: Span {
                                    start: Position {
                                     line: 422,
                                     column: 55,
                                    },
                                    end: Position {
                                     line: 422,
                                     column: 82,
                                    },
                                   },
                                  },
                                 ),
                                ],
                               },
                              ),
                              else_: Map(
                               Map {
                                recursive: false,
                                bindings: [
                                 KeyValue(
                                  BindingKeyValue {
                                   from: [
                                    Raw(
                                     PartRaw {
                                      content: "dup",
                                      span: Span {
                                       start: Position {
                                        line: 423,
                                        column: 14,
                                       },
                                       end: Position {
                                        line: 423,
                                        column: 17,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   to: Identifier(
                                    Identifier {
                                     id: "false",
                                     span: Span {
                                      start: Position {
                                       line: 423,
                                       column: 20,
                                      },
                                      end: Position {
                                       line: 423,
                                       column: 25,
                                      },
                                     },
                                    },
                                   ),
                                  },
                                 ),
                                 KeyValue(
                                  BindingKeyValue {
                                   from: [
                                    Raw(
                                     PartRaw {
                                      content: "acc",
                                      span: Span {
                                       start: Position {
                                        line: 423,
                                        column: 27,
                                       },
                                       end: Position {
                                        line: 423,
                                        column: 30,
                                       },
                                      },
                                     },
                                    ),
                                   ],
                                   to: Identifier(
                                    Identifier {
                                     id: "newAcc",
                                     span: Span {
                                      start: Position {
                                       line: 423,
                                       column: 33,
                                      },
                                      end: Position {
                                       line: 423,
                                       column: 39,
                                      },
                                     },
                                    },
                                   ),
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 423,
                                  column: 12,
                                 },
                                 end: Position {
                                  line: 423,
                                  column: 42,
                                 },
                                },
                               },
                              ),
                              span: Span {
                               start: Position {
                                line: 421,
                                column: 30,
                               },
                               end: Position {
                                line: 423,
                                column: 42,
                               },
                              },
                             },
                            ),
                            span: Span {
                             start: Position {
                              line: 421,
                              column: 8,
                             },
                             end: Position {
                              line: 423,
                              column: 42,
                             },
                            },
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 417,
                            column: 5,
                           },
                           end: Position {
                            line: 423,
                            column: 42,
                           },
                          },
                         },
                        ),
                        span: Span {
                         start: Position {
                          line: 416,
                          column: 46,
                         },
                         end: Position {
                          line: 423,
                          column: 42,
                         },
                        },
                       },
                      ),
                      span: Span {
                       start: Position {
                        line: 416,
                        column: 40,
                       },
                       end: Position {
                        line: 423,
                        column: 42,
                       },
                      },
                     },
                    ),
                    Map(
                     Map {
                      recursive: false,
                      bindings: [
                       KeyValue(
                        BindingKeyValue {
                         from: [
                          Raw(
                           PartRaw {
                            content: "dup",
                            span: Span {
                             start: Position {
                              line: 424,
                              column: 9,
                             },
                             end: Position {
                              line: 424,
                              column: 12,
                             },
                            },
                           },
                          ),
                         ],
                         to: Identifier(
                          Identifier {
                           id: "false",
                           span: Span {
                            start: Position {
                             line: 424,
                             column: 15,
                            },
                            end: Position {
                             line: 424,
                             column: 20,
                            },
                           },
                          },
                         ),
                        },
                       ),
                       KeyValue(
                        BindingKeyValue {
                         from: [
                          Raw(
                           PartRaw {
                            content: "acc",
                            span: Span {
                             start: Position {
                              line: 424,
                              column: 22,
                             },
                             end: Position {
                              line: 424,
                              column: 25,
                             },
                            },
                           },
                          ),
                         ],
                         to: Map(
                          Map {
                           recursive: false,
                           bindings: [],
                           span: Span {
                            start: Position {
                             line: 424,
                             column: 28,
                            },
                            end: Position {
                             line: 424,
                             column: 30,
                            },
                           },
                          },
                         ),
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 424,
                        column: 7,
                       },
                       end: Position {
                        line: 424,
                        column: 33,
                       },
                      },
                     },
                    ),
                    FunctionApplication(
                     FunctionApplication {
                      function: PropertyAccess(
                       PropertyAccess {
                        expression: Identifier(
                         Identifier {
                          id: "builtins",
                          span: Span {
                           start: Position {
                            line: 424,
                            column: 35,
                           },
                           end: Position {
                            line: 424,
                            column: 43,
                           },
                          },
                         },
                        ),
                        attribute_path: [
                         Raw(
                          PartRaw {
                           content: "attrNames",
                           span: Span {
                            start: Position {
                             line: 424,
                             column: 44,
                            },
                            end: Position {
                             line: 424,
                             column: 53,
                            },
                           },
                          },
                         ),
                        ],
                        default: None,
                       },
                      ),
                      arguments: [
                       Identifier(
                        Identifier {
                         id: "set",
                         span: Span {
                          start: Position {
                           line: 424,
                           column: 54,
                          },
                          end: Position {
                           line: 424,
                           column: 57,
                          },
                         },
                        },
                       ),
                      ],
                     },
                    ),
                   ],
                  },
                 ),
                 attribute_path: [
                  Raw(
                   PartRaw {
                    content: "dup",
                    span: Span {
                     start: Position {
                      line: 424,
                      column: 60,
                     },
                     end: Position {
                      line: 424,
                      column: 63,
                     },
                    },
                   },
                  ),
                 ],
                 default: None,
                },
               ),
               span: Span {
                start: Position {
                 line: 416,
                 column: 31,
                },
                end: Position {
                 line: 424,
                 column: 63,
                },
               },
              },
             ),
             span: Span {
              start: Position {
               line: 416,
               column: 23,
              },
              end: Position {
               line: 424,
               column: 63,
              },
             },
            },
           ),
           span: Span {
            start: Position {
             line: 416,
             column: 18,
            },
            end: Position {
             line: 424,
             column: 63,
            },
           },
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "uidsAreUnique",
            span: Span {
             start: Position {
              line: 426,
              column: 3,
             },
             end: Position {
              line: 426,
              column: 16,
             },
            },
           },
          ),
         ],
         to: FunctionApplication(
          FunctionApplication {
           function: Identifier(
            Identifier {
             id: "idsAreUnique",
             span: Span {
              start: Position {
               line: 426,
               column: 19,
              },
              end: Position {
               line: 426,
               column: 31,
              },
             },
            },
           ),
           arguments: [
            FunctionApplication(
             FunctionApplication {
              function: Identifier(
               Identifier {
                id: "filterAttrs",
                span: Span {
                 start: Position {
                  line: 426,
                  column: 33,
                 },
                 end: Position {
                  line: 426,
                  column: 44,
                 },
                },
               },
              ),
              arguments: [
               Function(
                Function {
                 head: Simple(
                  FunctionHeadSimple {
                   identifier: "n",
                  },
                 ),
                 body: Function(
                  Function {
                   head: Simple(
                    FunctionHeadSimple {
                     identifier: "u",
                    },
                   ),
                   body: BinaryOperation(
                    BinaryOperation {
                     left: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "u",
                         span: Span {
                          start: Position {
                           line: 426,
                           column: 52,
                          },
                          end: Position {
                           line: 426,
                           column: 53,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "uid",
                          span: Span {
                           start: Position {
                            line: 426,
                            column: 54,
                           },
                           end: Position {
                            line: 426,
                            column: 57,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                     operator: NotEqualTo,
                     right: Identifier(
                      Identifier {
                       id: "null",
                       span: Span {
                        start: Position {
                         line: 426,
                         column: 61,
                        },
                        end: Position {
                         line: 426,
                         column: 65,
                        },
                       },
                      },
                     ),
                    },
                   ),
                   span: Span {
                    start: Position {
                     line: 426,
                     column: 49,
                    },
                    end: Position {
                     line: 426,
                     column: 65,
                    },
                   },
                  },
                 ),
                 span: Span {
                  start: Position {
                   line: 426,
                   column: 46,
                  },
                  end: Position {
                   line: 426,
                   column: 65,
                  },
                 },
                },
               ),
               PropertyAccess(
                PropertyAccess {
                 expression: Identifier(
                  Identifier {
                   id: "cfg",
                   span: Span {
                    start: Position {
                     line: 426,
                     column: 67,
                    },
                    end: Position {
                     line: 426,
                     column: 70,
                    },
                   },
                  },
                 ),
                 attribute_path: [
                  Raw(
                   PartRaw {
                    content: "users",
                    span: Span {
                     start: Position {
                      line: 426,
                      column: 71,
                     },
                     end: Position {
                      line: 426,
                      column: 76,
                     },
                    },
                   },
                  ),
                 ],
                 default: None,
                },
               ),
              ],
             },
            ),
            String(
             String_ {
              parts: [
               Raw(
                PartRaw {
                 content: "uid",
                 span: Span {
                  start: Position {
                   line: 426,
                   column: 79,
                  },
                  end: Position {
                   line: 426,
                   column: 82,
                  },
                 },
                },
               ),
              ],
              span: Span {
               start: Position {
                line: 426,
                column: 78,
               },
               end: Position {
                line: 426,
                column: 83,
               },
              },
             },
            ),
           ],
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "gidsAreUnique",
            span: Span {
             start: Position {
              line: 427,
              column: 3,
             },
             end: Position {
              line: 427,
              column: 16,
             },
            },
           },
          ),
         ],
         to: FunctionApplication(
          FunctionApplication {
           function: Identifier(
            Identifier {
             id: "idsAreUnique",
             span: Span {
              start: Position {
               line: 427,
               column: 19,
              },
              end: Position {
               line: 427,
               column: 31,
              },
             },
            },
           ),
           arguments: [
            FunctionApplication(
             FunctionApplication {
              function: Identifier(
               Identifier {
                id: "filterAttrs",
                span: Span {
                 start: Position {
                  line: 427,
                  column: 33,
                 },
                 end: Position {
                  line: 427,
                  column: 44,
                 },
                },
               },
              ),
              arguments: [
               Function(
                Function {
                 head: Simple(
                  FunctionHeadSimple {
                   identifier: "n",
                  },
                 ),
                 body: Function(
                  Function {
                   head: Simple(
                    FunctionHeadSimple {
                     identifier: "g",
                    },
                   ),
                   body: BinaryOperation(
                    BinaryOperation {
                     left: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "g",
                         span: Span {
                          start: Position {
                           line: 427,
                           column: 52,
                          },
                          end: Position {
                           line: 427,
                           column: 53,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gid",
                          span: Span {
                           start: Position {
                            line: 427,
                            column: 54,
                           },
                           end: Position {
                            line: 427,
                            column: 57,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                     operator: NotEqualTo,
                     right: Identifier(
                      Identifier {
                       id: "null",
                       span: Span {
                        start: Position {
                         line: 427,
                         column: 61,
                        },
                        end: Position {
                         line: 427,
                         column: 65,
                        },
                       },
                      },
                     ),
                    },
                   ),
                   span: Span {
                    start: Position {
                     line: 427,
                     column: 49,
                    },
                    end: Position {
                     line: 427,
                     column: 65,
                    },
                   },
                  },
                 ),
                 span: Span {
                  start: Position {
                   line: 427,
                   column: 46,
                  },
                  end: Position {
                   line: 427,
                   column: 65,
                  },
                 },
                },
               ),
               PropertyAccess(
                PropertyAccess {
                 expression: Identifier(
                  Identifier {
                   id: "cfg",
                   span: Span {
                    start: Position {
                     line: 427,
                     column: 67,
                    },
                    end: Position {
                     line: 427,
                     column: 70,
                    },
                   },
                  },
                 ),
                 attribute_path: [
                  Raw(
                   PartRaw {
                    content: "groups",
                    span: Span {
                     start: Position {
                      line: 427,
                      column: 71,
                     },
                     end: Position {
                      line: 427,
                      column: 77,
                     },
                    },
                   },
                  ),
                 ],
                 default: None,
                },
               ),
              ],
             },
            ),
            String(
             String_ {
              parts: [
               Raw(
                PartRaw {
                 content: "gid",
                 span: Span {
                  start: Position {
                   line: 427,
                   column: 80,
                  },
                  end: Position {
                   line: 427,
                   column: 83,
                  },
                 },
                },
               ),
              ],
              span: Span {
               start: Position {
                line: 427,
                column: 79,
               },
               end: Position {
                line: 427,
                column: 84,
               },
              },
             },
            ),
           ],
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "spec",
            span: Span {
             start: Position {
              line: 429,
              column: 3,
             },
             end: Position {
              line: 429,
              column: 7,
             },
            },
           },
          ),
         ],
         to: FunctionApplication(
          FunctionApplication {
           function: PropertyAccess(
            PropertyAccess {
             expression: Identifier(
              Identifier {
               id: "pkgs",
               span: Span {
                start: Position {
                 line: 429,
                 column: 10,
                },
                end: Position {
                 line: 429,
                 column: 14,
                },
               },
              },
             ),
             attribute_path: [
              Raw(
               PartRaw {
                content: "writeText",
                span: Span {
                 start: Position {
                  line: 429,
                  column: 15,
                 },
                 end: Position {
                  line: 429,
                  column: 24,
                 },
                },
               },
              ),
             ],
             default: None,
            },
           ),
           arguments: [
            String(
             String_ {
              parts: [
               Raw(
                PartRaw {
                 content: "users-groups.json",
                 span: Span {
                  start: Position {
                   line: 429,
                   column: 26,
                  },
                  end: Position {
                   line: 429,
                   column: 43,
                  },
                 },
                },
               ),
              ],
              span: Span {
               start: Position {
                line: 429,
                column: 25,
               },
               end: Position {
                line: 429,
                column: 44,
               },
              },
             },
            ),
            FunctionApplication(
             FunctionApplication {
              function: PropertyAccess(
               PropertyAccess {
                expression: Identifier(
                 Identifier {
                  id: "builtins",
                  span: Span {
                   start: Position {
                    line: 429,
                    column: 46,
                   },
                   end: Position {
                    line: 429,
                    column: 54,
                   },
                  },
                 },
                ),
                attribute_path: [
                 Raw(
                  PartRaw {
                   content: "toJSON",
                   span: Span {
                    start: Position {
                     line: 429,
                     column: 55,
                    },
                    end: Position {
                     line: 429,
                     column: 61,
                    },
                   },
                  },
                 ),
                ],
                default: None,
               },
              ),
              arguments: [
               Map(
                Map {
                 recursive: false,
                 bindings: [
                  Inherit(
                   BindingInherit {
                    from: Some(
                     Identifier(
                      Identifier {
                       id: "cfg",
                       span: Span {
                        start: Position {
                         line: 430,
                         column: 14,
                        },
                        end: Position {
                         line: 430,
                         column: 17,
                        },
                       },
                      },
                     ),
                    ),
                    attributes: [
                     Raw(
                      PartRaw {
                       content: "mutableUsers",
                       span: Span {
                        start: Position {
                         line: 430,
                         column: 19,
                        },
                        end: Position {
                         line: 430,
                         column: 31,
                        },
                       },
                      },
                     ),
                    ],
                    span: Span {
                     start: Position {
                      line: 429,
                      column: 63,
                     },
                     end: Position {
                      line: 430,
                      column: 32,
                     },
                    },
                   },
                  ),
                  KeyValue(
                   BindingKeyValue {
                    from: [
                     Raw(
                      PartRaw {
                       content: "users",
                       span: Span {
                        start: Position {
                         line: 431,
                         column: 5,
                        },
                        end: Position {
                         line: 431,
                         column: 10,
                        },
                       },
                      },
                     ),
                    ],
                    to: FunctionApplication(
                     FunctionApplication {
                      function: Identifier(
                       Identifier {
                        id: "mapAttrsToList",
                        span: Span {
                         start: Position {
                          line: 431,
                          column: 13,
                         },
                         end: Position {
                          line: 431,
                          column: 27,
                         },
                        },
                       },
                      ),
                      arguments: [
                       Function(
                        Function {
                         head: Simple(
                          FunctionHeadSimple {
                           identifier: "_",
                          },
                         ),
                         body: Function(
                          Function {
                           head: Simple(
                            FunctionHeadSimple {
                             identifier: "u",
                            },
                           ),
                           body: Map(
                            Map {
                             recursive: false,
                             bindings: [
                              Inherit(
                               BindingInherit {
                                from: Some(
                                 Identifier(
                                  Identifier {
                                   id: "u",
                                   span: Span {
                                    start: Position {
                                     line: 432,
                                     column: 18,
                                    },
                                    end: Position {
                                     line: 432,
                                     column: 19,
                                    },
                                   },
                                  },
                                 ),
                                ),
                                attributes: [
                                 Raw(
                                  PartRaw {
                                   content: "name",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 11,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 15,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "uid",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 16,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 19,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "group",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 20,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 25,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "description",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 26,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 37,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "home",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 38,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 42,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "homeMode",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 43,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 51,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "createHome",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 52,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 62,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "isSystemUser",
                                   span: Span {
                                    start: Position {
                                     line: 433,
                                     column: 63,
                                    },
                                    end: Position {
                                     line: 433,
                                     column: 75,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "password",
                                   span: Span {
                                    start: Position {
                                     line: 434,
                                     column: 11,
                                    },
                                    end: Position {
                                     line: 434,
                                     column: 19,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "passwordFile",
                                   span: Span {
                                    start: Position {
                                     line: 434,
                                     column: 20,
                                    },
                                    end: Position {
                                     line: 434,
                                     column: 32,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "hashedPassword",
                                   span: Span {
                                    start: Position {
                                     line: 434,
                                     column: 33,
                                    },
                                    end: Position {
                                     line: 434,
                                     column: 47,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "autoSubUidGidRange",
                                   span: Span {
                                    start: Position {
                                     line: 435,
                                     column: 11,
                                    },
                                    end: Position {
                                     line: 435,
                                     column: 29,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "subUidRanges",
                                   span: Span {
                                    start: Position {
                                     line: 435,
                                     column: 30,
                                    },
                                    end: Position {
                                     line: 435,
                                     column: 42,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "subGidRanges",
                                   span: Span {
                                    start: Position {
                                     line: 435,
                                     column: 43,
                                    },
                                    end: Position {
                                     line: 435,
                                     column: 55,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "initialPassword",
                                   span: Span {
                                    start: Position {
                                     line: 436,
                                     column: 11,
                                    },
                                    end: Position {
                                     line: 436,
                                     column: 26,
                                    },
                                   },
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "initialHashedPassword",
                                   span: Span {
                                    start: Position {
                                     line: 436,
                                     column: 27,
                                    },
                                    end: Position {
                                     line: 436,
                                     column: 48,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 432,
                                  column: 8,
                                 },
                                 end: Position {
                                  line: 436,
                                  column: 49,
                                 },
                                },
                               },
                              ),
                              KeyValue(
                               BindingKeyValue {
                                from: [
                                 Raw(
                                  PartRaw {
                                   content: "shell",
                                   span: Span {
                                    start: Position {
                                     line: 437,
                                     column: 9,
                                    },
                                    end: Position {
                                     line: 437,
                                     column: 14,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                to: FunctionApplication(
                                 FunctionApplication {
                                  function: PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "utils",
                                      span: Span {
                                       start: Position {
                                        line: 437,
                                        column: 17,
                                       },
                                       end: Position {
                                        line: 437,
                                        column: 22,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "toShellPath",
                                       span: Span {
                                        start: Position {
                                         line: 437,
                                         column: 23,
                                        },
                                        end: Position {
                                         line: 437,
                                         column: 34,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                  arguments: [
                                   PropertyAccess(
                                    PropertyAccess {
                                     expression: Identifier(
                                      Identifier {
                                       id: "u",
                                       span: Span {
                                        start: Position {
                                         line: 437,
                                         column: 35,
                                        },
                                        end: Position {
                                         line: 437,
                                         column: 36,
                                        },
                                       },
                                      },
                                     ),
                                     attribute_path: [
                                      Raw(
                                       PartRaw {
                                        content: "shell",
                                        span: Span {
                                         start: Position {
                                          line: 437,
                                          column: 37,
                                         },
                                         end: Position {
                                          line: 437,
                                          column: 42,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     default: None,
                                    },
                                   ),
                                  ],
                                 },
                                ),
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 432,
                               column: 7,
                              },
                              end: Position {
                               line: 438,
                               column: 8,
                              },
                             },
                            },
                           ),
                           span: Span {
                            start: Position {
                             line: 431,
                             column: 32,
                            },
                            end: Position {
                             line: 438,
                             column: 8,
                            },
                           },
                          },
                         ),
                         span: Span {
                          start: Position {
                           line: 431,
                           column: 29,
                          },
                          end: Position {
                           line: 438,
                           column: 8,
                          },
                         },
                        },
                       ),
                       PropertyAccess(
                        PropertyAccess {
                         expression: Identifier(
                          Identifier {
                           id: "cfg",
                           span: Span {
                            start: Position {
                             line: 438,
                             column: 10,
                            },
                            end: Position {
                             line: 438,
                             column: 13,
                            },
                           },
                          },
                         ),
                         attribute_path: [
                          Raw(
                           PartRaw {
                            content: "users",
                            span: Span {
                             start: Position {
                              line: 438,
                              column: 14,
                             },
                             end: Position {
                              line: 438,
                              column: 19,
                             },
                            },
                           },
                          ),
                         ],
                         default: None,
                        },
                       ),
                      ],
                     },
                    ),
                   },
                  ),
                  KeyValue(
                   BindingKeyValue {
                    from: [
                     Raw(
                      PartRaw {
                       content: "groups",
                       span: Span {
                        start: Position {
                         line: 439,
                         column: 5,
                        },
                        end: Position {
                         line: 439,
                         column: 11,
                        },
                       },
                      },
                     ),
                    ],
                    to: FunctionApplication(
                     FunctionApplication {
                      function: Identifier(
                       Identifier {
                        id: "attrValues",
                        span: Span {
                         start: Position {
                          line: 439,
                          column: 14,
                         },
                         end: Position {
                          line: 439,
                          column: 24,
                         },
                        },
                       },
                      ),
                      arguments: [
                       PropertyAccess(
                        PropertyAccess {
                         expression: Identifier(
                          Identifier {
                           id: "cfg",
                           span: Span {
                            start: Position {
                             line: 439,
                             column: 25,
                            },
                            end: Position {
                             line: 439,
                             column: 28,
                            },
                           },
                          },
                         ),
                         attribute_path: [
                          Raw(
                           PartRaw {
                            content: "groups",
                            span: Span {
                             start: Position {
                              line: 439,
                              column: 29,
                             },
                             end: Position {
                              line: 439,
                              column: 35,
                             },
                            },
                           },
                          ),
                         ],
                         default: None,
                        },
                       ),
                      ],
                     },
                    ),
                   },
                  ),
                 ],
                 span: Span {
                  start: Position {
                   line: 429,
                   column: 62,
                  },
                  end: Position {
                   line: 440,
                   column: 4,
                  },
                 },
                },
               ),
              ],
             },
            ),
           ],
          },
         ),
        },
       ),
       KeyValue(
        BindingKeyValue {
         from: [
          Raw(
           PartRaw {
            content: "systemShells",
            span: Span {
             start: Position {
              line: 442,
              column: 3,
             },
             end: Position {
              line: 442,
              column: 15,
             },
            },
           },
          ),
         ],
         to: LetIn(
          LetIn {
           bindings: [
            KeyValue(
             BindingKeyValue {
              from: [
               Raw(
                PartRaw {
                 content: "shells",
                 span: Span {
                  start: Position {
                   line: 444,
                   column: 7,
                  },
                  end: Position {
                   line: 444,
                   column: 13,
                  },
                 },
                },
               ),
              ],
              to: FunctionApplication(
               FunctionApplication {
                function: Identifier(
                 Identifier {
                  id: "mapAttrsToList",
                  span: Span {
                   start: Position {
                    line: 444,
                    column: 16,
                   },
                   end: Position {
                    line: 444,
                    column: 30,
                   },
                  },
                 },
                ),
                arguments: [
                 Function(
                  Function {
                   head: Simple(
                    FunctionHeadSimple {
                     identifier: "_",
                    },
                   ),
                   body: Function(
                    Function {
                     head: Simple(
                      FunctionHeadSimple {
                       identifier: "u",
                      },
                     ),
                     body: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "u",
                         span: Span {
                          start: Position {
                           line: 444,
                           column: 38,
                          },
                          end: Position {
                           line: 444,
                           column: 39,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "shell",
                          span: Span {
                           start: Position {
                            line: 444,
                            column: 40,
                           },
                           end: Position {
                            line: 444,
                            column: 45,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                     span: Span {
                      start: Position {
                       line: 444,
                       column: 35,
                      },
                      end: Position {
                       line: 444,
                       column: 45,
                      },
                     },
                    },
                   ),
                   span: Span {
                    start: Position {
                     line: 444,
                     column: 32,
                    },
                    end: Position {
                     line: 444,
                     column: 45,
                    },
                   },
                  },
                 ),
                 PropertyAccess(
                  PropertyAccess {
                   expression: Identifier(
                    Identifier {
                     id: "cfg",
                     span: Span {
                      start: Position {
                       line: 444,
                       column: 47,
                      },
                      end: Position {
                       line: 444,
                       column: 50,
                      },
                     },
                    },
                   ),
                   attribute_path: [
                    Raw(
                     PartRaw {
                      content: "users",
                      span: Span {
                       start: Position {
                        line: 444,
                        column: 51,
                       },
                       end: Position {
                        line: 444,
                        column: 56,
                       },
                      },
                     },
                    ),
                   ],
                   default: None,
                  },
                 ),
                ],
               },
              ),
             },
            ),
           ],
           target: FunctionApplication(
            FunctionApplication {
             function: Identifier(
              Identifier {
               id: "filter",
               span: Span {
                start: Position {
                 line: 446,
                 column: 7,
                },
                end: Position {
                 line: 446,
                 column: 13,
                },
               },
              },
             ),
             arguments: [
              PropertyAccess(
               PropertyAccess {
                expression: Identifier(
                 Identifier {
                  id: "types",
                  span: Span {
                   start: Position {
                    line: 446,
                    column: 14,
                   },
                   end: Position {
                    line: 446,
                    column: 19,
                   },
                  },
                 },
                ),
                attribute_path: [
                 Raw(
                  PartRaw {
                   content: "shellPackage",
                   span: Span {
                    start: Position {
                     line: 446,
                     column: 20,
                    },
                    end: Position {
                     line: 446,
                     column: 32,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "check",
                   span: Span {
                    start: Position {
                     line: 446,
                     column: 33,
                    },
                    end: Position {
                     line: 446,
                     column: 38,
                    },
                   },
                  },
                 ),
                ],
                default: None,
               },
              ),
              Identifier(
               Identifier {
                id: "shells",
                span: Span {
                 start: Position {
                  line: 446,
                  column: 39,
                 },
                 end: Position {
                  line: 446,
                  column: 45,
                 },
                },
               },
              ),
             ],
            },
           ),
           span: Span {
            start: Position {
             line: 443,
             column: 5,
            },
            end: Position {
             line: 446,
             column: 45,
            },
           },
          },
         ),
        },
       ),
      ],
      target: Map(
       Map {
        recursive: false,
        bindings: [
         KeyValue(
          BindingKeyValue {
           from: [
            Raw(
             PartRaw {
              content: "imports",
              span: Span {
               start: Position {
                line: 449,
                column: 3,
               },
               end: Position {
                line: 449,
                column: 10,
               },
              },
             },
            ),
           ],
           to: List(
            List {
             elements: [
              FunctionApplication(
               FunctionApplication {
                function: Identifier(
                 Identifier {
                  id: "mkAliasOptionModule",
                  span: Span {
                   start: Position {
                    line: 450,
                    column: 6,
                   },
                   end: Position {
                    line: 450,
                    column: 25,
                   },
                  },
                 },
                ),
                arguments: [
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 450,
                           column: 29,
                          },
                          end: Position {
                           line: 450,
                           column: 34,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 450,
                        column: 28,
                       },
                       end: Position {
                        line: 450,
                        column: 35,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "extraUsers",
                         span: Span {
                          start: Position {
                           line: 450,
                           column: 37,
                          },
                          end: Position {
                           line: 450,
                           column: 47,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 450,
                        column: 36,
                       },
                       end: Position {
                        line: 450,
                        column: 48,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 450,
                     column: 26,
                    },
                    end: Position {
                     line: 450,
                     column: 50,
                    },
                   },
                  },
                 ),
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 450,
                           column: 54,
                          },
                          end: Position {
                           line: 450,
                           column: 59,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 450,
                        column: 53,
                       },
                       end: Position {
                        line: 450,
                        column: 60,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 450,
                           column: 62,
                          },
                          end: Position {
                           line: 450,
                           column: 67,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 450,
                        column: 61,
                       },
                       end: Position {
                        line: 450,
                        column: 68,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 450,
                     column: 51,
                    },
                    end: Position {
                     line: 450,
                     column: 70,
                    },
                   },
                  },
                 ),
                ],
               },
              ),
              FunctionApplication(
               FunctionApplication {
                function: Identifier(
                 Identifier {
                  id: "mkAliasOptionModule",
                  span: Span {
                   start: Position {
                    line: 451,
                    column: 6,
                   },
                   end: Position {
                    line: 451,
                    column: 25,
                   },
                  },
                 },
                ),
                arguments: [
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 451,
                           column: 29,
                          },
                          end: Position {
                           line: 451,
                           column: 34,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 451,
                        column: 28,
                       },
                       end: Position {
                        line: 451,
                        column: 35,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "extraGroups",
                         span: Span {
                          start: Position {
                           line: 451,
                           column: 37,
                          },
                          end: Position {
                           line: 451,
                           column: 48,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 451,
                        column: 36,
                       },
                       end: Position {
                        line: 451,
                        column: 49,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 451,
                     column: 26,
                    },
                    end: Position {
                     line: 451,
                     column: 51,
                    },
                   },
                  },
                 ),
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 451,
                           column: 55,
                          },
                          end: Position {
                           line: 451,
                           column: 60,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 451,
                        column: 54,
                       },
                       end: Position {
                        line: 451,
                        column: 61,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "groups",
                         span: Span {
                          start: Position {
                           line: 451,
                           column: 63,
                          },
                          end: Position {
                           line: 451,
                           column: 69,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 451,
                        column: 62,
                       },
                       end: Position {
                        line: 451,
                        column: 70,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 451,
                     column: 52,
                    },
                    end: Position {
                     line: 451,
                     column: 72,
                    },
                   },
                  },
                 ),
                ],
               },
              ),
              FunctionApplication(
               FunctionApplication {
                function: Identifier(
                 Identifier {
                  id: "mkRenamedOptionModule",
                  span: Span {
                   start: Position {
                    line: 452,
                    column: 6,
                   },
                   end: Position {
                    line: 452,
                    column: 27,
                   },
                  },
                 },
                ),
                arguments: [
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "security",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 30,
                          },
                          end: Position {
                           line: 452,
                           column: 38,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 29,
                       },
                       end: Position {
                        line: 452,
                        column: 39,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "initialRootPassword",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 41,
                          },
                          end: Position {
                           line: 452,
                           column: 60,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 40,
                       },
                       end: Position {
                        line: 452,
                        column: 61,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 452,
                     column: 28,
                    },
                    end: Position {
                     line: 452,
                     column: 62,
                    },
                   },
                  },
                 ),
                 List(
                  List {
                   elements: [
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 65,
                          },
                          end: Position {
                           line: 452,
                           column: 70,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 64,
                       },
                       end: Position {
                        line: 452,
                        column: 71,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "users",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 73,
                          },
                          end: Position {
                           line: 452,
                           column: 78,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 72,
                       },
                       end: Position {
                        line: 452,
                        column: 79,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "root",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 81,
                          },
                          end: Position {
                           line: 452,
                           column: 85,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 80,
                       },
                       end: Position {
                        line: 452,
                        column: 86,
                       },
                      },
                     },
                    ),
                    String(
                     String_ {
                      parts: [
                       Raw(
                        PartRaw {
                         content: "initialHashedPassword",
                         span: Span {
                          start: Position {
                           line: 452,
                           column: 88,
                          },
                          end: Position {
                           line: 452,
                           column: 109,
                          },
                         },
                        },
                       ),
                      ],
                      span: Span {
                       start: Position {
                        line: 452,
                        column: 87,
                       },
                       end: Position {
                        line: 452,
                        column: 110,
                       },
                      },
                     },
                    ),
                   ],
                   span: Span {
                    start: Position {
                     line: 452,
                     column: 63,
                    },
                    end: Position {
                     line: 452,
                     column: 111,
                    },
                   },
                  },
                 ),
                ],
               },
              ),
             ],
             span: Span {
              start: Position {
               line: 449,
               column: 13,
              },
              end: Position {
               line: 453,
               column: 4,
              },
             },
            },
           ),
          },
         ),
         KeyValue(
          BindingKeyValue {
           from: [
            Raw(
             PartRaw {
              content: "options",
              span: Span {
               start: Position {
                line: 456,
                column: 3,
               },
               end: Position {
                line: 456,
                column: 10,
               },
              },
             },
            ),
           ],
           to: Map(
            Map {
             recursive: false,
             bindings: [
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 458,
                     column: 5,
                    },
                    end: Position {
                     line: 458,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "mutableUsers",
                   span: Span {
                    start: Position {
                     line: 458,
                     column: 11,
                    },
                    end: Position {
                     line: 458,
                     column: 23,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkOption",
                    span: Span {
                     start: Position {
                      line: 458,
                      column: 26,
                     },
                     end: Position {
                      line: 458,
                      column: 34,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Map(
                    Map {
                     recursive: false,
                     bindings: [
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "type",
                           span: Span {
                            start: Position {
                             line: 459,
                             column: 7,
                            },
                            end: Position {
                             line: 459,
                             column: 11,
                            },
                           },
                          },
                         ),
                        ],
                        to: PropertyAccess(
                         PropertyAccess {
                          expression: Identifier(
                           Identifier {
                            id: "types",
                            span: Span {
                             start: Position {
                              line: 459,
                              column: 14,
                             },
                             end: Position {
                              line: 459,
                              column: 19,
                             },
                            },
                           },
                          ),
                          attribute_path: [
                           Raw(
                            PartRaw {
                             content: "bool",
                             span: Span {
                              start: Position {
                               line: 459,
                               column: 20,
                              },
                              end: Position {
                               line: 459,
                               column: 24,
                              },
                             },
                            },
                           ),
                          ],
                          default: None,
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "default",
                           span: Span {
                            start: Position {
                             line: 460,
                             column: 7,
                            },
                            end: Position {
                             line: 460,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Identifier(
                         Identifier {
                          id: "true",
                          span: Span {
                           start: Position {
                            line: 460,
                            column: 17,
                           },
                           end: Position {
                            line: 460,
                            column: 21,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "description",
                           span: Span {
                            start: Position {
                             line: 461,
                             column: 7,
                            },
                            end: Position {
                             line: 461,
                             column: 18,
                            },
                           },
                          },
                         ),
                        ],
                        to: FunctionApplication(
                         FunctionApplication {
                          function: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "lib",
                              span: Span {
                               start: Position {
                                line: 461,
                                column: 21,
                               },
                               end: Position {
                                line: 461,
                                column: 24,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "mdDoc",
                               span: Span {
                                start: Position {
                                 line: 461,
                                 column: 25,
                                },
                                end: Position {
                                 line: 461,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                          arguments: [
                           IndentedString(
                            IndentedString {
                             parts: [
                              Raw(
                               PartRaw {
                                content: "If set to `true`, you are free to add new users and groups to the system\nwith the ordinary `useradd` and\n`groupadd` commands. On system activation, the\nexisting contents of the `/etc/passwd` and\n`/etc/group` files will be merged with the\ncontents generated from the `users.users` and\n`users.groups` options.\nThe initial password for a user will be set\naccording to `users.users`, but existing passwords\nwill not be changed.\n\n::: {.warning}\nIf set to `false`, the contents of the user and\ngroup files will simply be replaced on system activation. This also\nholds for the user passwords; all changed\npasswords will be reset according to the\n`users.users` configuration on activation.\n:::\n",
                                span: Span {
                                 start: Position {
                                  line: 462,
                                  column: 1,
                                 },
                                 end: Position {
                                  line: 480,
                                  column: 7,
                                 },
                                },
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 461,
                               column: 31,
                              },
                              end: Position {
                               line: 480,
                               column: 9,
                              },
                             },
                            },
                           ),
                          ],
                         },
                        ),
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 458,
                       column: 35,
                      },
                      end: Position {
                       line: 481,
                       column: 6,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 483,
                     column: 5,
                    },
                    end: Position {
                     line: 483,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "enforceIdUniqueness",
                   span: Span {
                    start: Position {
                     line: 483,
                     column: 11,
                    },
                    end: Position {
                     line: 483,
                     column: 30,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkOption",
                    span: Span {
                     start: Position {
                      line: 483,
                      column: 33,
                     },
                     end: Position {
                      line: 483,
                      column: 41,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Map(
                    Map {
                     recursive: false,
                     bindings: [
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "type",
                           span: Span {
                            start: Position {
                             line: 484,
                             column: 7,
                            },
                            end: Position {
                             line: 484,
                             column: 11,
                            },
                           },
                          },
                         ),
                        ],
                        to: PropertyAccess(
                         PropertyAccess {
                          expression: Identifier(
                           Identifier {
                            id: "types",
                            span: Span {
                             start: Position {
                              line: 484,
                              column: 14,
                             },
                             end: Position {
                              line: 484,
                              column: 19,
                             },
                            },
                           },
                          ),
                          attribute_path: [
                           Raw(
                            PartRaw {
                             content: "bool",
                             span: Span {
                              start: Position {
                               line: 484,
                               column: 20,
                              },
                              end: Position {
                               line: 484,
                               column: 24,
                              },
                             },
                            },
                           ),
                          ],
                          default: None,
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "default",
                           span: Span {
                            start: Position {
                             line: 485,
                             column: 7,
                            },
                            end: Position {
                             line: 485,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Identifier(
                         Identifier {
                          id: "true",
                          span: Span {
                           start: Position {
                            line: 485,
                            column: 17,
                           },
                           end: Position {
                            line: 485,
                            column: 21,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "description",
                           span: Span {
                            start: Position {
                             line: 486,
                             column: 7,
                            },
                            end: Position {
                             line: 486,
                             column: 18,
                            },
                           },
                          },
                         ),
                        ],
                        to: FunctionApplication(
                         FunctionApplication {
                          function: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "lib",
                              span: Span {
                               start: Position {
                                line: 486,
                                column: 21,
                               },
                               end: Position {
                                line: 486,
                                column: 24,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "mdDoc",
                               span: Span {
                                start: Position {
                                 line: 486,
                                 column: 25,
                                },
                                end: Position {
                                 line: 486,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                          arguments: [
                           IndentedString(
                            IndentedString {
                             parts: [
                              Raw(
                               PartRaw {
                                content: "Whether to require that no two users/groups share the same uid/gid.\n",
                                span: Span {
                                 start: Position {
                                  line: 487,
                                  column: 1,
                                 },
                                 end: Position {
                                  line: 488,
                                  column: 7,
                                 },
                                },
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 486,
                               column: 31,
                              },
                              end: Position {
                               line: 488,
                               column: 9,
                              },
                             },
                            },
                           ),
                          ],
                         },
                        ),
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 483,
                       column: 42,
                      },
                      end: Position {
                       line: 489,
                       column: 6,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 491,
                     column: 5,
                    },
                    end: Position {
                     line: 491,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 491,
                     column: 11,
                    },
                    end: Position {
                     line: 491,
                     column: 16,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkOption",
                    span: Span {
                     start: Position {
                      line: 491,
                      column: 19,
                     },
                     end: Position {
                      line: 491,
                      column: 27,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Map(
                    Map {
                     recursive: false,
                     bindings: [
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "default",
                           span: Span {
                            start: Position {
                             line: 492,
                             column: 7,
                            },
                            end: Position {
                             line: 492,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Map(
                         Map {
                          recursive: false,
                          bindings: [],
                          span: Span {
                           start: Position {
                            line: 492,
                            column: 17,
                           },
                           end: Position {
                            line: 492,
                            column: 19,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "type",
                           span: Span {
                            start: Position {
                             line: 493,
                             column: 7,
                            },
                            end: Position {
                             line: 493,
                             column: 11,
                            },
                           },
                          },
                         ),
                        ],
                        to: With(
                         With {
                          expression: Identifier(
                           Identifier {
                            id: "types",
                            span: Span {
                             start: Position {
                              line: 493,
                              column: 19,
                             },
                             end: Position {
                              line: 493,
                              column: 24,
                             },
                            },
                           },
                          ),
                          target: FunctionApplication(
                           FunctionApplication {
                            function: Identifier(
                             Identifier {
                              id: "attrsOf",
                              span: Span {
                               start: Position {
                                line: 493,
                                column: 26,
                               },
                               end: Position {
                                line: 493,
                                column: 33,
                               },
                              },
                             },
                            ),
                            arguments: [
                             FunctionApplication(
                              FunctionApplication {
                               function: Identifier(
                                Identifier {
                                 id: "submodule",
                                 span: Span {
                                  start: Position {
                                   line: 493,
                                   column: 35,
                                  },
                                  end: Position {
                                   line: 493,
                                   column: 44,
                                  },
                                 },
                                },
                               ),
                               arguments: [
                                Identifier(
                                 Identifier {
                                  id: "userOpts",
                                  span: Span {
                                   start: Position {
                                    line: 493,
                                    column: 45,
                                   },
                                   end: Position {
                                    line: 493,
                                    column: 53,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            ],
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 493,
                            column: 14,
                           },
                           end: Position {
                            line: 493,
                            column: 54,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "example",
                           span: Span {
                            start: Position {
                             line: 494,
                             column: 7,
                            },
                            end: Position {
                             line: 494,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "alice",
                                span: Span {
                                 start: Position {
                                  line: 495,
                                  column: 9,
                                 },
                                 end: Position {
                                  line: 495,
                                  column: 14,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Map(
                              Map {
                               recursive: false,
                               bindings: [
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "uid",
                                     span: Span {
                                      start: Position {
                                       line: 496,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 496,
                                       column: 14,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: Integer(
                                   Integer {
                                    value: "1234",
                                    span: Span {
                                     start: Position {
                                      line: 496,
                                      column: 17,
                                     },
                                     end: Position {
                                      line: 496,
                                      column: 21,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "description",
                                     span: Span {
                                      start: Position {
                                       line: 497,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 497,
                                       column: 22,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: String(
                                   String_ {
                                    parts: [
                                     Raw(
                                      PartRaw {
                                       content: "Alice Q. User",
                                       span: Span {
                                        start: Position {
                                         line: 497,
                                         column: 26,
                                        },
                                        end: Position {
                                         line: 497,
                                         column: 39,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 497,
                                      column: 25,
                                     },
                                     end: Position {
                                      line: 497,
                                      column: 40,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "home",
                                     span: Span {
                                      start: Position {
                                       line: 498,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 498,
                                       column: 15,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: String(
                                   String_ {
                                    parts: [
                                     Raw(
                                      PartRaw {
                                       content: "/home/alice",
                                       span: Span {
                                        start: Position {
                                         line: 498,
                                         column: 19,
                                        },
                                        end: Position {
                                         line: 498,
                                         column: 30,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 498,
                                      column: 18,
                                     },
                                     end: Position {
                                      line: 498,
                                      column: 31,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "createHome",
                                     span: Span {
                                      start: Position {
                                       line: 499,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 499,
                                       column: 21,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: Identifier(
                                   Identifier {
                                    id: "true",
                                    span: Span {
                                     start: Position {
                                      line: 499,
                                      column: 24,
                                     },
                                     end: Position {
                                      line: 499,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "group",
                                     span: Span {
                                      start: Position {
                                       line: 500,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 500,
                                       column: 16,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: String(
                                   String_ {
                                    parts: [
                                     Raw(
                                      PartRaw {
                                       content: "users",
                                       span: Span {
                                        start: Position {
                                         line: 500,
                                         column: 20,
                                        },
                                        end: Position {
                                         line: 500,
                                         column: 25,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 500,
                                      column: 19,
                                     },
                                     end: Position {
                                      line: 500,
                                      column: 26,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "extraGroups",
                                     span: Span {
                                      start: Position {
                                       line: 501,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 501,
                                       column: 22,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: List(
                                   List {
                                    elements: [
                                     String(
                                      String_ {
                                       parts: [
                                        Raw(
                                         PartRaw {
                                          content: "wheel",
                                          span: Span {
                                           start: Position {
                                            line: 501,
                                            column: 27,
                                           },
                                           end: Position {
                                            line: 501,
                                            column: 32,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       span: Span {
                                        start: Position {
                                         line: 501,
                                         column: 26,
                                        },
                                        end: Position {
                                         line: 501,
                                         column: 33,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 501,
                                      column: 25,
                                     },
                                     end: Position {
                                      line: 501,
                                      column: 34,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                                KeyValue(
                                 BindingKeyValue {
                                  from: [
                                   Raw(
                                    PartRaw {
                                     content: "shell",
                                     span: Span {
                                      start: Position {
                                       line: 502,
                                       column: 11,
                                      },
                                      end: Position {
                                       line: 502,
                                       column: 16,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  to: String(
                                   String_ {
                                    parts: [
                                     Raw(
                                      PartRaw {
                                       content: "/bin/sh",
                                       span: Span {
                                        start: Position {
                                         line: 502,
                                         column: 20,
                                        },
                                        end: Position {
                                         line: 502,
                                         column: 27,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 502,
                                      column: 19,
                                     },
                                     end: Position {
                                      line: 502,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 495,
                                 column: 17,
                                },
                                end: Position {
                                 line: 503,
                                 column: 10,
                                },
                               },
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 494,
                            column: 17,
                           },
                           end: Position {
                            line: 504,
                            column: 8,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "description",
                           span: Span {
                            start: Position {
                             line: 505,
                             column: 7,
                            },
                            end: Position {
                             line: 505,
                             column: 18,
                            },
                           },
                          },
                         ),
                        ],
                        to: FunctionApplication(
                         FunctionApplication {
                          function: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "lib",
                              span: Span {
                               start: Position {
                                line: 505,
                                column: 21,
                               },
                               end: Position {
                                line: 505,
                                column: 24,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "mdDoc",
                               span: Span {
                                start: Position {
                                 line: 505,
                                 column: 25,
                                },
                                end: Position {
                                 line: 505,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                          arguments: [
                           IndentedString(
                            IndentedString {
                             parts: [
                              Raw(
                               PartRaw {
                                content: "Additional user accounts to be created automatically by the system.\nThis can also be used to set options for root.\n",
                                span: Span {
                                 start: Position {
                                  line: 506,
                                  column: 1,
                                 },
                                 end: Position {
                                  line: 508,
                                  column: 7,
                                 },
                                },
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 505,
                               column: 31,
                              },
                              end: Position {
                               line: 508,
                               column: 9,
                              },
                             },
                            },
                           ),
                          ],
                         },
                        ),
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 491,
                       column: 28,
                      },
                      end: Position {
                       line: 509,
                       column: 6,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 511,
                     column: 5,
                    },
                    end: Position {
                     line: 511,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "groups",
                   span: Span {
                    start: Position {
                     line: 511,
                     column: 11,
                    },
                    end: Position {
                     line: 511,
                     column: 17,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkOption",
                    span: Span {
                     start: Position {
                      line: 511,
                      column: 20,
                     },
                     end: Position {
                      line: 511,
                      column: 28,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Map(
                    Map {
                     recursive: false,
                     bindings: [
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "default",
                           span: Span {
                            start: Position {
                             line: 512,
                             column: 7,
                            },
                            end: Position {
                             line: 512,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Map(
                         Map {
                          recursive: false,
                          bindings: [],
                          span: Span {
                           start: Position {
                            line: 512,
                            column: 17,
                           },
                           end: Position {
                            line: 512,
                            column: 19,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "example",
                           span: Span {
                            start: Position {
                             line: 513,
                             column: 7,
                            },
                            end: Position {
                             line: 513,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Map(
                         Map {
                          recursive: false,
                          bindings: [
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "students",
                                span: Span {
                                 start: Position {
                                  line: 514,
                                  column: 11,
                                 },
                                 end: Position {
                                  line: 514,
                                  column: 19,
                                 },
                                },
                               },
                              ),
                              Raw(
                               PartRaw {
                                content: "gid",
                                span: Span {
                                 start: Position {
                                  line: 514,
                                  column: 20,
                                 },
                                 end: Position {
                                  line: 514,
                                  column: 23,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Integer(
                              Integer {
                               value: "1001",
                               span: Span {
                                start: Position {
                                 line: 514,
                                 column: 26,
                                },
                                end: Position {
                                 line: 514,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            },
                           ),
                           KeyValue(
                            BindingKeyValue {
                             from: [
                              Raw(
                               PartRaw {
                                content: "hackers",
                                span: Span {
                                 start: Position {
                                  line: 515,
                                  column: 11,
                                 },
                                 end: Position {
                                  line: 515,
                                  column: 18,
                                 },
                                },
                               },
                              ),
                             ],
                             to: Map(
                              Map {
                               recursive: false,
                               bindings: [],
                               span: Span {
                                start: Position {
                                 line: 515,
                                 column: 21,
                                },
                                end: Position {
                                 line: 515,
                                 column: 24,
                                },
                               },
                              },
                             ),
                            },
                           ),
                          ],
                          span: Span {
                           start: Position {
                            line: 514,
                            column: 9,
                           },
                           end: Position {
                            line: 516,
                            column: 10,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "type",
                           span: Span {
                            start: Position {
                             line: 517,
                             column: 7,
                            },
                            end: Position {
                             line: 517,
                             column: 11,
                            },
                           },
                          },
                         ),
                        ],
                        to: With(
                         With {
                          expression: Identifier(
                           Identifier {
                            id: "types",
                            span: Span {
                             start: Position {
                              line: 517,
                              column: 19,
                             },
                             end: Position {
                              line: 517,
                              column: 24,
                             },
                            },
                           },
                          ),
                          target: FunctionApplication(
                           FunctionApplication {
                            function: Identifier(
                             Identifier {
                              id: "attrsOf",
                              span: Span {
                               start: Position {
                                line: 517,
                                column: 26,
                               },
                               end: Position {
                                line: 517,
                                column: 33,
                               },
                              },
                             },
                            ),
                            arguments: [
                             FunctionApplication(
                              FunctionApplication {
                               function: Identifier(
                                Identifier {
                                 id: "submodule",
                                 span: Span {
                                  start: Position {
                                   line: 517,
                                   column: 35,
                                  },
                                  end: Position {
                                   line: 517,
                                   column: 44,
                                  },
                                 },
                                },
                               ),
                               arguments: [
                                Identifier(
                                 Identifier {
                                  id: "groupOpts",
                                  span: Span {
                                   start: Position {
                                    line: 517,
                                    column: 45,
                                   },
                                   end: Position {
                                    line: 517,
                                    column: 54,
                                   },
                                  },
                                 },
                                ),
                               ],
                              },
                             ),
                            ],
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 517,
                            column: 14,
                           },
                           end: Position {
                            line: 517,
                            column: 55,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "description",
                           span: Span {
                            start: Position {
                             line: 518,
                             column: 7,
                            },
                            end: Position {
                             line: 518,
                             column: 18,
                            },
                           },
                          },
                         ),
                        ],
                        to: FunctionApplication(
                         FunctionApplication {
                          function: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "lib",
                              span: Span {
                               start: Position {
                                line: 518,
                                column: 21,
                               },
                               end: Position {
                                line: 518,
                                column: 24,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "mdDoc",
                               span: Span {
                                start: Position {
                                 line: 518,
                                 column: 25,
                                },
                                end: Position {
                                 line: 518,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                          arguments: [
                           IndentedString(
                            IndentedString {
                             parts: [
                              Raw(
                               PartRaw {
                                content: "Additional groups to be created automatically by the system.\n",
                                span: Span {
                                 start: Position {
                                  line: 519,
                                  column: 1,
                                 },
                                 end: Position {
                                  line: 520,
                                  column: 7,
                                 },
                                },
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 518,
                               column: 31,
                              },
                              end: Position {
                               line: 520,
                               column: 9,
                              },
                             },
                            },
                           ),
                          ],
                         },
                        ),
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 511,
                       column: 29,
                      },
                      end: Position {
                       line: 521,
                       column: 6,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 524,
                     column: 5,
                    },
                    end: Position {
                     line: 524,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "allowNoPasswordLogin",
                   span: Span {
                    start: Position {
                     line: 524,
                     column: 11,
                    },
                    end: Position {
                     line: 524,
                     column: 31,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mkOption",
                    span: Span {
                     start: Position {
                      line: 524,
                      column: 34,
                     },
                     end: Position {
                      line: 524,
                      column: 42,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Map(
                    Map {
                     recursive: false,
                     bindings: [
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "type",
                           span: Span {
                            start: Position {
                             line: 525,
                             column: 7,
                            },
                            end: Position {
                             line: 525,
                             column: 11,
                            },
                           },
                          },
                         ),
                        ],
                        to: PropertyAccess(
                         PropertyAccess {
                          expression: Identifier(
                           Identifier {
                            id: "types",
                            span: Span {
                             start: Position {
                              line: 525,
                              column: 14,
                             },
                             end: Position {
                              line: 525,
                              column: 19,
                             },
                            },
                           },
                          ),
                          attribute_path: [
                           Raw(
                            PartRaw {
                             content: "bool",
                             span: Span {
                              start: Position {
                               line: 525,
                               column: 20,
                              },
                              end: Position {
                               line: 525,
                               column: 24,
                              },
                             },
                            },
                           ),
                          ],
                          default: None,
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "default",
                           span: Span {
                            start: Position {
                             line: 526,
                             column: 7,
                            },
                            end: Position {
                             line: 526,
                             column: 14,
                            },
                           },
                          },
                         ),
                        ],
                        to: Identifier(
                         Identifier {
                          id: "false",
                          span: Span {
                           start: Position {
                            line: 526,
                            column: 17,
                           },
                           end: Position {
                            line: 526,
                            column: 22,
                           },
                          },
                         },
                        ),
                       },
                      ),
                      KeyValue(
                       BindingKeyValue {
                        from: [
                         Raw(
                          PartRaw {
                           content: "description",
                           span: Span {
                            start: Position {
                             line: 527,
                             column: 7,
                            },
                            end: Position {
                             line: 527,
                             column: 18,
                            },
                           },
                          },
                         ),
                        ],
                        to: FunctionApplication(
                         FunctionApplication {
                          function: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "lib",
                              span: Span {
                               start: Position {
                                line: 527,
                                column: 21,
                               },
                               end: Position {
                                line: 527,
                                column: 24,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "mdDoc",
                               span: Span {
                                start: Position {
                                 line: 527,
                                 column: 25,
                                },
                                end: Position {
                                 line: 527,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                          arguments: [
                           IndentedString(
                            IndentedString {
                             parts: [
                              Raw(
                               PartRaw {
                                content: "Disable checking that at least the `root` user or a user in the `wheel` group can log in using\na password or an SSH key.\n\nWARNING: enabling this can lock you out of your system. Enable this only if you know what are you doing.\n",
                                span: Span {
                                 start: Position {
                                  line: 528,
                                  column: 1,
                                 },
                                 end: Position {
                                  line: 532,
                                  column: 7,
                                 },
                                },
                               },
                              ),
                             ],
                             span: Span {
                              start: Position {
                               line: 527,
                               column: 31,
                              },
                              end: Position {
                               line: 532,
                               column: 9,
                              },
                             },
                            },
                           ),
                          ],
                         },
                        ),
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 524,
                       column: 43,
                      },
                      end: Position {
                       line: 533,
                       column: 6,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
             ],
             span: Span {
              start: Position {
               line: 456,
               column: 13,
              },
              end: Position {
               line: 534,
               column: 4,
              },
             },
            },
           ),
          },
         ),
         KeyValue(
          BindingKeyValue {
           from: [
            Raw(
             PartRaw {
              content: "config",
              span: Span {
               start: Position {
                line: 539,
                column: 3,
               },
               end: Position {
                line: 539,
                column: 9,
               },
              },
             },
            ),
           ],
           to: Map(
            Map {
             recursive: false,
             bindings: [
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 541,
                     column: 5,
                    },
                    end: Position {
                     line: 541,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 541,
                     column: 11,
                    },
                    end: Position {
                     line: 541,
                     column: 16,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "root",
                        span: Span {
                         start: Position {
                          line: 542,
                          column: 7,
                         },
                         end: Position {
                          line: 542,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: Map(
                      Map {
                       recursive: false,
                       bindings: [
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "uid",
                             span: Span {
                              start: Position {
                               line: 543,
                               column: 9,
                              },
                              end: Position {
                               line: 543,
                               column: 12,
                              },
                             },
                            },
                           ),
                          ],
                          to: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "ids",
                              span: Span {
                               start: Position {
                                line: 543,
                                column: 15,
                               },
                               end: Position {
                                line: 543,
                                column: 18,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "uids",
                               span: Span {
                                start: Position {
                                 line: 543,
                                 column: 19,
                                },
                                end: Position {
                                 line: 543,
                                 column: 23,
                                },
                               },
                              },
                             ),
                             Raw(
                              PartRaw {
                               content: "root",
                               span: Span {
                                start: Position {
                                 line: 543,
                                 column: 24,
                                },
                                end: Position {
                                 line: 543,
                                 column: 28,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "description",
                             span: Span {
                              start: Position {
                               line: 544,
                               column: 9,
                              },
                              end: Position {
                               line: 544,
                               column: 20,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "System administrator",
                               span: Span {
                                start: Position {
                                 line: 544,
                                 column: 24,
                                },
                                end: Position {
                                 line: 544,
                                 column: 44,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 544,
                              column: 23,
                             },
                             end: Position {
                              line: 544,
                              column: 45,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "home",
                             span: Span {
                              start: Position {
                               line: 545,
                               column: 9,
                              },
                              end: Position {
                               line: 545,
                               column: 13,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "/root",
                               span: Span {
                                start: Position {
                                 line: 545,
                                 column: 17,
                                },
                                end: Position {
                                 line: 545,
                                 column: 22,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 545,
                              column: 16,
                             },
                             end: Position {
                              line: 545,
                              column: 23,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "shell",
                             span: Span {
                              start: Position {
                               line: 546,
                               column: 9,
                              },
                              end: Position {
                               line: 546,
                               column: 14,
                              },
                             },
                            },
                           ),
                          ],
                          to: FunctionApplication(
                           FunctionApplication {
                            function: Identifier(
                             Identifier {
                              id: "mkDefault",
                              span: Span {
                               start: Position {
                                line: 546,
                                column: 17,
                               },
                               end: Position {
                                line: 546,
                                column: 26,
                               },
                              },
                             },
                            ),
                            arguments: [
                             PropertyAccess(
                              PropertyAccess {
                               expression: Identifier(
                                Identifier {
                                 id: "cfg",
                                 span: Span {
                                  start: Position {
                                   line: 546,
                                   column: 27,
                                  },
                                  end: Position {
                                   line: 546,
                                   column: 30,
                                  },
                                 },
                                },
                               ),
                               attribute_path: [
                                Raw(
                                 PartRaw {
                                  content: "defaultUserShell",
                                  span: Span {
                                   start: Position {
                                    line: 546,
                                    column: 31,
                                   },
                                   end: Position {
                                    line: 546,
                                    column: 47,
                                   },
                                  },
                                 },
                                ),
                               ],
                               default: None,
                              },
                             ),
                            ],
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "group",
                             span: Span {
                              start: Position {
                               line: 547,
                               column: 9,
                              },
                              end: Position {
                               line: 547,
                               column: 14,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "root",
                               span: Span {
                                start: Position {
                                 line: 547,
                                 column: 18,
                                },
                                end: Position {
                                 line: 547,
                                 column: 22,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 547,
                              column: 17,
                             },
                             end: Position {
                              line: 547,
                              column: 23,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "initialHashedPassword",
                             span: Span {
                              start: Position {
                               line: 548,
                               column: 9,
                              },
                              end: Position {
                               line: 548,
                               column: 30,
                              },
                             },
                            },
                           ),
                          ],
                          to: FunctionApplication(
                           FunctionApplication {
                            function: Identifier(
                             Identifier {
                              id: "mkDefault",
                              span: Span {
                               start: Position {
                                line: 548,
                                column: 33,
                               },
                               end: Position {
                                line: 548,
                                column: 42,
                               },
                              },
                             },
                            ),
                            arguments: [
                             String(
                              String_ {
                               parts: [
                                Raw(
                                 PartRaw {
                                  content: "!",
                                  span: Span {
                                   start: Position {
                                    line: 548,
                                    column: 44,
                                   },
                                   end: Position {
                                    line: 548,
                                    column: 45,
                                   },
                                  },
                                 },
                                ),
                               ],
                               span: Span {
                                start: Position {
                                 line: 548,
                                 column: 43,
                                },
                                end: Position {
                                 line: 548,
                                 column: 46,
                                },
                               },
                              },
                             ),
                            ],
                           },
                          ),
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 542,
                         column: 14,
                        },
                        end: Position {
                         line: 549,
                         column: 8,
                        },
                       },
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "nobody",
                        span: Span {
                         start: Position {
                          line: 550,
                          column: 7,
                         },
                         end: Position {
                          line: 550,
                          column: 13,
                         },
                        },
                       },
                      ),
                     ],
                     to: Map(
                      Map {
                       recursive: false,
                       bindings: [
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "uid",
                             span: Span {
                              start: Position {
                               line: 551,
                               column: 9,
                              },
                              end: Position {
                               line: 551,
                               column: 12,
                              },
                             },
                            },
                           ),
                          ],
                          to: PropertyAccess(
                           PropertyAccess {
                            expression: Identifier(
                             Identifier {
                              id: "ids",
                              span: Span {
                               start: Position {
                                line: 551,
                                column: 15,
                               },
                               end: Position {
                                line: 551,
                                column: 18,
                               },
                              },
                             },
                            ),
                            attribute_path: [
                             Raw(
                              PartRaw {
                               content: "uids",
                               span: Span {
                                start: Position {
                                 line: 551,
                                 column: 19,
                                },
                                end: Position {
                                 line: 551,
                                 column: 23,
                                },
                               },
                              },
                             ),
                             Raw(
                              PartRaw {
                               content: "nobody",
                               span: Span {
                                start: Position {
                                 line: 551,
                                 column: 24,
                                },
                                end: Position {
                                 line: 551,
                                 column: 30,
                                },
                               },
                              },
                             ),
                            ],
                            default: None,
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "isSystemUser",
                             span: Span {
                              start: Position {
                               line: 552,
                               column: 9,
                              },
                              end: Position {
                               line: 552,
                               column: 21,
                              },
                             },
                            },
                           ),
                          ],
                          to: Identifier(
                           Identifier {
                            id: "true",
                            span: Span {
                             start: Position {
                              line: 552,
                              column: 24,
                             },
                             end: Position {
                              line: 552,
                              column: 28,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "description",
                             span: Span {
                              start: Position {
                               line: 553,
                               column: 9,
                              },
                              end: Position {
                               line: 553,
                               column: 20,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "Unprivileged account (don't use!)",
                               span: Span {
                                start: Position {
                                 line: 553,
                                 column: 24,
                                },
                                end: Position {
                                 line: 553,
                                 column: 57,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 553,
                              column: 23,
                             },
                             end: Position {
                              line: 553,
                              column: 58,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "group",
                             span: Span {
                              start: Position {
                               line: 554,
                               column: 9,
                              },
                              end: Position {
                               line: 554,
                               column: 14,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "nogroup",
                               span: Span {
                                start: Position {
                                 line: 554,
                                 column: 18,
                                },
                                end: Position {
                                 line: 554,
                                 column: 25,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 554,
                              column: 17,
                             },
                             end: Position {
                              line: 554,
                              column: 26,
                             },
                            },
                           },
                          ),
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 550,
                         column: 16,
                        },
                        end: Position {
                         line: 555,
                         column: 8,
                        },
                       },
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 541,
                    column: 19,
                   },
                   end: Position {
                    line: 556,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 558,
                     column: 5,
                    },
                    end: Position {
                     line: 558,
                     column: 10,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "groups",
                   span: Span {
                    start: Position {
                     line: 558,
                     column: 11,
                    },
                    end: Position {
                     line: 558,
                     column: 17,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "root",
                        span: Span {
                         start: Position {
                          line: 559,
                          column: 7,
                         },
                         end: Position {
                          line: 559,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 559,
                          column: 12,
                         },
                         end: Position {
                          line: 559,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 559,
                           column: 18,
                          },
                          end: Position {
                           line: 559,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 559,
                            column: 22,
                           },
                           end: Position {
                            line: 559,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "root",
                          span: Span {
                           start: Position {
                            line: 559,
                            column: 27,
                           },
                           end: Position {
                            line: 559,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "wheel",
                        span: Span {
                         start: Position {
                          line: 560,
                          column: 7,
                         },
                         end: Position {
                          line: 560,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 560,
                          column: 13,
                         },
                         end: Position {
                          line: 560,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 560,
                           column: 19,
                          },
                          end: Position {
                           line: 560,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 560,
                            column: 23,
                           },
                           end: Position {
                            line: 560,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "wheel",
                          span: Span {
                           start: Position {
                            line: 560,
                            column: 28,
                           },
                           end: Position {
                            line: 560,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "disk",
                        span: Span {
                         start: Position {
                          line: 561,
                          column: 7,
                         },
                         end: Position {
                          line: 561,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 561,
                          column: 12,
                         },
                         end: Position {
                          line: 561,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 561,
                           column: 18,
                          },
                          end: Position {
                           line: 561,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 561,
                            column: 22,
                           },
                           end: Position {
                            line: 561,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "disk",
                          span: Span {
                           start: Position {
                            line: 561,
                            column: 27,
                           },
                           end: Position {
                            line: 561,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "kmem",
                        span: Span {
                         start: Position {
                          line: 562,
                          column: 7,
                         },
                         end: Position {
                          line: 562,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 562,
                          column: 12,
                         },
                         end: Position {
                          line: 562,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 562,
                           column: 18,
                          },
                          end: Position {
                           line: 562,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 562,
                            column: 22,
                           },
                           end: Position {
                            line: 562,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "kmem",
                          span: Span {
                           start: Position {
                            line: 562,
                            column: 27,
                           },
                           end: Position {
                            line: 562,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "tty",
                        span: Span {
                         start: Position {
                          line: 563,
                          column: 7,
                         },
                         end: Position {
                          line: 563,
                          column: 10,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 563,
                          column: 11,
                         },
                         end: Position {
                          line: 563,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 563,
                           column: 17,
                          },
                          end: Position {
                           line: 563,
                           column: 20,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 563,
                            column: 21,
                           },
                           end: Position {
                            line: 563,
                            column: 25,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "tty",
                          span: Span {
                           start: Position {
                            line: 563,
                            column: 26,
                           },
                           end: Position {
                            line: 563,
                            column: 29,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "floppy",
                        span: Span {
                         start: Position {
                          line: 564,
                          column: 7,
                         },
                         end: Position {
                          line: 564,
                          column: 13,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 564,
                          column: 14,
                         },
                         end: Position {
                          line: 564,
                          column: 17,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 564,
                           column: 20,
                          },
                          end: Position {
                           line: 564,
                           column: 23,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 564,
                            column: 24,
                           },
                           end: Position {
                            line: 564,
                            column: 28,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "floppy",
                          span: Span {
                           start: Position {
                            line: 564,
                            column: 29,
                           },
                           end: Position {
                            line: 564,
                            column: 35,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "uucp",
                        span: Span {
                         start: Position {
                          line: 565,
                          column: 7,
                         },
                         end: Position {
                          line: 565,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 565,
                          column: 12,
                         },
                         end: Position {
                          line: 565,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 565,
                           column: 18,
                          },
                          end: Position {
                           line: 565,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 565,
                            column: 22,
                           },
                           end: Position {
                            line: 565,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "uucp",
                          span: Span {
                           start: Position {
                            line: 565,
                            column: 27,
                           },
                           end: Position {
                            line: 565,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "lp",
                        span: Span {
                         start: Position {
                          line: 566,
                          column: 7,
                         },
                         end: Position {
                          line: 566,
                          column: 9,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 566,
                          column: 10,
                         },
                         end: Position {
                          line: 566,
                          column: 13,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 566,
                           column: 16,
                          },
                          end: Position {
                           line: 566,
                           column: 19,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 566,
                            column: 20,
                           },
                           end: Position {
                            line: 566,
                            column: 24,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "lp",
                          span: Span {
                           start: Position {
                            line: 566,
                            column: 25,
                           },
                           end: Position {
                            line: 566,
                            column: 27,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "cdrom",
                        span: Span {
                         start: Position {
                          line: 567,
                          column: 7,
                         },
                         end: Position {
                          line: 567,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 567,
                          column: 13,
                         },
                         end: Position {
                          line: 567,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 567,
                           column: 19,
                          },
                          end: Position {
                           line: 567,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 567,
                            column: 23,
                           },
                           end: Position {
                            line: 567,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "cdrom",
                          span: Span {
                           start: Position {
                            line: 567,
                            column: 28,
                           },
                           end: Position {
                            line: 567,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "tape",
                        span: Span {
                         start: Position {
                          line: 568,
                          column: 7,
                         },
                         end: Position {
                          line: 568,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 568,
                          column: 12,
                         },
                         end: Position {
                          line: 568,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 568,
                           column: 18,
                          },
                          end: Position {
                           line: 568,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 568,
                            column: 22,
                           },
                           end: Position {
                            line: 568,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "tape",
                          span: Span {
                           start: Position {
                            line: 568,
                            column: 27,
                           },
                           end: Position {
                            line: 568,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "audio",
                        span: Span {
                         start: Position {
                          line: 569,
                          column: 7,
                         },
                         end: Position {
                          line: 569,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 569,
                          column: 13,
                         },
                         end: Position {
                          line: 569,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 569,
                           column: 19,
                          },
                          end: Position {
                           line: 569,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 569,
                            column: 23,
                           },
                           end: Position {
                            line: 569,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "audio",
                          span: Span {
                           start: Position {
                            line: 569,
                            column: 28,
                           },
                           end: Position {
                            line: 569,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "video",
                        span: Span {
                         start: Position {
                          line: 570,
                          column: 7,
                         },
                         end: Position {
                          line: 570,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 570,
                          column: 13,
                         },
                         end: Position {
                          line: 570,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 570,
                           column: 19,
                          },
                          end: Position {
                           line: 570,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 570,
                            column: 23,
                           },
                           end: Position {
                            line: 570,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "video",
                          span: Span {
                           start: Position {
                            line: 570,
                            column: 28,
                           },
                           end: Position {
                            line: 570,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "dialout",
                        span: Span {
                         start: Position {
                          line: 571,
                          column: 7,
                         },
                         end: Position {
                          line: 571,
                          column: 14,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 571,
                          column: 15,
                         },
                         end: Position {
                          line: 571,
                          column: 18,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 571,
                           column: 21,
                          },
                          end: Position {
                           line: 571,
                           column: 24,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 571,
                            column: 25,
                           },
                           end: Position {
                            line: 571,
                            column: 29,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "dialout",
                          span: Span {
                           start: Position {
                            line: 571,
                            column: 30,
                           },
                           end: Position {
                            line: 571,
                            column: 37,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "nogroup",
                        span: Span {
                         start: Position {
                          line: 572,
                          column: 7,
                         },
                         end: Position {
                          line: 572,
                          column: 14,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 572,
                          column: 15,
                         },
                         end: Position {
                          line: 572,
                          column: 18,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 572,
                           column: 21,
                          },
                          end: Position {
                           line: 572,
                           column: 24,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 572,
                            column: 25,
                           },
                           end: Position {
                            line: 572,
                            column: 29,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "nogroup",
                          span: Span {
                           start: Position {
                            line: 572,
                            column: 30,
                           },
                           end: Position {
                            line: 572,
                            column: 37,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "users",
                        span: Span {
                         start: Position {
                          line: 573,
                          column: 7,
                         },
                         end: Position {
                          line: 573,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 573,
                          column: 13,
                         },
                         end: Position {
                          line: 573,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 573,
                           column: 19,
                          },
                          end: Position {
                           line: 573,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 573,
                            column: 23,
                           },
                           end: Position {
                            line: 573,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "users",
                          span: Span {
                           start: Position {
                            line: 573,
                            column: 28,
                           },
                           end: Position {
                            line: 573,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "nixbld",
                        span: Span {
                         start: Position {
                          line: 574,
                          column: 7,
                         },
                         end: Position {
                          line: 574,
                          column: 13,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 574,
                          column: 14,
                         },
                         end: Position {
                          line: 574,
                          column: 17,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 574,
                           column: 20,
                          },
                          end: Position {
                           line: 574,
                           column: 23,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 574,
                            column: 24,
                           },
                           end: Position {
                            line: 574,
                            column: 28,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "nixbld",
                          span: Span {
                           start: Position {
                            line: 574,
                            column: 29,
                           },
                           end: Position {
                            line: 574,
                            column: 35,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "utmp",
                        span: Span {
                         start: Position {
                          line: 575,
                          column: 7,
                         },
                         end: Position {
                          line: 575,
                          column: 11,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 575,
                          column: 12,
                         },
                         end: Position {
                          line: 575,
                          column: 15,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 575,
                           column: 18,
                          },
                          end: Position {
                           line: 575,
                           column: 21,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 575,
                            column: 22,
                           },
                           end: Position {
                            line: 575,
                            column: 26,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "utmp",
                          span: Span {
                           start: Position {
                            line: 575,
                            column: 27,
                           },
                           end: Position {
                            line: 575,
                            column: 31,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "adm",
                        span: Span {
                         start: Position {
                          line: 576,
                          column: 7,
                         },
                         end: Position {
                          line: 576,
                          column: 10,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 576,
                          column: 11,
                         },
                         end: Position {
                          line: 576,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 576,
                           column: 17,
                          },
                          end: Position {
                           line: 576,
                           column: 20,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 576,
                            column: 21,
                           },
                           end: Position {
                            line: 576,
                            column: 25,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "adm",
                          span: Span {
                           start: Position {
                            line: 576,
                            column: 26,
                           },
                           end: Position {
                            line: 576,
                            column: 29,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "input",
                        span: Span {
                         start: Position {
                          line: 577,
                          column: 7,
                         },
                         end: Position {
                          line: 577,
                          column: 12,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 577,
                          column: 13,
                         },
                         end: Position {
                          line: 577,
                          column: 16,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 577,
                           column: 19,
                          },
                          end: Position {
                           line: 577,
                           column: 22,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 577,
                            column: 23,
                           },
                           end: Position {
                            line: 577,
                            column: 27,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "input",
                          span: Span {
                           start: Position {
                            line: 577,
                            column: 28,
                           },
                           end: Position {
                            line: 577,
                            column: 33,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "kvm",
                        span: Span {
                         start: Position {
                          line: 578,
                          column: 7,
                         },
                         end: Position {
                          line: 578,
                          column: 10,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 578,
                          column: 11,
                         },
                         end: Position {
                          line: 578,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 578,
                           column: 17,
                          },
                          end: Position {
                           line: 578,
                           column: 20,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 578,
                            column: 21,
                           },
                           end: Position {
                            line: 578,
                            column: 25,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "kvm",
                          span: Span {
                           start: Position {
                            line: 578,
                            column: 26,
                           },
                           end: Position {
                            line: 578,
                            column: 29,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "render",
                        span: Span {
                         start: Position {
                          line: 579,
                          column: 7,
                         },
                         end: Position {
                          line: 579,
                          column: 13,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 579,
                          column: 14,
                         },
                         end: Position {
                          line: 579,
                          column: 17,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 579,
                           column: 20,
                          },
                          end: Position {
                           line: 579,
                           column: 23,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 579,
                            column: 24,
                           },
                           end: Position {
                            line: 579,
                            column: 28,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "render",
                          span: Span {
                           start: Position {
                            line: 579,
                            column: 29,
                           },
                           end: Position {
                            line: 579,
                            column: 35,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "sgx",
                        span: Span {
                         start: Position {
                          line: 580,
                          column: 7,
                         },
                         end: Position {
                          line: 580,
                          column: 10,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 580,
                          column: 11,
                         },
                         end: Position {
                          line: 580,
                          column: 14,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 580,
                           column: 17,
                          },
                          end: Position {
                           line: 580,
                           column: 20,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 580,
                            column: 21,
                           },
                           end: Position {
                            line: 580,
                            column: 25,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "sgx",
                          span: Span {
                           start: Position {
                            line: 580,
                            column: 26,
                           },
                           end: Position {
                            line: 580,
                            column: 29,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "shadow",
                        span: Span {
                         start: Position {
                          line: 581,
                          column: 7,
                         },
                         end: Position {
                          line: 581,
                          column: 13,
                         },
                        },
                       },
                      ),
                      Raw(
                       PartRaw {
                        content: "gid",
                        span: Span {
                         start: Position {
                          line: 581,
                          column: 14,
                         },
                         end: Position {
                          line: 581,
                          column: 17,
                         },
                        },
                       },
                      ),
                     ],
                     to: PropertyAccess(
                      PropertyAccess {
                       expression: Identifier(
                        Identifier {
                         id: "ids",
                         span: Span {
                          start: Position {
                           line: 581,
                           column: 20,
                          },
                          end: Position {
                           line: 581,
                           column: 23,
                          },
                         },
                        },
                       ),
                       attribute_path: [
                        Raw(
                         PartRaw {
                          content: "gids",
                          span: Span {
                           start: Position {
                            line: 581,
                            column: 24,
                           },
                           end: Position {
                            line: 581,
                            column: 28,
                           },
                          },
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "shadow",
                          span: Span {
                           start: Position {
                            line: 581,
                            column: 29,
                           },
                           end: Position {
                            line: 581,
                            column: 35,
                           },
                          },
                         },
                        ),
                       ],
                       default: None,
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 558,
                    column: 20,
                   },
                   end: Position {
                    line: 582,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "system",
                   span: Span {
                    start: Position {
                     line: 584,
                     column: 5,
                    },
                    end: Position {
                     line: 584,
                     column: 11,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "activationScripts",
                   span: Span {
                    start: Position {
                     line: 584,
                     column: 12,
                    },
                    end: Position {
                     line: 584,
                     column: 29,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "users",
                   span: Span {
                    start: Position {
                     line: 584,
                     column: 30,
                    },
                    end: Position {
                     line: 584,
                     column: 35,
                    },
                   },
                  },
                 ),
                ],
                to: Map(
                 Map {
                  recursive: false,
                  bindings: [
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "supportsDryActivation",
                        span: Span {
                         start: Position {
                          line: 585,
                          column: 7,
                         },
                         end: Position {
                          line: 585,
                          column: 28,
                         },
                        },
                       },
                      ),
                     ],
                     to: Identifier(
                      Identifier {
                       id: "true",
                       span: Span {
                        start: Position {
                         line: 585,
                         column: 31,
                        },
                        end: Position {
                         line: 585,
                         column: 35,
                        },
                       },
                      },
                     ),
                    },
                   ),
                   KeyValue(
                    BindingKeyValue {
                     from: [
                      Raw(
                       PartRaw {
                        content: "text",
                        span: Span {
                         start: Position {
                          line: 586,
                          column: 7,
                         },
                         end: Position {
                          line: 586,
                          column: 11,
                         },
                        },
                       },
                      ),
                     ],
                     to: IndentedString(
                      IndentedString {
                       parts: [
                        Raw(
                         PartRaw {
                          content: "install -m 0700 -d /root\ninstall -m 0755 -d /home\n\n",
                          span: Span {
                           start: Position {
                            line: 587,
                            column: 1,
                           },
                           end: Position {
                            line: 590,
                            column: 9,
                           },
                          },
                         },
                        ),
                        Interpolation(
                         PartInterpolation {
                          expression: FunctionApplication(
                           FunctionApplication {
                            function: PropertyAccess(
                             PropertyAccess {
                              expression: Identifier(
                               Identifier {
                                id: "pkgs",
                                span: Span {
                                 start: Position {
                                  line: 590,
                                  column: 11,
                                 },
                                 end: Position {
                                  line: 590,
                                  column: 15,
                                 },
                                },
                               },
                              ),
                              attribute_path: [
                               Raw(
                                PartRaw {
                                 content: "perl",
                                 span: Span {
                                  start: Position {
                                   line: 590,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 590,
                                   column: 20,
                                  },
                                 },
                                },
                               ),
                               Raw(
                                PartRaw {
                                 content: "withPackages",
                                 span: Span {
                                  start: Position {
                                   line: 590,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 590,
                                   column: 33,
                                  },
                                 },
                                },
                               ),
                              ],
                              default: None,
                             },
                            ),
                            arguments: [
                             Function(
                              Function {
                               head: Simple(
                                FunctionHeadSimple {
                                 identifier: "p",
                                },
                               ),
                               body: List(
                                List {
                                 elements: [
                                  PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "p",
                                      span: Span {
                                       start: Position {
                                        line: 590,
                                        column: 40,
                                       },
                                       end: Position {
                                        line: 590,
                                        column: 41,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "FileSlurp",
                                       span: Span {
                                        start: Position {
                                         line: 590,
                                         column: 42,
                                        },
                                        end: Position {
                                         line: 590,
                                         column: 51,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                  PropertyAccess(
                                   PropertyAccess {
                                    expression: Identifier(
                                     Identifier {
                                      id: "p",
                                      span: Span {
                                       start: Position {
                                        line: 590,
                                        column: 52,
                                       },
                                       end: Position {
                                        line: 590,
                                        column: 53,
                                       },
                                      },
                                     },
                                    ),
                                    attribute_path: [
                                     Raw(
                                      PartRaw {
                                       content: "JSON",
                                       span: Span {
                                        start: Position {
                                         line: 590,
                                         column: 54,
                                        },
                                        end: Position {
                                         line: 590,
                                         column: 58,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    default: None,
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 590,
                                   column: 38,
                                  },
                                  end: Position {
                                   line: 590,
                                   column: 60,
                                  },
                                 },
                                },
                               ),
                               span: Span {
                                start: Position {
                                 line: 590,
                                 column: 35,
                                },
                                end: Position {
                                 line: 590,
                                 column: 60,
                                },
                               },
                              },
                             ),
                            ],
                           },
                          ),
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "/bin/perl \\\n-w ",
                          span: Span {
                           start: Position {
                            line: 587,
                            column: 1,
                           },
                           end: Position {
                            line: 591,
                            column: 12,
                           },
                          },
                         },
                        ),
                        Interpolation(
                         PartInterpolation {
                          expression: Path(
                           Path {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "./update-users-groups.pl",
                               span: Span {
                                start: Position {
                                 line: 591,
                                 column: 14,
                                },
                                end: Position {
                                 line: 591,
                                 column: 38,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 591,
                              column: 14,
                             },
                             end: Position {
                              line: 591,
                              column: 38,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: " ",
                          span: Span {
                           start: Position {
                            line: 587,
                            column: 1,
                           },
                           end: Position {
                            line: 591,
                            column: 40,
                           },
                          },
                         },
                        ),
                        Interpolation(
                         PartInterpolation {
                          expression: Identifier(
                           Identifier {
                            id: "spec",
                            span: Span {
                             start: Position {
                              line: 591,
                              column: 42,
                             },
                             end: Position {
                              line: 591,
                              column: 46,
                             },
                            },
                           },
                          ),
                         },
                        ),
                        Raw(
                         PartRaw {
                          content: "\n",
                          span: Span {
                           start: Position {
                            line: 587,
                            column: 1,
                           },
                           end: Position {
                            line: 592,
                            column: 7,
                           },
                          },
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 586,
                         column: 14,
                        },
                        end: Position {
                         line: 592,
                         column: 9,
                        },
                       },
                      },
                     ),
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 584,
                    column: 38,
                   },
                   end: Position {
                    line: 593,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "system",
                   span: Span {
                    start: Position {
                     line: 596,
                     column: 5,
                    },
                    end: Position {
                     line: 596,
                     column: 11,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "activationScripts",
                   span: Span {
                    start: Position {
                     line: 596,
                     column: 12,
                    },
                    end: Position {
                     line: 596,
                     column: 29,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "groups",
                   span: Span {
                    start: Position {
                     line: 596,
                     column: 30,
                    },
                    end: Position {
                     line: 596,
                     column: 36,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "stringAfter",
                    span: Span {
                     start: Position {
                      line: 596,
                      column: 39,
                     },
                     end: Position {
                      line: 596,
                      column: 50,
                     },
                    },
                   },
                  ),
                  arguments: [
                   List(
                    List {
                     elements: [
                      String(
                       String_ {
                        parts: [
                         Raw(
                          PartRaw {
                           content: "users",
                           span: Span {
                            start: Position {
                             line: 596,
                             column: 54,
                            },
                            end: Position {
                             line: 596,
                             column: 59,
                            },
                           },
                          },
                         ),
                        ],
                        span: Span {
                         start: Position {
                          line: 596,
                          column: 53,
                         },
                         end: Position {
                          line: 596,
                          column: 60,
                         },
                        },
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 596,
                       column: 51,
                      },
                      end: Position {
                       line: 596,
                       column: 62,
                      },
                     },
                    },
                   ),
                   String(
                    String_ {
                     parts: [],
                     span: Span {
                      start: Position {
                       line: 596,
                       column: 63,
                      },
                      end: Position {
                       line: 596,
                       column: 65,
                      },
                     },
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "environment",
                   span: Span {
                    start: Position {
                     line: 599,
                     column: 5,
                    },
                    end: Position {
                     line: 599,
                     column: 16,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "systemPackages",
                   span: Span {
                    start: Position {
                     line: 599,
                     column: 17,
                    },
                    end: Position {
                     line: 599,
                     column: 31,
                    },
                   },
                  },
                 ),
                ],
                to: Identifier(
                 Identifier {
                  id: "systemShells",
                  span: Span {
                   start: Position {
                    line: 599,
                    column: 34,
                   },
                   end: Position {
                    line: 599,
                    column: 46,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "environment",
                   span: Span {
                    start: Position {
                     line: 601,
                     column: 5,
                    },
                    end: Position {
                     line: 601,
                     column: 16,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "etc",
                   span: Span {
                    start: Position {
                     line: 601,
                     column: 17,
                    },
                    end: Position {
                     line: 601,
                     column: 20,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: Identifier(
                   Identifier {
                    id: "mapAttrs'",
                    span: Span {
                     start: Position {
                      line: 601,
                      column: 24,
                     },
                     end: Position {
                      line: 601,
                      column: 33,
                     },
                    },
                   },
                  ),
                  arguments: [
                   Function(
                    Function {
                     head: Simple(
                      FunctionHeadSimple {
                       identifier: "_",
                      },
                     ),
                     body: Function(
                      Function {
                       head: Destructured(
                        FunctionHeadDestructured {
                         ellipsis: true,
                         identifier: None,
                         arguments: [
                          FunctionHeadDestructuredArgument {
                           identifier: "packages",
                           default: None,
                          },
                          FunctionHeadDestructuredArgument {
                           identifier: "name",
                           default: None,
                          },
                         ],
                        },
                       ),
                       body: Map(
                        Map {
                         recursive: false,
                         bindings: [
                          KeyValue(
                           BindingKeyValue {
                            from: [
                             Raw(
                              PartRaw {
                               content: "name",
                               span: Span {
                                start: Position {
                                 line: 602,
                                 column: 7,
                                },
                                end: Position {
                                 line: 602,
                                 column: 11,
                                },
                               },
                              },
                             ),
                            ],
                            to: String(
                             String_ {
                              parts: [
                               Raw(
                                PartRaw {
                                 content: "profiles/per-user/",
                                 span: Span {
                                  start: Position {
                                   line: 602,
                                   column: 15,
                                  },
                                  end: Position {
                                   line: 602,
                                   column: 40,
                                  },
                                 },
                                },
                               ),
                               Interpolation(
                                PartInterpolation {
                                 expression: Identifier(
                                  Identifier {
                                   id: "name",
                                   span: Span {
                                    start: Position {
                                     line: 602,
                                     column: 35,
                                    },
                                    end: Position {
                                     line: 602,
                                     column: 39,
                                    },
                                   },
                                  },
                                 ),
                                },
                               ),
                              ],
                              span: Span {
                               start: Position {
                                line: 602,
                                column: 14,
                               },
                               end: Position {
                                line: 602,
                                column: 41,
                               },
                              },
                             },
                            ),
                           },
                          ),
                          KeyValue(
                           BindingKeyValue {
                            from: [
                             Raw(
                              PartRaw {
                               content: "value",
                               span: Span {
                                start: Position {
                                 line: 603,
                                 column: 7,
                                },
                                end: Position {
                                 line: 603,
                                 column: 12,
                                },
                               },
                              },
                             ),
                             Raw(
                              PartRaw {
                               content: "source",
                               span: Span {
                                start: Position {
                                 line: 603,
                                 column: 13,
                                },
                                end: Position {
                                 line: 603,
                                 column: 19,
                                },
                               },
                              },
                             ),
                            ],
                            to: FunctionApplication(
                             FunctionApplication {
                              function: PropertyAccess(
                               PropertyAccess {
                                expression: Identifier(
                                 Identifier {
                                  id: "pkgs",
                                  span: Span {
                                   start: Position {
                                    line: 603,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 603,
                                    column: 26,
                                   },
                                  },
                                 },
                                ),
                                attribute_path: [
                                 Raw(
                                  PartRaw {
                                   content: "buildEnv",
                                   span: Span {
                                    start: Position {
                                     line: 603,
                                     column: 27,
                                    },
                                    end: Position {
                                     line: 603,
                                     column: 35,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                default: None,
                               },
                              ),
                              arguments: [
                               Map(
                                Map {
                                 recursive: false,
                                 bindings: [
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "name",
                                       span: Span {
                                        start: Position {
                                         line: 604,
                                         column: 9,
                                        },
                                        end: Position {
                                         line: 604,
                                         column: 13,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: String(
                                     String_ {
                                      parts: [
                                       Raw(
                                        PartRaw {
                                         content: "user-environment",
                                         span: Span {
                                          start: Position {
                                           line: 604,
                                           column: 17,
                                          },
                                          end: Position {
                                           line: 604,
                                           column: 33,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      span: Span {
                                       start: Position {
                                        line: 604,
                                        column: 16,
                                       },
                                       end: Position {
                                        line: 604,
                                        column: 34,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "paths",
                                       span: Span {
                                        start: Position {
                                         line: 605,
                                         column: 9,
                                        },
                                        end: Position {
                                         line: 605,
                                         column: 14,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: Identifier(
                                     Identifier {
                                      id: "packages",
                                      span: Span {
                                       start: Position {
                                        line: 605,
                                        column: 17,
                                       },
                                       end: Position {
                                        line: 605,
                                        column: 25,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Inherit(
                                   BindingInherit {
                                    from: Some(
                                     PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "config",
                                         span: Span {
                                          start: Position {
                                           line: 606,
                                           column: 18,
                                          },
                                          end: Position {
                                           line: 606,
                                           column: 24,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "environment",
                                          span: Span {
                                           start: Position {
                                            line: 606,
                                            column: 25,
                                           },
                                           end: Position {
                                            line: 606,
                                            column: 36,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                    ),
                                    attributes: [
                                     Raw(
                                      PartRaw {
                                       content: "pathsToLink",
                                       span: Span {
                                        start: Position {
                                         line: 606,
                                         column: 38,
                                        },
                                        end: Position {
                                         line: 606,
                                         column: 49,
                                        },
                                       },
                                      },
                                     ),
                                     Raw(
                                      PartRaw {
                                       content: "extraOutputsToInstall",
                                       span: Span {
                                        start: Position {
                                         line: 606,
                                         column: 50,
                                        },
                                        end: Position {
                                         line: 606,
                                         column: 71,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 603,
                                      column: 37,
                                     },
                                     end: Position {
                                      line: 606,
                                      column: 72,
                                     },
                                    },
                                   },
                                  ),
                                  Inherit(
                                   BindingInherit {
                                    from: Some(
                                     PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "config",
                                         span: Span {
                                          start: Position {
                                           line: 607,
                                           column: 18,
                                          },
                                          end: Position {
                                           line: 607,
                                           column: 24,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "system",
                                          span: Span {
                                           start: Position {
                                            line: 607,
                                            column: 25,
                                           },
                                           end: Position {
                                            line: 607,
                                            column: 31,
                                           },
                                          },
                                         },
                                        ),
                                        Raw(
                                         PartRaw {
                                          content: "path",
                                          span: Span {
                                           start: Position {
                                            line: 607,
                                            column: 32,
                                           },
                                           end: Position {
                                            line: 607,
                                            column: 36,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                    ),
                                    attributes: [
                                     Raw(
                                      PartRaw {
                                       content: "ignoreCollisions",
                                       span: Span {
                                        start: Position {
                                         line: 607,
                                         column: 38,
                                        },
                                        end: Position {
                                         line: 607,
                                         column: 54,
                                        },
                                       },
                                      },
                                     ),
                                     Raw(
                                      PartRaw {
                                       content: "postBuild",
                                       span: Span {
                                        start: Position {
                                         line: 607,
                                         column: 55,
                                        },
                                        end: Position {
                                         line: 607,
                                         column: 64,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    span: Span {
                                     start: Position {
                                      line: 603,
                                      column: 37,
                                     },
                                     end: Position {
                                      line: 607,
                                      column: 65,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 603,
                                   column: 36,
                                  },
                                  end: Position {
                                   line: 608,
                                   column: 8,
                                  },
                                 },
                                },
                               ),
                              ],
                             },
                            ),
                           },
                          ),
                         ],
                         span: Span {
                          start: Position {
                           line: 601,
                           column: 63,
                          },
                          end: Position {
                           line: 609,
                           column: 6,
                          },
                         },
                        },
                       ),
                       span: Span {
                        start: Position {
                         line: 601,
                         column: 38,
                        },
                        end: Position {
                         line: 609,
                         column: 6,
                        },
                       },
                      },
                     ),
                     span: Span {
                      start: Position {
                       line: 601,
                       column: 35,
                      },
                      end: Position {
                       line: 609,
                       column: 6,
                      },
                     },
                    },
                   ),
                   FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "filterAttrs",
                       span: Span {
                        start: Position {
                         line: 609,
                         column: 9,
                        },
                        end: Position {
                         line: 609,
                         column: 20,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Function(
                       Function {
                        head: Simple(
                         FunctionHeadSimple {
                          identifier: "_",
                         },
                        ),
                        body: Function(
                         Function {
                          head: Simple(
                           FunctionHeadSimple {
                            identifier: "u",
                           },
                          ),
                          body: BinaryOperation(
                           BinaryOperation {
                            left: PropertyAccess(
                             PropertyAccess {
                              expression: Identifier(
                               Identifier {
                                id: "u",
                                span: Span {
                                 start: Position {
                                  line: 609,
                                  column: 28,
                                 },
                                 end: Position {
                                  line: 609,
                                  column: 29,
                                 },
                                },
                               },
                              ),
                              attribute_path: [
                               Raw(
                                PartRaw {
                                 content: "packages",
                                 span: Span {
                                  start: Position {
                                   line: 609,
                                   column: 30,
                                  },
                                  end: Position {
                                   line: 609,
                                   column: 38,
                                  },
                                 },
                                },
                               ),
                              ],
                              default: None,
                             },
                            ),
                            operator: NotEqualTo,
                            right: List(
                             List {
                              elements: [],
                              span: Span {
                               start: Position {
                                line: 609,
                                column: 42,
                               },
                               end: Position {
                                line: 609,
                                column: 44,
                               },
                              },
                             },
                            ),
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 609,
                            column: 25,
                           },
                           end: Position {
                            line: 609,
                            column: 44,
                           },
                          },
                         },
                        ),
                        span: Span {
                         start: Position {
                          line: 609,
                          column: 22,
                         },
                         end: Position {
                          line: 609,
                          column: 44,
                         },
                        },
                       },
                      ),
                      PropertyAccess(
                       PropertyAccess {
                        expression: Identifier(
                         Identifier {
                          id: "cfg",
                          span: Span {
                           start: Position {
                            line: 609,
                            column: 46,
                           },
                           end: Position {
                            line: 609,
                            column: 49,
                           },
                          },
                         },
                        ),
                        attribute_path: [
                         Raw(
                          PartRaw {
                           content: "users",
                           span: Span {
                            start: Position {
                             line: 609,
                             column: 50,
                            },
                            end: Position {
                             line: 609,
                             column: 55,
                            },
                           },
                          },
                         ),
                        ],
                        default: None,
                       },
                      ),
                     ],
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "environment",
                   span: Span {
                    start: Position {
                     line: 611,
                     column: 5,
                    },
                    end: Position {
                     line: 611,
                     column: 16,
                    },
                   },
                  },
                 ),
                 Raw(
                  PartRaw {
                   content: "profiles",
                   span: Span {
                    start: Position {
                     line: 611,
                     column: 17,
                    },
                    end: Position {
                     line: 611,
                     column: 25,
                    },
                   },
                  },
                 ),
                ],
                to: List(
                 List {
                  elements: [
                   String(
                    String_ {
                     parts: [
                      Raw(
                       PartRaw {
                        content: "$HOME/.nix-profile",
                        span: Span {
                         start: Position {
                          line: 612,
                          column: 8,
                         },
                         end: Position {
                          line: 612,
                          column: 26,
                         },
                        },
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 612,
                       column: 7,
                      },
                      end: Position {
                       line: 612,
                       column: 27,
                      },
                     },
                    },
                   ),
                   String(
                    String_ {
                     parts: [
                      Raw(
                       PartRaw {
                        content: "/etc/profiles/per-user/$USER",
                        span: Span {
                         start: Position {
                          line: 613,
                          column: 8,
                         },
                         end: Position {
                          line: 613,
                          column: 36,
                         },
                        },
                       },
                      ),
                     ],
                     span: Span {
                      start: Position {
                       line: 613,
                       column: 7,
                      },
                      end: Position {
                       line: 613,
                       column: 37,
                      },
                     },
                    },
                   ),
                  ],
                  span: Span {
                   start: Position {
                    line: 611,
                    column: 28,
                   },
                   end: Position {
                    line: 614,
                    column: 6,
                   },
                  },
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "assertions",
                   span: Span {
                    start: Position {
                     line: 616,
                     column: 5,
                    },
                    end: Position {
                     line: 616,
                     column: 15,
                    },
                   },
                  },
                 ),
                ],
                to: BinaryOperation(
                 BinaryOperation {
                  left: List(
                   List {
                    elements: [
                     Map(
                      Map {
                       recursive: false,
                       bindings: [
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "assertion",
                             span: Span {
                              start: Position {
                               line: 617,
                               column: 9,
                              },
                              end: Position {
                               line: 617,
                               column: 18,
                              },
                             },
                            },
                           ),
                          ],
                          to: BinaryOperation(
                           BinaryOperation {
                            left: UnaryOperation(
                             UnaryOperation {
                              operator: Not,
                              operand: PropertyAccess(
                               PropertyAccess {
                                expression: Identifier(
                                 Identifier {
                                  id: "cfg",
                                  span: Span {
                                   start: Position {
                                    line: 617,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 617,
                                    column: 25,
                                   },
                                  },
                                 },
                                ),
                                attribute_path: [
                                 Raw(
                                  PartRaw {
                                   content: "enforceIdUniqueness",
                                   span: Span {
                                    start: Position {
                                     line: 617,
                                     column: 26,
                                    },
                                    end: Position {
                                     line: 617,
                                     column: 45,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                default: None,
                               },
                              ),
                              span: Span {
                               start: Position {
                                line: 617,
                                column: 21,
                               },
                               end: Position {
                                line: 617,
                                column: 45,
                               },
                              },
                             },
                            ),
                            operator: LogicalOr,
                            right: BinaryOperation(
                             BinaryOperation {
                              left: Identifier(
                               Identifier {
                                id: "uidsAreUnique",
                                span: Span {
                                 start: Position {
                                  line: 617,
                                  column: 50,
                                 },
                                 end: Position {
                                  line: 617,
                                  column: 63,
                                 },
                                },
                               },
                              ),
                              operator: LogicalAnd,
                              right: Identifier(
                               Identifier {
                                id: "gidsAreUnique",
                                span: Span {
                                 start: Position {
                                  line: 617,
                                  column: 67,
                                 },
                                 end: Position {
                                  line: 617,
                                  column: 80,
                                 },
                                },
                               },
                              ),
                             },
                            ),
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "message",
                             span: Span {
                              start: Position {
                               line: 618,
                               column: 9,
                              },
                              end: Position {
                               line: 618,
                               column: 16,
                              },
                             },
                            },
                           ),
                          ],
                          to: String(
                           String_ {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "UIDs and GIDs must be unique!",
                               span: Span {
                                start: Position {
                                 line: 618,
                                 column: 20,
                                },
                                end: Position {
                                 line: 618,
                                 column: 49,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 618,
                              column: 19,
                             },
                             end: Position {
                              line: 618,
                              column: 50,
                             },
                            },
                           },
                          ),
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 617,
                         column: 7,
                        },
                        end: Position {
                         line: 619,
                         column: 8,
                        },
                       },
                      },
                     ),
                     Map(
                      Map {
                       recursive: false,
                       bindings: [
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "assertion",
                             span: Span {
                              start: Position {
                               line: 627,
                               column: 9,
                              },
                              end: Position {
                               line: 627,
                               column: 18,
                              },
                             },
                            },
                           ),
                          ],
                          to: BinaryOperation(
                           BinaryOperation {
                            left: UnaryOperation(
                             UnaryOperation {
                              operator: Not,
                              operand: PropertyAccess(
                               PropertyAccess {
                                expression: Identifier(
                                 Identifier {
                                  id: "cfg",
                                  span: Span {
                                   start: Position {
                                    line: 627,
                                    column: 22,
                                   },
                                   end: Position {
                                    line: 627,
                                    column: 25,
                                   },
                                  },
                                 },
                                ),
                                attribute_path: [
                                 Raw(
                                  PartRaw {
                                   content: "mutableUsers",
                                   span: Span {
                                    start: Position {
                                     line: 627,
                                     column: 26,
                                    },
                                    end: Position {
                                     line: 627,
                                     column: 38,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                default: None,
                               },
                              ),
                              span: Span {
                               start: Position {
                                line: 627,
                                column: 21,
                               },
                               end: Position {
                                line: 627,
                                column: 38,
                               },
                              },
                             },
                            ),
                            operator: Implication,
                            right: BinaryOperation(
                             BinaryOperation {
                              left: UnaryOperation(
                               UnaryOperation {
                                operator: Not,
                                operand: PropertyAccess(
                                 PropertyAccess {
                                  expression: Identifier(
                                   Identifier {
                                    id: "cfg",
                                    span: Span {
                                     start: Position {
                                      line: 627,
                                      column: 43,
                                     },
                                     end: Position {
                                      line: 627,
                                      column: 46,
                                     },
                                    },
                                   },
                                  ),
                                  attribute_path: [
                                   Raw(
                                    PartRaw {
                                     content: "allowNoPasswordLogin",
                                     span: Span {
                                      start: Position {
                                       line: 627,
                                       column: 47,
                                      },
                                      end: Position {
                                       line: 627,
                                       column: 67,
                                      },
                                     },
                                    },
                                   ),
                                  ],
                                  default: None,
                                 },
                                ),
                                span: Span {
                                 start: Position {
                                  line: 627,
                                  column: 42,
                                 },
                                 end: Position {
                                  line: 627,
                                  column: 67,
                                 },
                                },
                               },
                              ),
                              operator: Implication,
                              right: FunctionApplication(
                               FunctionApplication {
                                function: Identifier(
                                 Identifier {
                                  id: "any",
                                  span: Span {
                                   start: Position {
                                    line: 628,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 628,
                                    column: 14,
                                   },
                                  },
                                 },
                                ),
                                arguments: [
                                 Identifier(
                                  Identifier {
                                   id: "id",
                                   span: Span {
                                    start: Position {
                                     line: 628,
                                     column: 15,
                                    },
                                    end: Position {
                                     line: 628,
                                     column: 17,
                                    },
                                   },
                                  },
                                 ),
                                 BinaryOperation(
                                  BinaryOperation {
                                   left: FunctionApplication(
                                    FunctionApplication {
                                     function: Identifier(
                                      Identifier {
                                       id: "mapAttrsToList",
                                       span: Span {
                                        start: Position {
                                         line: 628,
                                         column: 19,
                                        },
                                        end: Position {
                                         line: 628,
                                         column: 33,
                                        },
                                       },
                                      },
                                     ),
                                     arguments: [
                                      Function(
                                       Function {
                                        head: Simple(
                                         FunctionHeadSimple {
                                          identifier: "name",
                                         },
                                        ),
                                        body: Function(
                                         Function {
                                          head: Simple(
                                           FunctionHeadSimple {
                                            identifier: "cfg",
                                           },
                                          ),
                                          body: BinaryOperation(
                                           BinaryOperation {
                                            left: BinaryOperation(
                                             BinaryOperation {
                                              left: BinaryOperation(
                                               BinaryOperation {
                                                left: BinaryOperation(
                                                 BinaryOperation {
                                                  left: Identifier(
                                                   Identifier {
                                                    id: "name",
                                                    span: Span {
                                                     start: Position {
                                                      line: 629,
                                                      column: 14,
                                                     },
                                                     end: Position {
                                                      line: 629,
                                                      column: 18,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                  operator: EqualTo,
                                                  right: String(
                                                   String_ {
                                                    parts: [
                                                     Raw(
                                                      PartRaw {
                                                       content: "root",
                                                       span: Span {
                                                        start: Position {
                                                         line: 629,
                                                         column: 23,
                                                        },
                                                        end: Position {
                                                         line: 629,
                                                         column: 27,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                    ],
                                                    span: Span {
                                                     start: Position {
                                                      line: 629,
                                                      column: 22,
                                                     },
                                                     end: Position {
                                                      line: 629,
                                                      column: 28,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                 },
                                                ),
                                                operator: LogicalOr,
                                                right: BinaryOperation(
                                                 BinaryOperation {
                                                  left: PropertyAccess(
                                                   PropertyAccess {
                                                    expression: Identifier(
                                                     Identifier {
                                                      id: "cfg",
                                                      span: Span {
                                                       start: Position {
                                                        line: 630,
                                                        column: 17,
                                                       },
                                                       end: Position {
                                                        line: 630,
                                                        column: 20,
                                                       },
                                                      },
                                                     },
                                                    ),
                                                    attribute_path: [
                                                     Raw(
                                                      PartRaw {
                                                       content: "group",
                                                       span: Span {
                                                        start: Position {
                                                         line: 630,
                                                         column: 21,
                                                        },
                                                        end: Position {
                                                         line: 630,
                                                         column: 26,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                    ],
                                                    default: None,
                                                   },
                                                  ),
                                                  operator: EqualTo,
                                                  right: String(
                                                   String_ {
                                                    parts: [
                                                     Raw(
                                                      PartRaw {
                                                       content: "wheel",
                                                       span: Span {
                                                        start: Position {
                                                         line: 630,
                                                         column: 31,
                                                        },
                                                        end: Position {
                                                         line: 630,
                                                         column: 36,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                    ],
                                                    span: Span {
                                                     start: Position {
                                                      line: 630,
                                                      column: 30,
                                                     },
                                                     end: Position {
                                                      line: 630,
                                                      column: 37,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                 },
                                                ),
                                               },
                                              ),
                                              operator: LogicalOr,
                                              right: FunctionApplication(
                                               FunctionApplication {
                                                function: Identifier(
                                                 Identifier {
                                                  id: "elem",
                                                  span: Span {
                                                   start: Position {
                                                    line: 631,
                                                    column: 17,
                                                   },
                                                   end: Position {
                                                    line: 631,
                                                    column: 21,
                                                   },
                                                  },
                                                 },
                                                ),
                                                arguments: [
                                                 String(
                                                  String_ {
                                                   parts: [
                                                    Raw(
                                                     PartRaw {
                                                      content: "wheel",
                                                      span: Span {
                                                       start: Position {
                                                        line: 631,
                                                        column: 23,
                                                       },
                                                       end: Position {
                                                        line: 631,
                                                        column: 28,
                                                       },
                                                      },
                                                     },
                                                    ),
                                                   ],
                                                   span: Span {
                                                    start: Position {
                                                     line: 631,
                                                     column: 22,
                                                    },
                                                    end: Position {
                                                     line: 631,
                                                     column: 29,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                 PropertyAccess(
                                                  PropertyAccess {
                                                   expression: Identifier(
                                                    Identifier {
                                                     id: "cfg",
                                                     span: Span {
                                                      start: Position {
                                                       line: 631,
                                                       column: 30,
                                                      },
                                                      end: Position {
                                                       line: 631,
                                                       column: 33,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                   attribute_path: [
                                                    Raw(
                                                     PartRaw {
                                                      content: "extraGroups",
                                                      span: Span {
                                                       start: Position {
                                                        line: 631,
                                                        column: 34,
                                                       },
                                                       end: Position {
                                                        line: 631,
                                                        column: 45,
                                                       },
                                                      },
                                                     },
                                                    ),
                                                   ],
                                                   default: None,
                                                  },
                                                 ),
                                                ],
                                               },
                                              ),
                                             },
                                            ),
                                            operator: LogicalAnd,
                                            right: BinaryOperation(
                                             BinaryOperation {
                                              left: BinaryOperation(
                                               BinaryOperation {
                                                left: BinaryOperation(
                                                 BinaryOperation {
                                                  left: BinaryOperation(
                                                   BinaryOperation {
                                                    left: FunctionApplication(
                                                     FunctionApplication {
                                                      function: Identifier(
                                                       Identifier {
                                                        id: "allowsLogin",
                                                        span: Span {
                                                         start: Position {
                                                          line: 633,
                                                          column: 14,
                                                         },
                                                         end: Position {
                                                          line: 633,
                                                          column: 25,
                                                         },
                                                        },
                                                       },
                                                      ),
                                                      arguments: [
                                                       PropertyAccess(
                                                        PropertyAccess {
                                                         expression: Identifier(
                                                          Identifier {
                                                           id: "cfg",
                                                           span: Span {
                                                            start: Position {
                                                             line: 633,
                                                             column: 26,
                                                            },
                                                            end: Position {
                                                             line: 633,
                                                             column: 29,
                                                            },
                                                           },
                                                          },
                                                         ),
                                                         attribute_path: [
                                                          Raw(
                                                           PartRaw {
                                                            content: "hashedPassword",
                                                            span: Span {
                                                             start: Position {
                                                              line: 633,
                                                              column: 30,
                                                             },
                                                             end: Position {
                                                              line: 633,
                                                              column: 44,
                                                             },
                                                            },
                                                           },
                                                          ),
                                                         ],
                                                         default: None,
                                                        },
                                                       ),
                                                      ],
                                                     },
                                                    ),
                                                    operator: LogicalOr,
                                                    right: BinaryOperation(
                                                     BinaryOperation {
                                                      left: PropertyAccess(
                                                       PropertyAccess {
                                                        expression: Identifier(
                                                         Identifier {
                                                          id: "cfg",
                                                          span: Span {
                                                           start: Position {
                                                            line: 634,
                                                            column: 17,
                                                           },
                                                           end: Position {
                                                            line: 634,
                                                            column: 20,
                                                           },
                                                          },
                                                         },
                                                        ),
                                                        attribute_path: [
                                                         Raw(
                                                          PartRaw {
                                                           content: "password",
                                                           span: Span {
                                                            start: Position {
                                                             line: 634,
                                                             column: 21,
                                                            },
                                                            end: Position {
                                                             line: 634,
                                                             column: 29,
                                                            },
                                                           },
                                                          },
                                                         ),
                                                        ],
                                                        default: None,
                                                       },
                                                      ),
                                                      operator: NotEqualTo,
                                                      right: Identifier(
                                                       Identifier {
                                                        id: "null",
                                                        span: Span {
                                                         start: Position {
                                                          line: 634,
                                                          column: 33,
                                                         },
                                                         end: Position {
                                                          line: 634,
                                                          column: 37,
                                                         },
                                                        },
                                                       },
                                                      ),
                                                     },
                                                    ),
                                                   },
                                                  ),
                                                  operator: LogicalOr,
                                                  right: BinaryOperation(
                                                   BinaryOperation {
                                                    left: PropertyAccess(
                                                     PropertyAccess {
                                                      expression: Identifier(
                                                       Identifier {
                                                        id: "cfg",
                                                        span: Span {
                                                         start: Position {
                                                          line: 635,
                                                          column: 17,
                                                         },
                                                         end: Position {
                                                          line: 635,
                                                          column: 20,
                                                         },
                                                        },
                                                       },
                                                      ),
                                                      attribute_path: [
                                                       Raw(
                                                        PartRaw {
                                                         content: "passwordFile",
                                                         span: Span {
                                                          start: Position {
                                                           line: 635,
                                                           column: 21,
                                                          },
                                                          end: Position {
                                                           line: 635,
                                                           column: 33,
                                                          },
                                                         },
                                                        },
                                                       ),
                                                      ],
                                                      default: None,
                                                     },
                                                    ),
                                                    operator: NotEqualTo,
                                                    right: Identifier(
                                                     Identifier {
                                                      id: "null",
                                                      span: Span {
                                                       start: Position {
                                                        line: 635,
                                                        column: 37,
                                                       },
                                                       end: Position {
                                                        line: 635,
                                                        column: 41,
                                                       },
                                                      },
                                                     },
                                                    ),
                                                   },
                                                  ),
                                                 },
                                                ),
                                                operator: LogicalOr,
                                                right: BinaryOperation(
                                                 BinaryOperation {
                                                  left: PropertyAccess(
                                                   PropertyAccess {
                                                    expression: Identifier(
                                                     Identifier {
                                                      id: "cfg",
                                                      span: Span {
                                                       start: Position {
                                                        line: 636,
                                                        column: 17,
                                                       },
                                                       end: Position {
                                                        line: 636,
                                                        column: 20,
                                                       },
                                                      },
                                                     },
                                                    ),
                                                    attribute_path: [
                                                     Raw(
                                                      PartRaw {
                                                       content: "openssh",
                                                       span: Span {
                                                        start: Position {
                                                         line: 636,
                                                         column: 21,
                                                        },
                                                        end: Position {
                                                         line: 636,
                                                         column: 28,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                     Raw(
                                                      PartRaw {
                                                       content: "authorizedKeys",
                                                       span: Span {
                                                        start: Position {
                                                         line: 636,
                                                         column: 29,
                                                        },
                                                        end: Position {
                                                         line: 636,
                                                         column: 43,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                     Raw(
                                                      PartRaw {
                                                       content: "keys",
                                                       span: Span {
                                                        start: Position {
                                                         line: 636,
                                                         column: 44,
                                                        },
                                                        end: Position {
                                                         line: 636,
                                                         column: 48,
                                                        },
                                                       },
                                                      },
                                                     ),
                                                    ],
                                                    default: None,
                                                   },
                                                  ),
                                                  operator: NotEqualTo,
                                                  right: List(
                                                   List {
                                                    elements: [],
                                                    span: Span {
                                                     start: Position {
                                                      line: 636,
                                                      column: 52,
                                                     },
                                                     end: Position {
                                                      line: 636,
                                                      column: 54,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                 },
                                                ),
                                               },
                                              ),
                                              operator: LogicalOr,
                                              right: BinaryOperation(
                                               BinaryOperation {
                                                left: PropertyAccess(
                                                 PropertyAccess {
                                                  expression: Identifier(
                                                   Identifier {
                                                    id: "cfg",
                                                    span: Span {
                                                     start: Position {
                                                      line: 637,
                                                      column: 17,
                                                     },
                                                     end: Position {
                                                      line: 637,
                                                      column: 20,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                  attribute_path: [
                                                   Raw(
                                                    PartRaw {
                                                     content: "openssh",
                                                     span: Span {
                                                      start: Position {
                                                       line: 637,
                                                       column: 21,
                                                      },
                                                      end: Position {
                                                       line: 637,
                                                       column: 28,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                   Raw(
                                                    PartRaw {
                                                     content: "authorizedKeys",
                                                     span: Span {
                                                      start: Position {
                                                       line: 637,
                                                       column: 29,
                                                      },
                                                      end: Position {
                                                       line: 637,
                                                       column: 43,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                   Raw(
                                                    PartRaw {
                                                     content: "keyFiles",
                                                     span: Span {
                                                      start: Position {
                                                       line: 637,
                                                       column: 44,
                                                      },
                                                      end: Position {
                                                       line: 637,
                                                       column: 52,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                  ],
                                                  default: None,
                                                 },
                                                ),
                                                operator: NotEqualTo,
                                                right: List(
                                                 List {
                                                  elements: [],
                                                  span: Span {
                                                   start: Position {
                                                    line: 637,
                                                    column: 56,
                                                   },
                                                   end: Position {
                                                    line: 637,
                                                    column: 58,
                                                   },
                                                  },
                                                 },
                                                ),
                                               },
                                              ),
                                             },
                                            ),
                                           },
                                          ),
                                          span: Span {
                                           start: Position {
                                            line: 628,
                                            column: 41,
                                           },
                                           end: Position {
                                            line: 637,
                                            column: 59,
                                           },
                                          },
                                         },
                                        ),
                                        span: Span {
                                         start: Position {
                                          line: 628,
                                          column: 35,
                                         },
                                         end: Position {
                                          line: 637,
                                          column: 59,
                                         },
                                        },
                                       },
                                      ),
                                      PropertyAccess(
                                       PropertyAccess {
                                        expression: Identifier(
                                         Identifier {
                                          id: "cfg",
                                          span: Span {
                                           start: Position {
                                            line: 638,
                                            column: 13,
                                           },
                                           end: Position {
                                            line: 638,
                                            column: 16,
                                           },
                                          },
                                         },
                                        ),
                                        attribute_path: [
                                         Raw(
                                          PartRaw {
                                           content: "users",
                                           span: Span {
                                            start: Position {
                                             line: 638,
                                             column: 17,
                                            },
                                            end: Position {
                                             line: 638,
                                             column: 22,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        default: None,
                                       },
                                      ),
                                     ],
                                    },
                                   ),
                                   operator: Concatenation,
                                   right: List(
                                    List {
                                     elements: [
                                      PropertyAccess(
                                       PropertyAccess {
                                        expression: Identifier(
                                         Identifier {
                                          id: "config",
                                          span: Span {
                                           start: Position {
                                            line: 639,
                                            column: 13,
                                           },
                                           end: Position {
                                            line: 639,
                                            column: 19,
                                           },
                                          },
                                         },
                                        ),
                                        attribute_path: [
                                         Raw(
                                          PartRaw {
                                           content: "security",
                                           span: Span {
                                            start: Position {
                                             line: 639,
                                             column: 20,
                                            },
                                            end: Position {
                                             line: 639,
                                             column: 28,
                                            },
                                           },
                                          },
                                         ),
                                         Raw(
                                          PartRaw {
                                           content: "googleOsLogin",
                                           span: Span {
                                            start: Position {
                                             line: 639,
                                             column: 29,
                                            },
                                            end: Position {
                                             line: 639,
                                             column: 42,
                                            },
                                           },
                                          },
                                         ),
                                         Raw(
                                          PartRaw {
                                           content: "enable",
                                           span: Span {
                                            start: Position {
                                             line: 639,
                                             column: 43,
                                            },
                                            end: Position {
                                             line: 639,
                                             column: 49,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        default: None,
                                       },
                                      ),
                                     ],
                                     span: Span {
                                      start: Position {
                                       line: 638,
                                       column: 26,
                                      },
                                      end: Position {
                                       line: 640,
                                       column: 12,
                                      },
                                     },
                                    },
                                   ),
                                  },
                                 ),
                                ],
                               },
                              ),
                             },
                            ),
                           },
                          ),
                         },
                        ),
                        KeyValue(
                         BindingKeyValue {
                          from: [
                           Raw(
                            PartRaw {
                             content: "message",
                             span: Span {
                              start: Position {
                               line: 641,
                               column: 9,
                              },
                              end: Position {
                               line: 641,
                               column: 16,
                              },
                             },
                            },
                           ),
                          ],
                          to: IndentedString(
                           IndentedString {
                            parts: [
                             Raw(
                              PartRaw {
                               content: "Neither the root account nor any wheel user has a password or SSH authorized key.\nYou must set one to prevent being locked out of your system.\nIf you really want to be locked out of your system, set users.allowNoPasswordLogin = true;\nHowever you are most probably better off by setting users.mutableUsers = true; and\nmanually running passwd root to set the root password.\n",
                               span: Span {
                                start: Position {
                                 line: 642,
                                 column: 1,
                                },
                                end: Position {
                                 line: 647,
                                 column: 11,
                                },
                               },
                              },
                             ),
                            ],
                            span: Span {
                             start: Position {
                              line: 641,
                              column: 19,
                             },
                             end: Position {
                              line: 647,
                              column: 13,
                             },
                            },
                           },
                          ),
                         },
                        ),
                       ],
                       span: Span {
                        start: Position {
                         line: 620,
                         column: 7,
                        },
                        end: Position {
                         line: 648,
                         column: 8,
                        },
                       },
                      },
                     ),
                    ],
                    span: Span {
                     start: Position {
                      line: 616,
                      column: 18,
                     },
                     end: Position {
                      line: 649,
                      column: 6,
                     },
                    },
                   },
                  ),
                  operator: Concatenation,
                  right: FunctionApplication(
                   FunctionApplication {
                    function: Identifier(
                     Identifier {
                      id: "flatten",
                      span: Span {
                       start: Position {
                        line: 649,
                        column: 10,
                       },
                       end: Position {
                        line: 649,
                        column: 17,
                       },
                      },
                     },
                    ),
                    arguments: [
                     FunctionApplication(
                      FunctionApplication {
                       function: Identifier(
                        Identifier {
                         id: "flip",
                         span: Span {
                          start: Position {
                           line: 649,
                           column: 19,
                          },
                          end: Position {
                           line: 649,
                           column: 23,
                          },
                         },
                        },
                       ),
                       arguments: [
                        Identifier(
                         Identifier {
                          id: "mapAttrsToList",
                          span: Span {
                           start: Position {
                            line: 649,
                            column: 24,
                           },
                           end: Position {
                            line: 649,
                            column: 38,
                           },
                          },
                         },
                        ),
                        PropertyAccess(
                         PropertyAccess {
                          expression: Identifier(
                           Identifier {
                            id: "cfg",
                            span: Span {
                             start: Position {
                              line: 649,
                              column: 39,
                             },
                             end: Position {
                              line: 649,
                              column: 42,
                             },
                            },
                           },
                          ),
                          attribute_path: [
                           Raw(
                            PartRaw {
                             content: "users",
                             span: Span {
                              start: Position {
                               line: 649,
                               column: 43,
                              },
                              end: Position {
                               line: 649,
                               column: 48,
                              },
                             },
                            },
                           ),
                          ],
                          default: None,
                         },
                        ),
                        Function(
                         Function {
                          head: Simple(
                           FunctionHeadSimple {
                            identifier: "name",
                           },
                          ),
                          body: Function(
                           Function {
                            head: Simple(
                             FunctionHeadSimple {
                              identifier: "user",
                             },
                            ),
                            body: List(
                             List {
                              elements: [
                               Map(
                                Map {
                                 recursive: false,
                                 bindings: [
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "assertion",
                                       span: Span {
                                        start: Position {
                                         line: 652,
                                         column: 9,
                                        },
                                        end: Position {
                                         line: 652,
                                         column: 18,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: BinaryOperation(
                                     BinaryOperation {
                                      left: BinaryOperation(
                                       BinaryOperation {
                                        left: PropertyAccess(
                                         PropertyAccess {
                                          expression: Identifier(
                                           Identifier {
                                            id: "user",
                                            span: Span {
                                             start: Position {
                                              line: 652,
                                              column: 22,
                                             },
                                             end: Position {
                                              line: 652,
                                              column: 26,
                                             },
                                            },
                                           },
                                          ),
                                          attribute_path: [
                                           Raw(
                                            PartRaw {
                                             content: "hashedPassword",
                                             span: Span {
                                              start: Position {
                                               line: 652,
                                               column: 27,
                                              },
                                              end: Position {
                                               line: 652,
                                               column: 41,
                                              },
                                             },
                                            },
                                           ),
                                          ],
                                          default: None,
                                         },
                                        ),
                                        operator: NotEqualTo,
                                        right: Identifier(
                                         Identifier {
                                          id: "null",
                                          span: Span {
                                           start: Position {
                                            line: 652,
                                            column: 45,
                                           },
                                           end: Position {
                                            line: 652,
                                            column: 49,
                                           },
                                          },
                                         },
                                        ),
                                       },
                                      ),
                                      operator: Implication,
                                      right: BinaryOperation(
                                       BinaryOperation {
                                        left: FunctionApplication(
                                         FunctionApplication {
                                          function: PropertyAccess(
                                           PropertyAccess {
                                            expression: Identifier(
                                             Identifier {
                                              id: "builtins",
                                              span: Span {
                                               start: Position {
                                                line: 653,
                                                column: 13,
                                               },
                                               end: Position {
                                                line: 653,
                                                column: 21,
                                               },
                                              },
                                             },
                                            ),
                                            attribute_path: [
                                             Raw(
                                              PartRaw {
                                               content: "match",
                                               span: Span {
                                                start: Position {
                                                 line: 653,
                                                 column: 22,
                                                },
                                                end: Position {
                                                 line: 653,
                                                 column: 27,
                                                },
                                               },
                                              },
                                             ),
                                            ],
                                            default: None,
                                           },
                                          ),
                                          arguments: [
                                           String(
                                            String_ {
                                             parts: [
                                              Raw(
                                               PartRaw {
                                                content: ".*:.*",
                                                span: Span {
                                                 start: Position {
                                                  line: 653,
                                                  column: 29,
                                                 },
                                                 end: Position {
                                                  line: 653,
                                                  column: 34,
                                                 },
                                                },
                                               },
                                              ),
                                             ],
                                             span: Span {
                                              start: Position {
                                               line: 653,
                                               column: 28,
                                              },
                                              end: Position {
                                               line: 653,
                                               column: 35,
                                              },
                                             },
                                            },
                                           ),
                                           PropertyAccess(
                                            PropertyAccess {
                                             expression: Identifier(
                                              Identifier {
                                               id: "user",
                                               span: Span {
                                                start: Position {
                                                 line: 653,
                                                 column: 36,
                                                },
                                                end: Position {
                                                 line: 653,
                                                 column: 40,
                                                },
                                               },
                                              },
                                             ),
                                             attribute_path: [
                                              Raw(
                                               PartRaw {
                                                content: "hashedPassword",
                                                span: Span {
                                                 start: Position {
                                                  line: 653,
                                                  column: 41,
                                                 },
                                                 end: Position {
                                                  line: 653,
                                                  column: 55,
                                                 },
                                                },
                                               },
                                              ),
                                             ],
                                             default: None,
                                            },
                                           ),
                                          ],
                                         },
                                        ),
                                        operator: EqualTo,
                                        right: Identifier(
                                         Identifier {
                                          id: "null",
                                          span: Span {
                                           start: Position {
                                            line: 653,
                                            column: 59,
                                           },
                                           end: Position {
                                            line: 653,
                                            column: 63,
                                           },
                                          },
                                         },
                                        ),
                                       },
                                      ),
                                     },
                                    ),
                                   },
                                  ),
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "message",
                                       span: Span {
                                        start: Position {
                                         line: 654,
                                         column: 9,
                                        },
                                        end: Position {
                                         line: 654,
                                         column: 16,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: IndentedString(
                                     IndentedString {
                                      parts: [
                                       Raw(
                                        PartRaw {
                                         content: "            The password hash of user \"",
                                         span: Span {
                                          start: Position {
                                           line: 655,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 655,
                                           column: 40,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 655,
                                               column: 42,
                                              },
                                              end: Position {
                                               line: 655,
                                               column: 46,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 655,
                                                column: 47,
                                               },
                                               end: Position {
                                                line: 655,
                                                column: 51,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: "\" contains a \":\" character.\nThis is invalid and would break the login system because the fields\nof /etc/shadow (file where hashes are stored) are colon-separated.\nPlease check the value of option `users.users.\"",
                                         span: Span {
                                          start: Position {
                                           line: 655,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 658,
                                           column: 60,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 658,
                                               column: 62,
                                              },
                                              end: Position {
                                               line: 658,
                                               column: 66,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 658,
                                                column: 67,
                                               },
                                               end: Position {
                                                line: 658,
                                                column: 71,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: "\".hashedPassword`.",
                                         span: Span {
                                          start: Position {
                                           line: 655,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 658,
                                           column: 90,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      span: Span {
                                       start: Position {
                                        line: 654,
                                        column: 19,
                                       },
                                       end: Position {
                                        line: 658,
                                        column: 92,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 651,
                                   column: 9,
                                  },
                                  end: Position {
                                   line: 659,
                                   column: 12,
                                  },
                                 },
                                },
                               ),
                               Map(
                                Map {
                                 recursive: false,
                                 bindings: [
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "assertion",
                                       span: Span {
                                        start: Position {
                                         line: 661,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 661,
                                         column: 22,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: LetIn(
                                     LetIn {
                                      bindings: [
                                       KeyValue(
                                        BindingKeyValue {
                                         from: [
                                          Raw(
                                           PartRaw {
                                            content: "xor",
                                            span: Span {
                                             start: Position {
                                              line: 662,
                                              column: 15,
                                             },
                                             end: Position {
                                              line: 662,
                                              column: 18,
                                             },
                                            },
                                           },
                                          ),
                                         ],
                                         to: Function(
                                          Function {
                                           head: Simple(
                                            FunctionHeadSimple {
                                             identifier: "a",
                                            },
                                           ),
                                           body: Function(
                                            Function {
                                             head: Simple(
                                              FunctionHeadSimple {
                                               identifier: "b",
                                              },
                                             ),
                                             body: BinaryOperation(
                                              BinaryOperation {
                                               left: BinaryOperation(
                                                BinaryOperation {
                                                 left: Identifier(
                                                  Identifier {
                                                   id: "a",
                                                   span: Span {
                                                    start: Position {
                                                     line: 662,
                                                     column: 27,
                                                    },
                                                    end: Position {
                                                     line: 662,
                                                     column: 28,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                 operator: LogicalAnd,
                                                 right: UnaryOperation(
                                                  UnaryOperation {
                                                   operator: Not,
                                                   operand: Identifier(
                                                    Identifier {
                                                     id: "b",
                                                     span: Span {
                                                      start: Position {
                                                       line: 662,
                                                       column: 33,
                                                      },
                                                      end: Position {
                                                       line: 662,
                                                       column: 34,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                   span: Span {
                                                    start: Position {
                                                     line: 662,
                                                     column: 32,
                                                    },
                                                    end: Position {
                                                     line: 662,
                                                     column: 34,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                },
                                               ),
                                               operator: LogicalOr,
                                               right: BinaryOperation(
                                                BinaryOperation {
                                                 left: Identifier(
                                                  Identifier {
                                                   id: "b",
                                                   span: Span {
                                                    start: Position {
                                                     line: 662,
                                                     column: 38,
                                                    },
                                                    end: Position {
                                                     line: 662,
                                                     column: 39,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                 operator: LogicalAnd,
                                                 right: UnaryOperation(
                                                  UnaryOperation {
                                                   operator: Not,
                                                   operand: Identifier(
                                                    Identifier {
                                                     id: "a",
                                                     span: Span {
                                                      start: Position {
                                                       line: 662,
                                                       column: 44,
                                                      },
                                                      end: Position {
                                                       line: 662,
                                                       column: 45,
                                                      },
                                                     },
                                                    },
                                                   ),
                                                   span: Span {
                                                    start: Position {
                                                     line: 662,
                                                     column: 43,
                                                    },
                                                    end: Position {
                                                     line: 662,
                                                     column: 45,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                },
                                               ),
                                              },
                                             ),
                                             span: Span {
                                              start: Position {
                                               line: 662,
                                               column: 24,
                                              },
                                              end: Position {
                                               line: 662,
                                               column: 45,
                                              },
                                             },
                                            },
                                           ),
                                           span: Span {
                                            start: Position {
                                             line: 662,
                                             column: 21,
                                            },
                                            end: Position {
                                             line: 662,
                                             column: 45,
                                            },
                                           },
                                          },
                                         ),
                                        },
                                       ),
                                       KeyValue(
                                        BindingKeyValue {
                                         from: [
                                          Raw(
                                           PartRaw {
                                            content: "isEffectivelySystemUser",
                                            span: Span {
                                             start: Position {
                                              line: 663,
                                              column: 15,
                                             },
                                             end: Position {
                                              line: 663,
                                              column: 38,
                                             },
                                            },
                                           },
                                          ),
                                         ],
                                         to: BinaryOperation(
                                          BinaryOperation {
                                           left: PropertyAccess(
                                            PropertyAccess {
                                             expression: Identifier(
                                              Identifier {
                                               id: "user",
                                               span: Span {
                                                start: Position {
                                                 line: 663,
                                                 column: 41,
                                                },
                                                end: Position {
                                                 line: 663,
                                                 column: 45,
                                                },
                                               },
                                              },
                                             ),
                                             attribute_path: [
                                              Raw(
                                               PartRaw {
                                                content: "isSystemUser",
                                                span: Span {
                                                 start: Position {
                                                  line: 663,
                                                  column: 46,
                                                 },
                                                 end: Position {
                                                  line: 663,
                                                  column: 58,
                                                 },
                                                },
                                               },
                                              ),
                                             ],
                                             default: None,
                                            },
                                           ),
                                           operator: LogicalOr,
                                           right: BinaryOperation(
                                            BinaryOperation {
                                             left: BinaryOperation(
                                              BinaryOperation {
                                               left: PropertyAccess(
                                                PropertyAccess {
                                                 expression: Identifier(
                                                  Identifier {
                                                   id: "user",
                                                   span: Span {
                                                    start: Position {
                                                     line: 663,
                                                     column: 63,
                                                    },
                                                    end: Position {
                                                     line: 663,
                                                     column: 67,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                 attribute_path: [
                                                  Raw(
                                                   PartRaw {
                                                    content: "uid",
                                                    span: Span {
                                                     start: Position {
                                                      line: 663,
                                                      column: 68,
                                                     },
                                                     end: Position {
                                                      line: 663,
                                                      column: 71,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                 ],
                                                 default: None,
                                                },
                                               ),
                                               operator: NotEqualTo,
                                               right: Identifier(
                                                Identifier {
                                                 id: "null",
                                                 span: Span {
                                                  start: Position {
                                                   line: 663,
                                                   column: 75,
                                                  },
                                                  end: Position {
                                                   line: 663,
                                                   column: 79,
                                                  },
                                                 },
                                                },
                                               ),
                                              },
                                             ),
                                             operator: LogicalAnd,
                                             right: BinaryOperation(
                                              BinaryOperation {
                                               left: PropertyAccess(
                                                PropertyAccess {
                                                 expression: Identifier(
                                                  Identifier {
                                                   id: "user",
                                                   span: Span {
                                                    start: Position {
                                                     line: 663,
                                                     column: 83,
                                                    },
                                                    end: Position {
                                                     line: 663,
                                                     column: 87,
                                                    },
                                                   },
                                                  },
                                                 ),
                                                 attribute_path: [
                                                  Raw(
                                                   PartRaw {
                                                    content: "uid",
                                                    span: Span {
                                                     start: Position {
                                                      line: 663,
                                                      column: 88,
                                                     },
                                                     end: Position {
                                                      line: 663,
                                                      column: 91,
                                                     },
                                                    },
                                                   },
                                                  ),
                                                 ],
                                                 default: None,
                                                },
                                               ),
                                               operator: LessThan,
                                               right: Integer(
                                                Integer {
                                                 value: "500",
                                                 span: Span {
                                                  start: Position {
                                                   line: 663,
                                                   column: 94,
                                                  },
                                                  end: Position {
                                                   line: 663,
                                                   column: 97,
                                                  },
                                                 },
                                                },
                                               ),
                                              },
                                             ),
                                            },
                                           ),
                                          },
                                         ),
                                        },
                                       ),
                                      ],
                                      target: FunctionApplication(
                                       FunctionApplication {
                                        function: Identifier(
                                         Identifier {
                                          id: "xor",
                                          span: Span {
                                           start: Position {
                                            line: 664,
                                            column: 16,
                                           },
                                           end: Position {
                                            line: 664,
                                            column: 19,
                                           },
                                          },
                                         },
                                        ),
                                        arguments: [
                                         Identifier(
                                          Identifier {
                                           id: "isEffectivelySystemUser",
                                           span: Span {
                                            start: Position {
                                             line: 664,
                                             column: 20,
                                            },
                                            end: Position {
                                             line: 664,
                                             column: 43,
                                            },
                                           },
                                          },
                                         ),
                                         PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 664,
                                               column: 44,
                                              },
                                              end: Position {
                                               line: 664,
                                               column: 48,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "isNormalUser",
                                              span: Span {
                                               start: Position {
                                                line: 664,
                                                column: 49,
                                               },
                                               end: Position {
                                                line: 664,
                                                column: 61,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        ],
                                       },
                                      ),
                                      span: Span {
                                       start: Position {
                                        line: 661,
                                        column: 25,
                                       },
                                       end: Position {
                                        line: 664,
                                        column: 61,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "message",
                                       span: Span {
                                        start: Position {
                                         line: 665,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 665,
                                         column: 20,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: IndentedString(
                                     IndentedString {
                                      parts: [
                                       Raw(
                                        PartRaw {
                                         content: "Exactly one of users.users.",
                                         span: Span {
                                          start: Position {
                                           line: 666,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 666,
                                           column: 42,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 666,
                                               column: 44,
                                              },
                                              end: Position {
                                               line: 666,
                                               column: 48,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 666,
                                                column: 49,
                                               },
                                               end: Position {
                                                line: 666,
                                                column: 53,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: ".isSystemUser and users.users.",
                                         span: Span {
                                          start: Position {
                                           line: 666,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 666,
                                           column: 84,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 666,
                                               column: 86,
                                              },
                                              end: Position {
                                               line: 666,
                                               column: 90,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 666,
                                                column: 91,
                                               },
                                               end: Position {
                                                line: 666,
                                                column: 95,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: ".isNormalUser must be set.\n",
                                         span: Span {
                                          start: Position {
                                           line: 666,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 667,
                                           column: 13,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      span: Span {
                                       start: Position {
                                        line: 665,
                                        column: 23,
                                       },
                                       end: Position {
                                        line: 667,
                                        column: 15,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 660,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 668,
                                   column: 12,
                                  },
                                 },
                                },
                               ),
                               Map(
                                Map {
                                 recursive: false,
                                 bindings: [
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "assertion",
                                       span: Span {
                                        start: Position {
                                         line: 670,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 670,
                                         column: 22,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: BinaryOperation(
                                     BinaryOperation {
                                      left: PropertyAccess(
                                       PropertyAccess {
                                        expression: Identifier(
                                         Identifier {
                                          id: "user",
                                          span: Span {
                                           start: Position {
                                            line: 670,
                                            column: 25,
                                           },
                                           end: Position {
                                            line: 670,
                                            column: 29,
                                           },
                                          },
                                         },
                                        ),
                                        attribute_path: [
                                         Raw(
                                          PartRaw {
                                           content: "group",
                                           span: Span {
                                            start: Position {
                                             line: 670,
                                             column: 30,
                                            },
                                            end: Position {
                                             line: 670,
                                             column: 35,
                                            },
                                           },
                                          },
                                         ),
                                        ],
                                        default: None,
                                       },
                                      ),
                                      operator: NotEqualTo,
                                      right: String(
                                       String_ {
                                        parts: [],
                                        span: Span {
                                         start: Position {
                                          line: 670,
                                          column: 39,
                                         },
                                         end: Position {
                                          line: 670,
                                          column: 41,
                                         },
                                        },
                                       },
                                      ),
                                     },
                                    ),
                                   },
                                  ),
                                  KeyValue(
                                   BindingKeyValue {
                                    from: [
                                     Raw(
                                      PartRaw {
                                       content: "message",
                                       span: Span {
                                        start: Position {
                                         line: 671,
                                         column: 13,
                                        },
                                        end: Position {
                                         line: 671,
                                         column: 20,
                                        },
                                       },
                                      },
                                     ),
                                    ],
                                    to: IndentedString(
                                     IndentedString {
                                      parts: [
                                       Raw(
                                        PartRaw {
                                         content: "users.users.",
                                         span: Span {
                                          start: Position {
                                           line: 672,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 672,
                                           column: 27,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 672,
                                               column: 29,
                                              },
                                              end: Position {
                                               line: 672,
                                               column: 33,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 672,
                                                column: 34,
                                               },
                                               end: Position {
                                                line: 672,
                                                column: 38,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: ".group is unset. This used to default to\nnogroup, but this is unsafe. For example you can create a group\nfor this user with:\nusers.users.",
                                         span: Span {
                                          start: Position {
                                           line: 672,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 675,
                                           column: 27,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 675,
                                               column: 29,
                                              },
                                              end: Position {
                                               line: 675,
                                               column: 33,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 675,
                                                column: 34,
                                               },
                                               end: Position {
                                                line: 675,
                                                column: 38,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: ".group = \"",
                                         span: Span {
                                          start: Position {
                                           line: 672,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 675,
                                           column: 49,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 675,
                                               column: 51,
                                              },
                                              end: Position {
                                               line: 675,
                                               column: 55,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 675,
                                                column: 56,
                                               },
                                               end: Position {
                                                line: 675,
                                                column: 60,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: "\";\nusers.groups.",
                                         span: Span {
                                          start: Position {
                                           line: 672,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 676,
                                           column: 28,
                                          },
                                         },
                                        },
                                       ),
                                       Interpolation(
                                        PartInterpolation {
                                         expression: PropertyAccess(
                                          PropertyAccess {
                                           expression: Identifier(
                                            Identifier {
                                             id: "user",
                                             span: Span {
                                              start: Position {
                                               line: 676,
                                               column: 30,
                                              },
                                              end: Position {
                                               line: 676,
                                               column: 34,
                                              },
                                             },
                                            },
                                           ),
                                           attribute_path: [
                                            Raw(
                                             PartRaw {
                                              content: "name",
                                              span: Span {
                                               start: Position {
                                                line: 676,
                                                column: 35,
                                               },
                                               end: Position {
                                                line: 676,
                                                column: 39,
                                               },
                                              },
                                             },
                                            ),
                                           ],
                                           default: None,
                                          },
                                         ),
                                        },
                                       ),
                                       Raw(
                                        PartRaw {
                                         content: " = {};\n",
                                         span: Span {
                                          start: Position {
                                           line: 672,
                                           column: 1,
                                          },
                                          end: Position {
                                           line: 677,
                                           column: 13,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      span: Span {
                                       start: Position {
                                        line: 671,
                                        column: 23,
                                       },
                                       end: Position {
                                        line: 677,
                                        column: 15,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 669,
                                   column: 11,
                                  },
                                  end: Position {
                                   line: 678,
                                   column: 12,
                                  },
                                 },
                                },
                               ),
                              ],
                              span: Span {
                               start: Position {
                                line: 650,
                                column: 7,
                               },
                               end: Position {
                                line: 679,
                                column: 10,
                               },
                              },
                             },
                            ),
                            span: Span {
                             start: Position {
                              line: 649,
                              column: 56,
                             },
                             end: Position {
                              line: 679,
                              column: 10,
                             },
                            },
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 649,
                            column: 50,
                           },
                           end: Position {
                            line: 679,
                            column: 10,
                           },
                          },
                         },
                        ),
                       ],
                      },
                     ),
                    ],
                   },
                  ),
                 },
                ),
               },
              ),
              KeyValue(
               BindingKeyValue {
                from: [
                 Raw(
                  PartRaw {
                   content: "warnings",
                   span: Span {
                    start: Position {
                     line: 682,
                     column: 5,
                    },
                    end: Position {
                     line: 682,
                     column: 13,
                    },
                   },
                  },
                 ),
                ],
                to: FunctionApplication(
                 FunctionApplication {
                  function: PropertyAccess(
                   PropertyAccess {
                    expression: Identifier(
                     Identifier {
                      id: "builtins",
                      span: Span {
                       start: Position {
                        line: 683,
                        column: 7,
                       },
                       end: Position {
                        line: 683,
                        column: 15,
                       },
                      },
                     },
                    ),
                    attribute_path: [
                     Raw(
                      PartRaw {
                       content: "filter",
                       span: Span {
                        start: Position {
                         line: 683,
                         column: 16,
                        },
                        end: Position {
                         line: 683,
                         column: 22,
                        },
                       },
                      },
                     ),
                    ],
                    default: None,
                   },
                  ),
                  arguments: [
                   Function(
                    Function {
                     head: Simple(
                      FunctionHeadSimple {
                       identifier: "x",
                      },
                     ),
                     body: BinaryOperation(
                      BinaryOperation {
                       left: Identifier(
                        Identifier {
                         id: "x",
                         span: Span {
                          start: Position {
                           line: 683,
                           column: 27,
                          },
                          end: Position {
                           line: 683,
                           column: 28,
                          },
                         },
                        },
                       ),
                       operator: NotEqualTo,
                       right: Identifier(
                        Identifier {
                         id: "null",
                         span: Span {
                          start: Position {
                           line: 683,
                           column: 32,
                          },
                          end: Position {
                           line: 683,
                           column: 36,
                          },
                         },
                        },
                       ),
                      },
                     ),
                     span: Span {
                      start: Position {
                       line: 683,
                       column: 24,
                      },
                      end: Position {
                       line: 683,
                       column: 36,
                      },
                     },
                    },
                   ),
                   FunctionApplication(
                    FunctionApplication {
                     function: Identifier(
                      Identifier {
                       id: "flip",
                       span: Span {
                        start: Position {
                         line: 684,
                         column: 9,
                        },
                        end: Position {
                         line: 684,
                         column: 13,
                        },
                       },
                      },
                     ),
                     arguments: [
                      Identifier(
                       Identifier {
                        id: "mapAttrsToList",
                        span: Span {
                         start: Position {
                          line: 684,
                          column: 14,
                         },
                         end: Position {
                          line: 684,
                          column: 28,
                         },
                        },
                       },
                      ),
                      PropertyAccess(
                       PropertyAccess {
                        expression: Identifier(
                         Identifier {
                          id: "cfg",
                          span: Span {
                           start: Position {
                            line: 684,
                            column: 29,
                           },
                           end: Position {
                            line: 684,
                            column: 32,
                           },
                          },
                         },
                        ),
                        attribute_path: [
                         Raw(
                          PartRaw {
                           content: "users",
                           span: Span {
                            start: Position {
                             line: 684,
                             column: 33,
                            },
                            end: Position {
                             line: 684,
                             column: 38,
                            },
                           },
                          },
                         ),
                        ],
                        default: None,
                       },
                      ),
                      Function(
                       Function {
                        head: Simple(
                         FunctionHeadSimple {
                          identifier: "_",
                         },
                        ),
                        body: Function(
                         Function {
                          head: Simple(
                           FunctionHeadSimple {
                            identifier: "user",
                           },
                          ),
                          body: LetIn(
                           LetIn {
                            bindings: [
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "sep",
                                  span: Span {
                                   start: Position {
                                    line: 694,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 694,
                                    column: 14,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Raw(
                                   PartRaw {
                                    content: "\\$",
                                    span: Span {
                                     start: Position {
                                      line: 694,
                                      column: 18,
                                     },
                                     end: Position {
                                      line: 694,
                                      column: 21,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 694,
                                   column: 17,
                                  },
                                  end: Position {
                                   line: 694,
                                   column: 22,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "base64",
                                  span: Span {
                                   start: Position {
                                    line: 695,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 695,
                                    column: 17,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Raw(
                                   PartRaw {
                                    content: "[a-zA-Z0-9./]+",
                                    span: Span {
                                     start: Position {
                                      line: 695,
                                      column: 21,
                                     },
                                     end: Position {
                                      line: 695,
                                      column: 35,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 695,
                                   column: 20,
                                  },
                                  end: Position {
                                   line: 695,
                                   column: 36,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "id",
                                  span: Span {
                                   start: Position {
                                    line: 696,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 696,
                                    column: 13,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Raw(
                                   PartRaw {
                                    content: "[a-z0-9-]+",
                                    span: Span {
                                     start: Position {
                                      line: 696,
                                      column: 17,
                                     },
                                     end: Position {
                                      line: 696,
                                      column: 27,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 696,
                                   column: 16,
                                  },
                                  end: Position {
                                   line: 696,
                                   column: 28,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "value",
                                  span: Span {
                                   start: Position {
                                    line: 697,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 697,
                                    column: 16,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Raw(
                                   PartRaw {
                                    content: "[a-zA-Z0-9/+.-]+",
                                    span: Span {
                                     start: Position {
                                      line: 697,
                                      column: 20,
                                     },
                                     end: Position {
                                      line: 697,
                                      column: 36,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 697,
                                   column: 19,
                                  },
                                  end: Position {
                                   line: 697,
                                   column: 37,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "options",
                                  span: Span {
                                   start: Position {
                                    line: 698,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 698,
                                    column: 18,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "id",
                                      span: Span {
                                       start: Position {
                                        line: 698,
                                        column: 24,
                                       },
                                       end: Position {
                                        line: 698,
                                        column: 26,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: "(=",
                                    span: Span {
                                     start: Position {
                                      line: 698,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 698,
                                      column: 29,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "value",
                                      span: Span {
                                       start: Position {
                                        line: 698,
                                        column: 31,
                                       },
                                       end: Position {
                                        line: 698,
                                        column: 36,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: ")?(,",
                                    span: Span {
                                     start: Position {
                                      line: 698,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 698,
                                      column: 41,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "id",
                                      span: Span {
                                       start: Position {
                                        line: 698,
                                        column: 43,
                                       },
                                       end: Position {
                                        line: 698,
                                        column: 45,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: "=",
                                    span: Span {
                                     start: Position {
                                      line: 698,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 698,
                                      column: 47,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "value",
                                      span: Span {
                                       start: Position {
                                        line: 698,
                                        column: 49,
                                       },
                                       end: Position {
                                        line: 698,
                                        column: 54,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: ")*",
                                    span: Span {
                                     start: Position {
                                      line: 698,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 698,
                                      column: 57,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 698,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 698,
                                   column: 58,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "scheme",
                                  span: Span {
                                   start: Position {
                                    line: 699,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 699,
                                    column: 17,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "id",
                                      span: Span {
                                       start: Position {
                                        line: 699,
                                        column: 24,
                                       },
                                       end: Position {
                                        line: 699,
                                        column: 26,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: "(",
                                    span: Span {
                                     start: Position {
                                      line: 699,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 699,
                                      column: 28,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "sep",
                                      span: Span {
                                       start: Position {
                                        line: 699,
                                        column: 30,
                                       },
                                       end: Position {
                                        line: 699,
                                        column: 33,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "options",
                                      span: Span {
                                       start: Position {
                                        line: 699,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 699,
                                        column: 43,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: ")?",
                                    span: Span {
                                     start: Position {
                                      line: 699,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 699,
                                      column: 46,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 699,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 699,
                                   column: 47,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "content",
                                  span: Span {
                                   start: Position {
                                    line: 700,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 700,
                                    column: 18,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "base64",
                                      span: Span {
                                       start: Position {
                                        line: 700,
                                        column: 24,
                                       },
                                       end: Position {
                                        line: 700,
                                        column: 30,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "sep",
                                      span: Span {
                                       start: Position {
                                        line: 700,
                                        column: 33,
                                       },
                                       end: Position {
                                        line: 700,
                                        column: 36,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "base64",
                                      span: Span {
                                       start: Position {
                                        line: 700,
                                        column: 39,
                                       },
                                       end: Position {
                                        line: 700,
                                        column: 45,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: "(",
                                    span: Span {
                                     start: Position {
                                      line: 700,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 700,
                                      column: 47,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "sep",
                                      span: Span {
                                       start: Position {
                                        line: 700,
                                        column: 49,
                                       },
                                       end: Position {
                                        line: 700,
                                        column: 52,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "base64",
                                      span: Span {
                                       start: Position {
                                        line: 700,
                                        column: 55,
                                       },
                                       end: Position {
                                        line: 700,
                                        column: 61,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: ")?",
                                    span: Span {
                                     start: Position {
                                      line: 700,
                                      column: 22,
                                     },
                                     end: Position {
                                      line: 700,
                                      column: 64,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 700,
                                   column: 21,
                                  },
                                  end: Position {
                                   line: 700,
                                   column: 65,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                             KeyValue(
                              BindingKeyValue {
                               from: [
                                Raw(
                                 PartRaw {
                                  content: "mcf",
                                  span: Span {
                                   start: Position {
                                    line: 701,
                                    column: 11,
                                   },
                                   end: Position {
                                    line: 701,
                                    column: 14,
                                   },
                                  },
                                 },
                                ),
                               ],
                               to: String(
                                String_ {
                                 parts: [
                                  Raw(
                                   PartRaw {
                                    content: "^",
                                    span: Span {
                                     start: Position {
                                      line: 701,
                                      column: 18,
                                     },
                                     end: Position {
                                      line: 701,
                                      column: 25,
                                     },
                                    },
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "sep",
                                      span: Span {
                                       start: Position {
                                        line: 701,
                                        column: 21,
                                       },
                                       end: Position {
                                        line: 701,
                                        column: 24,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "scheme",
                                      span: Span {
                                       start: Position {
                                        line: 701,
                                        column: 27,
                                       },
                                       end: Position {
                                        line: 701,
                                        column: 33,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "sep",
                                      span: Span {
                                       start: Position {
                                        line: 701,
                                        column: 36,
                                       },
                                       end: Position {
                                        line: 701,
                                        column: 39,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Interpolation(
                                   PartInterpolation {
                                    expression: Identifier(
                                     Identifier {
                                      id: "content",
                                      span: Span {
                                       start: Position {
                                        line: 701,
                                        column: 42,
                                       },
                                       end: Position {
                                        line: 701,
                                        column: 49,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                  Raw(
                                   PartRaw {
                                    content: "$",
                                    span: Span {
                                     start: Position {
                                      line: 701,
                                      column: 18,
                                     },
                                     end: Position {
                                      line: 701,
                                      column: 51,
                                     },
                                    },
                                   },
                                  ),
                                 ],
                                 span: Span {
                                  start: Position {
                                   line: 701,
                                   column: 17,
                                  },
                                  end: Position {
                                   line: 701,
                                   column: 52,
                                  },
                                 },
                                },
                               ),
                              },
                             ),
                            ],
                            target: IfThenElse(
                             IfThenElse {
                              predicate: BinaryOperation(
                               BinaryOperation {
                                left: BinaryOperation(
                                 BinaryOperation {
                                  left: FunctionApplication(
                                   FunctionApplication {
                                    function: Identifier(
                                     Identifier {
                                      id: "allowsLogin",
                                      span: Span {
                                       start: Position {
                                        line: 703,
                                        column: 13,
                                       },
                                       end: Position {
                                        line: 703,
                                        column: 24,
                                       },
                                      },
                                     },
                                    ),
                                    arguments: [
                                     PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "user",
                                         span: Span {
                                          start: Position {
                                           line: 703,
                                           column: 25,
                                          },
                                          end: Position {
                                           line: 703,
                                           column: 29,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "hashedPassword",
                                          span: Span {
                                           start: Position {
                                            line: 703,
                                            column: 30,
                                           },
                                           end: Position {
                                            line: 703,
                                            column: 44,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                  operator: LogicalAnd,
                                  right: BinaryOperation(
                                   BinaryOperation {
                                    left: PropertyAccess(
                                     PropertyAccess {
                                      expression: Identifier(
                                       Identifier {
                                        id: "user",
                                        span: Span {
                                         start: Position {
                                          line: 704,
                                          column: 16,
                                         },
                                         end: Position {
                                          line: 704,
                                          column: 20,
                                         },
                                        },
                                       },
                                      ),
                                      attribute_path: [
                                       Raw(
                                        PartRaw {
                                         content: "hashedPassword",
                                         span: Span {
                                          start: Position {
                                           line: 704,
                                           column: 21,
                                          },
                                          end: Position {
                                           line: 704,
                                           column: 35,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      default: None,
                                     },
                                    ),
                                    operator: NotEqualTo,
                                    right: String(
                                     String_ {
                                      parts: [],
                                      span: Span {
                                       start: Position {
                                        line: 704,
                                        column: 39,
                                       },
                                       end: Position {
                                        line: 704,
                                        column: 41,
                                       },
                                      },
                                     },
                                    ),
                                   },
                                  ),
                                 },
                                ),
                                operator: LogicalAnd,
                                right: BinaryOperation(
                                 BinaryOperation {
                                  left: FunctionApplication(
                                   FunctionApplication {
                                    function: PropertyAccess(
                                     PropertyAccess {
                                      expression: Identifier(
                                       Identifier {
                                        id: "builtins",
                                        span: Span {
                                         start: Position {
                                          line: 705,
                                          column: 16,
                                         },
                                         end: Position {
                                          line: 705,
                                          column: 24,
                                         },
                                        },
                                       },
                                      ),
                                      attribute_path: [
                                       Raw(
                                        PartRaw {
                                         content: "match",
                                         span: Span {
                                          start: Position {
                                           line: 705,
                                           column: 25,
                                          },
                                          end: Position {
                                           line: 705,
                                           column: 30,
                                          },
                                         },
                                        },
                                       ),
                                      ],
                                      default: None,
                                     },
                                    ),
                                    arguments: [
                                     Identifier(
                                      Identifier {
                                       id: "mcf",
                                       span: Span {
                                        start: Position {
                                         line: 705,
                                         column: 31,
                                        },
                                        end: Position {
                                         line: 705,
                                         column: 34,
                                        },
                                       },
                                      },
                                     ),
                                     PropertyAccess(
                                      PropertyAccess {
                                       expression: Identifier(
                                        Identifier {
                                         id: "user",
                                         span: Span {
                                          start: Position {
                                           line: 705,
                                           column: 35,
                                          },
                                          end: Position {
                                           line: 705,
                                           column: 39,
                                          },
                                         },
                                        },
                                       ),
                                       attribute_path: [
                                        Raw(
                                         PartRaw {
                                          content: "hashedPassword",
                                          span: Span {
                                           start: Position {
                                            line: 705,
                                            column: 40,
                                           },
                                           end: Position {
                                            line: 705,
                                            column: 54,
                                           },
                                          },
                                         },
                                        ),
                                       ],
                                       default: None,
                                      },
                                     ),
                                    ],
                                   },
                                  ),
                                  operator: EqualTo,
                                  right: Identifier(
                                   Identifier {
                                    id: "null",
                                    span: Span {
                                     start: Position {
                                      line: 705,
                                      column: 58,
                                     },
                                     end: Position {
                                      line: 705,
                                      column: 62,
                                     },
                                    },
                                   },
                                  ),
                                 },
                                ),
                               },
                              ),
                              then: IndentedString(
                               IndentedString {
                                parts: [
                                 Raw(
                                  PartRaw {
                                   content: "          The password hash of user \"",
                                   span: Span {
                                    start: Position {
                                     line: 707,
                                     column: 1,
                                    },
                                    end: Position {
                                     line: 707,
                                     column: 38,
                                    },
                                   },
                                  },
                                 ),
                                 Interpolation(
                                  PartInterpolation {
                                   expression: PropertyAccess(
                                    PropertyAccess {
                                     expression: Identifier(
                                      Identifier {
                                       id: "user",
                                       span: Span {
                                        start: Position {
                                         line: 707,
                                         column: 40,
                                        },
                                        end: Position {
                                         line: 707,
                                         column: 44,
                                        },
                                       },
                                      },
                                     ),
                                     attribute_path: [
                                      Raw(
                                       PartRaw {
                                        content: "name",
                                        span: Span {
                                         start: Position {
                                          line: 707,
                                          column: 45,
                                         },
                                         end: Position {
                                          line: 707,
                                          column: 49,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     default: None,
                                    },
                                   ),
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "\" may be invalid. You must set a\nvalid hash or the user will be locked out of their account. Please\ncheck the value of option `users.users.\"",
                                   span: Span {
                                    start: Position {
                                     line: 707,
                                     column: 1,
                                    },
                                    end: Position {
                                     line: 709,
                                     column: 51,
                                    },
                                   },
                                  },
                                 ),
                                 Interpolation(
                                  PartInterpolation {
                                   expression: PropertyAccess(
                                    PropertyAccess {
                                     expression: Identifier(
                                      Identifier {
                                       id: "user",
                                       span: Span {
                                        start: Position {
                                         line: 709,
                                         column: 53,
                                        },
                                        end: Position {
                                         line: 709,
                                         column: 57,
                                        },
                                       },
                                      },
                                     ),
                                     attribute_path: [
                                      Raw(
                                       PartRaw {
                                        content: "name",
                                        span: Span {
                                         start: Position {
                                          line: 709,
                                          column: 58,
                                         },
                                         end: Position {
                                          line: 709,
                                          column: 62,
                                         },
                                        },
                                       },
                                      ),
                                     ],
                                     default: None,
                                    },
                                   ),
                                  },
                                 ),
                                 Raw(
                                  PartRaw {
                                   content: "\".hashedPassword`.",
                                   span: Span {
                                    start: Position {
                                     line: 707,
                                     column: 1,
                                    },
                                    end: Position {
                                     line: 709,
                                     column: 81,
                                    },
                                   },
                                  },
                                 ),
                                ],
                                span: Span {
                                 start: Position {
                                  line: 706,
                                  column: 14,
                                 },
                                 end: Position {
                                  line: 709,
                                  column: 83,
                                 },
                                },
                               },
                              ),
                              else_: Identifier(
                               Identifier {
                                id: "null",
                                span: Span {
                                 start: Position {
                                  line: 710,
                                  column: 14,
                                 },
                                 end: Position {
                                  line: 710,
                                  column: 18,
                                 },
                                },
                               },
                              ),
                              span: Span {
                               start: Position {
                                line: 703,
                                column: 9,
                               },
                               end: Position {
                                line: 710,
                                column: 18,
                               },
                              },
                             },
                            ),
                            span: Span {
                             start: Position {
                              line: 693,
                              column: 9,
                             },
                             end: Position {
                              line: 710,
                              column: 18,
                             },
                            },
                           },
                          ),
                          span: Span {
                           start: Position {
                            line: 684,
                            column: 43,
                           },
                           end: Position {
                            line: 710,
                            column: 18,
                           },
                          },
                         },
                        ),
                        span: Span {
                         start: Position {
                          line: 684,
                          column: 40,
                         },
                         end: Position {
                          line: 710,
                          column: 18,
                         },
                        },
                       },
                      ),
                     ],
                    },
                   ),
                  ],
                 },
                ),
               },
              ),
             ],
             span: Span {
              start: Position {
               line: 539,
               column: 12,
              },
              end: Position {
               line: 713,
               column: 4,
              },
             },
            },
           ),
          },
         ),
        ],
        span: Span {
         start: Position {
          line: 448,
          column: 4,
         },
         end: Position {
          line: 715,
          column: 2,
         },
        },
       },
      ),
      span: Span {
       start: Position {
        line: 5,
        column: 1,
       },
       end: Position {
        line: 715,
        column: 2,
       },
      },
     },
    ),
    span: Span {
     start: Position {
      line: 3,
      column: 1,
     },
     end: Position {
      line: 715,
      column: 2,
     },
    },
   },
  ),
  span: Span {
   start: Position {
    line: 1,
    column: 1,
   },
   end: Position {
    line: 715,
    column: 2,
   },
  },
 },
)