Makes the golden IR more human-readable.
diff --git a/front_end/glue.py b/front_end/glue.py
index 3a2f0fa..691b126 100644
--- a/front_end/glue.py
+++ b/front_end/glue.py
@@ -111,7 +111,7 @@
 
   def format_module_ir(self):
     """Renders self.ir in a human-readable format."""
-    return repr(self.ir)
+    return self.ir.to_json(indent=2)
 
 
 def format_production_set(productions):
diff --git a/front_end/glue_test.py b/front_end/glue_test.py
index 1435922..2f3f5fa 100644
--- a/front_end/glue_test.py
+++ b/front_end/glue_test.py
@@ -155,7 +155,8 @@
     self.assertEqual(_SPAN_SE_LOG_FILE_PARSE_TREE_TEXT.strip(),
                      debug_info.format_parse_tree().strip())
     self.assertEqual(_SPAN_SE_LOG_FILE_IR, debug_info.ir)
-    self.assertEqual(repr(_SPAN_SE_LOG_FILE_IR), debug_info.format_module_ir())
+    self.assertEqual(_SPAN_SE_LOG_FILE_IR.to_json(indent=2),
+                     debug_info.format_module_ir())
 
   def test_parse_emboss_file(self):
     # parse_emboss_file calls parse_module, wraps its results, and calls
diff --git a/testdata/golden/span_se_log_file_status.ir.txt b/testdata/golden/span_se_log_file_status.ir.txt
index ad6fcaf..942b49a 100644
--- a/testdata/golden/span_se_log_file_status.ir.txt
+++ b/testdata/golden/span_se_log_file_status.ir.txt
@@ -1 +1,1087 @@
-{"attribute":[{"is_default":true,"name":{"source_location":{"end":{"column":21,"line":17},"is_synthetic":false,"start":{"column":11,"line":17}},"text":"byte_order"},"source_location":{"end":{"column":38,"line":17},"is_synthetic":false,"start":{"column":1,"line":17}},"value":{"source_location":{"end":{"column":37,"line":17},"is_synthetic":false,"start":{"column":23,"line":17}},"string_constant":{"source_location":{"end":{"column":37,"line":17},"is_synthetic":false,"start":{"column":23,"line":17}},"text":"LittleEndian"}}},{"back_end":{"source_location":{"end":{"column":7,"line":18},"is_synthetic":false,"start":{"column":2,"line":18}},"text":"cpp"},"is_default":false,"name":{"source_location":{"end":{"column":17,"line":18},"is_synthetic":false,"start":{"column":8,"line":18}},"text":"namespace"},"source_location":{"end":{"column":1,"line":20},"is_synthetic":false,"start":{"column":1,"line":18}},"value":{"source_location":{"end":{"column":33,"line":18},"is_synthetic":false,"start":{"column":19,"line":18}},"string_constant":{"source_location":{"end":{"column":33,"line":18},"is_synthetic":false,"start":{"column":19,"line":18}},"text":"emboss::test"}}}],"documentation":[{"source_location":{"end":{"column":1,"line":16},"is_synthetic":false,"start":{"column":1,"line":15}},"text":"This is a simple, real-world example structure."}],"foreign_import":[{"file_name":{"source_location":{"end":{"column":1,"line":16},"is_synthetic":false,"start":{"column":1,"line":16}},"text":""},"local_name":{"source_location":{"end":{"column":1,"line":16},"is_synthetic":false,"start":{"column":1,"line":16}},"text":""},"source_location":{"end":{"column":1,"line":16},"is_synthetic":false,"start":{"column":1,"line":16}}}],"source_location":{"end":{"column":1,"line":26},"is_synthetic":false,"start":{"column":1,"line":1}},"type":[{"addressable_unit":8,"name":{"name":{"source_location":{"end":{"column":21,"line":21},"is_synthetic":false,"start":{"column":8,"line":21}},"text":"LogFileStatus"},"source_location":{"end":{"column":21,"line":21},"is_synthetic":false,"start":{"column":8,"line":21}}},"source_location":{"end":{"column":1,"line":26},"is_synthetic":false,"start":{"column":1,"line":21}},"structure":{"field":[{"existence_condition":{"boolean_constant":{"source_location":{"end":{"column":35,"line":22},"is_synthetic":false,"start":{"column":3,"line":22}},"value":true},"source_location":{"end":{"column":35,"line":22},"is_synthetic":false,"start":{"column":3,"line":22}}},"location":{"size":{"constant":{"source_location":{"end":{"column":9,"line":22},"is_synthetic":false,"start":{"column":8,"line":22}},"value":"4"},"source_location":{"end":{"column":9,"line":22},"is_synthetic":false,"start":{"column":8,"line":22}}},"source_location":{"end":{"column":10,"line":22},"is_synthetic":false,"start":{"column":3,"line":22}},"start":{"constant":{"source_location":{"end":{"column":4,"line":22},"is_synthetic":false,"start":{"column":3,"line":22}},"value":"0"},"source_location":{"end":{"column":4,"line":22},"is_synthetic":false,"start":{"column":3,"line":22}}}},"name":{"name":{"source_location":{"end":{"column":35,"line":22},"is_synthetic":false,"start":{"column":25,"line":22}},"text":"file_state"},"source_location":{"end":{"column":35,"line":22},"is_synthetic":false,"start":{"column":25,"line":22}}},"source_location":{"end":{"column":35,"line":22},"start":{"column":3,"line":22}},"type":{"atomic_type":{"reference":{"source_location":{"end":{"column":17,"line":22},"is_synthetic":false,"start":{"column":13,"line":22}},"source_name":[{"source_location":{"end":{"column":17,"line":22},"is_synthetic":false,"start":{"column":13,"line":22}},"text":"UInt"}]},"source_location":{"end":{"column":17,"line":22},"is_synthetic":false,"start":{"column":13,"line":22}}},"source_location":{"end":{"column":17,"line":22},"is_synthetic":false,"start":{"column":13,"line":22}}}},{"existence_condition":{"boolean_constant":{"source_location":{"end":{"column":34,"line":23},"is_synthetic":false,"start":{"column":3,"line":23}},"value":true},"source_location":{"end":{"column":34,"line":23},"is_synthetic":false,"start":{"column":3,"line":23}}},"location":{"size":{"constant":{"source_location":{"end":{"column":10,"line":23},"is_synthetic":false,"start":{"column":8,"line":23}},"value":"12"},"source_location":{"end":{"column":10,"line":23},"is_synthetic":false,"start":{"column":8,"line":23}}},"source_location":{"end":{"column":11,"line":23},"is_synthetic":false,"start":{"column":3,"line":23}},"start":{"constant":{"source_location":{"end":{"column":4,"line":23},"is_synthetic":false,"start":{"column":3,"line":23}},"value":"4"},"source_location":{"end":{"column":4,"line":23},"is_synthetic":false,"start":{"column":3,"line":23}}}},"name":{"name":{"source_location":{"end":{"column":34,"line":23},"is_synthetic":false,"start":{"column":25,"line":23}},"text":"file_name"},"source_location":{"end":{"column":34,"line":23},"is_synthetic":false,"start":{"column":25,"line":23}}},"source_location":{"end":{"column":34,"line":23},"start":{"column":3,"line":23}},"type":{"array_type":{"base_type":{"atomic_type":{"reference":{"source_location":{"end":{"column":17,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}},"source_name":[{"source_location":{"end":{"column":17,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}},"text":"UInt"}]},"source_location":{"end":{"column":17,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}}},"size_in_bits":{"constant":{"source_location":{"end":{"column":19,"line":23},"is_synthetic":false,"start":{"column":18,"line":23}},"value":"8"},"source_location":{"end":{"column":19,"line":23},"is_synthetic":false,"start":{"column":17,"line":23}}},"source_location":{"end":{"column":19,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}}},"element_count":{"constant":{"source_location":{"end":{"column":22,"line":23},"is_synthetic":false,"start":{"column":20,"line":23}},"value":"12"},"source_location":{"end":{"column":23,"line":23},"is_synthetic":false,"start":{"column":19,"line":23}}},"source_location":{"end":{"column":23,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}}},"source_location":{"end":{"column":23,"line":23},"is_synthetic":false,"start":{"column":13,"line":23}}}},{"existence_condition":{"boolean_constant":{"source_location":{"end":{"column":37,"line":24},"is_synthetic":false,"start":{"column":3,"line":24}},"value":true},"source_location":{"end":{"column":37,"line":24},"is_synthetic":false,"start":{"column":3,"line":24}}},"location":{"size":{"constant":{"source_location":{"end":{"column":9,"line":24},"is_synthetic":false,"start":{"column":8,"line":24}},"value":"4"},"source_location":{"end":{"column":9,"line":24},"is_synthetic":false,"start":{"column":8,"line":24}}},"source_location":{"end":{"column":10,"line":24},"is_synthetic":false,"start":{"column":3,"line":24}},"start":{"constant":{"source_location":{"end":{"column":5,"line":24},"is_synthetic":false,"start":{"column":3,"line":24}},"value":"16"},"source_location":{"end":{"column":5,"line":24},"is_synthetic":false,"start":{"column":3,"line":24}}}},"name":{"name":{"source_location":{"end":{"column":37,"line":24},"is_synthetic":false,"start":{"column":25,"line":24}},"text":"file_size_kb"},"source_location":{"end":{"column":37,"line":24},"is_synthetic":false,"start":{"column":25,"line":24}}},"source_location":{"end":{"column":37,"line":24},"start":{"column":3,"line":24}},"type":{"atomic_type":{"reference":{"source_location":{"end":{"column":17,"line":24},"is_synthetic":false,"start":{"column":13,"line":24}},"source_name":[{"source_location":{"end":{"column":17,"line":24},"is_synthetic":false,"start":{"column":13,"line":24}},"text":"UInt"}]},"source_location":{"end":{"column":17,"line":24},"is_synthetic":false,"start":{"column":13,"line":24}}},"source_location":{"end":{"column":17,"line":24},"is_synthetic":false,"start":{"column":13,"line":24}}}},{"existence_condition":{"boolean_constant":{"source_location":{"end":{"column":30,"line":25},"is_synthetic":false,"start":{"column":3,"line":25}},"value":true},"source_location":{"end":{"column":30,"line":25},"is_synthetic":false,"start":{"column":3,"line":25}}},"location":{"size":{"constant":{"source_location":{"end":{"column":9,"line":25},"is_synthetic":false,"start":{"column":8,"line":25}},"value":"4"},"source_location":{"end":{"column":9,"line":25},"is_synthetic":false,"start":{"column":8,"line":25}}},"source_location":{"end":{"column":10,"line":25},"is_synthetic":false,"start":{"column":3,"line":25}},"start":{"constant":{"source_location":{"end":{"column":5,"line":25},"is_synthetic":false,"start":{"column":3,"line":25}},"value":"20"},"source_location":{"end":{"column":5,"line":25},"is_synthetic":false,"start":{"column":3,"line":25}}}},"name":{"name":{"source_location":{"end":{"column":30,"line":25},"is_synthetic":false,"start":{"column":25,"line":25}},"text":"media"},"source_location":{"end":{"column":30,"line":25},"is_synthetic":false,"start":{"column":25,"line":25}}},"source_location":{"end":{"column":30,"line":25},"start":{"column":3,"line":25}},"type":{"atomic_type":{"reference":{"source_location":{"end":{"column":17,"line":25},"is_synthetic":false,"start":{"column":13,"line":25}},"source_name":[{"source_location":{"end":{"column":17,"line":25},"is_synthetic":false,"start":{"column":13,"line":25}},"text":"UInt"}]},"source_location":{"end":{"column":17,"line":25},"is_synthetic":false,"start":{"column":13,"line":25}}},"source_location":{"end":{"column":17,"line":25},"is_synthetic":false,"start":{"column":13,"line":25}}}}],"source_location":{"end":{"column":1,"line":26},"start":{"column":1,"line":21}}}}]}
+{
+  "attribute": [
+    {
+      "name": {
+        "text": "byte_order",
+        "source_location": {
+          "start": {
+            "line": 17,
+            "column": 11
+          },
+          "end": {
+            "line": 17,
+            "column": 21
+          },
+          "is_synthetic": false
+        }
+      },
+      "value": {
+        "string_constant": {
+          "text": "LittleEndian",
+          "source_location": {
+            "start": {
+              "line": 17,
+              "column": 23
+            },
+            "end": {
+              "line": 17,
+              "column": 37
+            },
+            "is_synthetic": false
+          }
+        },
+        "source_location": {
+          "start": {
+            "line": 17,
+            "column": 23
+          },
+          "end": {
+            "line": 17,
+            "column": 37
+          },
+          "is_synthetic": false
+        }
+      },
+      "is_default": true,
+      "source_location": {
+        "start": {
+          "line": 17,
+          "column": 1
+        },
+        "end": {
+          "line": 17,
+          "column": 38
+        },
+        "is_synthetic": false
+      }
+    },
+    {
+      "name": {
+        "text": "namespace",
+        "source_location": {
+          "start": {
+            "line": 18,
+            "column": 8
+          },
+          "end": {
+            "line": 18,
+            "column": 17
+          },
+          "is_synthetic": false
+        }
+      },
+      "value": {
+        "string_constant": {
+          "text": "emboss::test",
+          "source_location": {
+            "start": {
+              "line": 18,
+              "column": 19
+            },
+            "end": {
+              "line": 18,
+              "column": 33
+            },
+            "is_synthetic": false
+          }
+        },
+        "source_location": {
+          "start": {
+            "line": 18,
+            "column": 19
+          },
+          "end": {
+            "line": 18,
+            "column": 33
+          },
+          "is_synthetic": false
+        }
+      },
+      "is_default": false,
+      "back_end": {
+        "text": "cpp",
+        "source_location": {
+          "start": {
+            "line": 18,
+            "column": 2
+          },
+          "end": {
+            "line": 18,
+            "column": 7
+          },
+          "is_synthetic": false
+        }
+      },
+      "source_location": {
+        "start": {
+          "line": 18,
+          "column": 1
+        },
+        "end": {
+          "line": 20,
+          "column": 1
+        },
+        "is_synthetic": false
+      }
+    }
+  ],
+  "type": [
+    {
+      "structure": {
+        "field": [
+          {
+            "location": {
+              "start": {
+                "constant": {
+                  "value": "0",
+                  "source_location": {
+                    "start": {
+                      "line": 22,
+                      "column": 3
+                    },
+                    "end": {
+                      "line": 22,
+                      "column": 4
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 22,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 22,
+                    "column": 4
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "size": {
+                "constant": {
+                  "value": "4",
+                  "source_location": {
+                    "start": {
+                      "line": 22,
+                      "column": 8
+                    },
+                    "end": {
+                      "line": 22,
+                      "column": 9
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 22,
+                    "column": 8
+                  },
+                  "end": {
+                    "line": 22,
+                    "column": 9
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 22,
+                  "column": 3
+                },
+                "end": {
+                  "line": 22,
+                  "column": 10
+                },
+                "is_synthetic": false
+              }
+            },
+            "type": {
+              "atomic_type": {
+                "reference": {
+                  "source_name": [
+                    {
+                      "text": "UInt",
+                      "source_location": {
+                        "start": {
+                          "line": 22,
+                          "column": 13
+                        },
+                        "end": {
+                          "line": 22,
+                          "column": 17
+                        },
+                        "is_synthetic": false
+                      }
+                    }
+                  ],
+                  "source_location": {
+                    "start": {
+                      "line": 22,
+                      "column": 13
+                    },
+                    "end": {
+                      "line": 22,
+                      "column": 17
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 22,
+                    "column": 13
+                  },
+                  "end": {
+                    "line": 22,
+                    "column": 17
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 22,
+                  "column": 13
+                },
+                "end": {
+                  "line": 22,
+                  "column": 17
+                },
+                "is_synthetic": false
+              }
+            },
+            "name": {
+              "name": {
+                "text": "file_state",
+                "source_location": {
+                  "start": {
+                    "line": 22,
+                    "column": 25
+                  },
+                  "end": {
+                    "line": 22,
+                    "column": 35
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 22,
+                  "column": 25
+                },
+                "end": {
+                  "line": 22,
+                  "column": 35
+                },
+                "is_synthetic": false
+              }
+            },
+            "source_location": {
+              "start": {
+                "line": 22,
+                "column": 3
+              },
+              "end": {
+                "line": 22,
+                "column": 35
+              }
+            },
+            "existence_condition": {
+              "source_location": {
+                "start": {
+                  "line": 22,
+                  "column": 3
+                },
+                "end": {
+                  "line": 22,
+                  "column": 35
+                },
+                "is_synthetic": false
+              },
+              "boolean_constant": {
+                "source_location": {
+                  "start": {
+                    "line": 22,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 22,
+                    "column": 35
+                  },
+                  "is_synthetic": false
+                },
+                "value": true
+              }
+            }
+          },
+          {
+            "location": {
+              "start": {
+                "constant": {
+                  "value": "4",
+                  "source_location": {
+                    "start": {
+                      "line": 23,
+                      "column": 3
+                    },
+                    "end": {
+                      "line": 23,
+                      "column": 4
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 23,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 23,
+                    "column": 4
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "size": {
+                "constant": {
+                  "value": "12",
+                  "source_location": {
+                    "start": {
+                      "line": 23,
+                      "column": 8
+                    },
+                    "end": {
+                      "line": 23,
+                      "column": 10
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 23,
+                    "column": 8
+                  },
+                  "end": {
+                    "line": 23,
+                    "column": 10
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 23,
+                  "column": 3
+                },
+                "end": {
+                  "line": 23,
+                  "column": 11
+                },
+                "is_synthetic": false
+              }
+            },
+            "type": {
+              "array_type": {
+                "base_type": {
+                  "atomic_type": {
+                    "reference": {
+                      "source_name": [
+                        {
+                          "text": "UInt",
+                          "source_location": {
+                            "start": {
+                              "line": 23,
+                              "column": 13
+                            },
+                            "end": {
+                              "line": 23,
+                              "column": 17
+                            },
+                            "is_synthetic": false
+                          }
+                        }
+                      ],
+                      "source_location": {
+                        "start": {
+                          "line": 23,
+                          "column": 13
+                        },
+                        "end": {
+                          "line": 23,
+                          "column": 17
+                        },
+                        "is_synthetic": false
+                      }
+                    },
+                    "source_location": {
+                      "start": {
+                        "line": 23,
+                        "column": 13
+                      },
+                      "end": {
+                        "line": 23,
+                        "column": 17
+                      },
+                      "is_synthetic": false
+                    }
+                  },
+                  "size_in_bits": {
+                    "constant": {
+                      "value": "8",
+                      "source_location": {
+                        "start": {
+                          "line": 23,
+                          "column": 18
+                        },
+                        "end": {
+                          "line": 23,
+                          "column": 19
+                        },
+                        "is_synthetic": false
+                      }
+                    },
+                    "source_location": {
+                      "start": {
+                        "line": 23,
+                        "column": 17
+                      },
+                      "end": {
+                        "line": 23,
+                        "column": 19
+                      },
+                      "is_synthetic": false
+                    }
+                  },
+                  "source_location": {
+                    "start": {
+                      "line": 23,
+                      "column": 13
+                    },
+                    "end": {
+                      "line": 23,
+                      "column": 19
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "element_count": {
+                  "constant": {
+                    "value": "12",
+                    "source_location": {
+                      "start": {
+                        "line": 23,
+                        "column": 20
+                      },
+                      "end": {
+                        "line": 23,
+                        "column": 22
+                      },
+                      "is_synthetic": false
+                    }
+                  },
+                  "source_location": {
+                    "start": {
+                      "line": 23,
+                      "column": 19
+                    },
+                    "end": {
+                      "line": 23,
+                      "column": 23
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 23,
+                    "column": 13
+                  },
+                  "end": {
+                    "line": 23,
+                    "column": 23
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 23,
+                  "column": 13
+                },
+                "end": {
+                  "line": 23,
+                  "column": 23
+                },
+                "is_synthetic": false
+              }
+            },
+            "name": {
+              "name": {
+                "text": "file_name",
+                "source_location": {
+                  "start": {
+                    "line": 23,
+                    "column": 25
+                  },
+                  "end": {
+                    "line": 23,
+                    "column": 34
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 23,
+                  "column": 25
+                },
+                "end": {
+                  "line": 23,
+                  "column": 34
+                },
+                "is_synthetic": false
+              }
+            },
+            "source_location": {
+              "start": {
+                "line": 23,
+                "column": 3
+              },
+              "end": {
+                "line": 23,
+                "column": 34
+              }
+            },
+            "existence_condition": {
+              "source_location": {
+                "start": {
+                  "line": 23,
+                  "column": 3
+                },
+                "end": {
+                  "line": 23,
+                  "column": 34
+                },
+                "is_synthetic": false
+              },
+              "boolean_constant": {
+                "source_location": {
+                  "start": {
+                    "line": 23,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 23,
+                    "column": 34
+                  },
+                  "is_synthetic": false
+                },
+                "value": true
+              }
+            }
+          },
+          {
+            "location": {
+              "start": {
+                "constant": {
+                  "value": "16",
+                  "source_location": {
+                    "start": {
+                      "line": 24,
+                      "column": 3
+                    },
+                    "end": {
+                      "line": 24,
+                      "column": 5
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 24,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 24,
+                    "column": 5
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "size": {
+                "constant": {
+                  "value": "4",
+                  "source_location": {
+                    "start": {
+                      "line": 24,
+                      "column": 8
+                    },
+                    "end": {
+                      "line": 24,
+                      "column": 9
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 24,
+                    "column": 8
+                  },
+                  "end": {
+                    "line": 24,
+                    "column": 9
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 24,
+                  "column": 3
+                },
+                "end": {
+                  "line": 24,
+                  "column": 10
+                },
+                "is_synthetic": false
+              }
+            },
+            "type": {
+              "atomic_type": {
+                "reference": {
+                  "source_name": [
+                    {
+                      "text": "UInt",
+                      "source_location": {
+                        "start": {
+                          "line": 24,
+                          "column": 13
+                        },
+                        "end": {
+                          "line": 24,
+                          "column": 17
+                        },
+                        "is_synthetic": false
+                      }
+                    }
+                  ],
+                  "source_location": {
+                    "start": {
+                      "line": 24,
+                      "column": 13
+                    },
+                    "end": {
+                      "line": 24,
+                      "column": 17
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 24,
+                    "column": 13
+                  },
+                  "end": {
+                    "line": 24,
+                    "column": 17
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 24,
+                  "column": 13
+                },
+                "end": {
+                  "line": 24,
+                  "column": 17
+                },
+                "is_synthetic": false
+              }
+            },
+            "name": {
+              "name": {
+                "text": "file_size_kb",
+                "source_location": {
+                  "start": {
+                    "line": 24,
+                    "column": 25
+                  },
+                  "end": {
+                    "line": 24,
+                    "column": 37
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 24,
+                  "column": 25
+                },
+                "end": {
+                  "line": 24,
+                  "column": 37
+                },
+                "is_synthetic": false
+              }
+            },
+            "source_location": {
+              "start": {
+                "line": 24,
+                "column": 3
+              },
+              "end": {
+                "line": 24,
+                "column": 37
+              }
+            },
+            "existence_condition": {
+              "source_location": {
+                "start": {
+                  "line": 24,
+                  "column": 3
+                },
+                "end": {
+                  "line": 24,
+                  "column": 37
+                },
+                "is_synthetic": false
+              },
+              "boolean_constant": {
+                "source_location": {
+                  "start": {
+                    "line": 24,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 24,
+                    "column": 37
+                  },
+                  "is_synthetic": false
+                },
+                "value": true
+              }
+            }
+          },
+          {
+            "location": {
+              "start": {
+                "constant": {
+                  "value": "20",
+                  "source_location": {
+                    "start": {
+                      "line": 25,
+                      "column": 3
+                    },
+                    "end": {
+                      "line": 25,
+                      "column": 5
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 25,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 25,
+                    "column": 5
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "size": {
+                "constant": {
+                  "value": "4",
+                  "source_location": {
+                    "start": {
+                      "line": 25,
+                      "column": 8
+                    },
+                    "end": {
+                      "line": 25,
+                      "column": 9
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 25,
+                    "column": 8
+                  },
+                  "end": {
+                    "line": 25,
+                    "column": 9
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 25,
+                  "column": 3
+                },
+                "end": {
+                  "line": 25,
+                  "column": 10
+                },
+                "is_synthetic": false
+              }
+            },
+            "type": {
+              "atomic_type": {
+                "reference": {
+                  "source_name": [
+                    {
+                      "text": "UInt",
+                      "source_location": {
+                        "start": {
+                          "line": 25,
+                          "column": 13
+                        },
+                        "end": {
+                          "line": 25,
+                          "column": 17
+                        },
+                        "is_synthetic": false
+                      }
+                    }
+                  ],
+                  "source_location": {
+                    "start": {
+                      "line": 25,
+                      "column": 13
+                    },
+                    "end": {
+                      "line": 25,
+                      "column": 17
+                    },
+                    "is_synthetic": false
+                  }
+                },
+                "source_location": {
+                  "start": {
+                    "line": 25,
+                    "column": 13
+                  },
+                  "end": {
+                    "line": 25,
+                    "column": 17
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 25,
+                  "column": 13
+                },
+                "end": {
+                  "line": 25,
+                  "column": 17
+                },
+                "is_synthetic": false
+              }
+            },
+            "name": {
+              "name": {
+                "text": "media",
+                "source_location": {
+                  "start": {
+                    "line": 25,
+                    "column": 25
+                  },
+                  "end": {
+                    "line": 25,
+                    "column": 30
+                  },
+                  "is_synthetic": false
+                }
+              },
+              "source_location": {
+                "start": {
+                  "line": 25,
+                  "column": 25
+                },
+                "end": {
+                  "line": 25,
+                  "column": 30
+                },
+                "is_synthetic": false
+              }
+            },
+            "source_location": {
+              "start": {
+                "line": 25,
+                "column": 3
+              },
+              "end": {
+                "line": 25,
+                "column": 30
+              }
+            },
+            "existence_condition": {
+              "source_location": {
+                "start": {
+                  "line": 25,
+                  "column": 3
+                },
+                "end": {
+                  "line": 25,
+                  "column": 30
+                },
+                "is_synthetic": false
+              },
+              "boolean_constant": {
+                "source_location": {
+                  "start": {
+                    "line": 25,
+                    "column": 3
+                  },
+                  "end": {
+                    "line": 25,
+                    "column": 30
+                  },
+                  "is_synthetic": false
+                },
+                "value": true
+              }
+            }
+          }
+        ],
+        "source_location": {
+          "start": {
+            "line": 21,
+            "column": 1
+          },
+          "end": {
+            "line": 26,
+            "column": 1
+          }
+        }
+      },
+      "addressable_unit": 8,
+      "source_location": {
+        "start": {
+          "line": 21,
+          "column": 1
+        },
+        "end": {
+          "line": 26,
+          "column": 1
+        },
+        "is_synthetic": false
+      },
+      "name": {
+        "name": {
+          "text": "LogFileStatus",
+          "source_location": {
+            "start": {
+              "line": 21,
+              "column": 8
+            },
+            "end": {
+              "line": 21,
+              "column": 21
+            },
+            "is_synthetic": false
+          }
+        },
+        "source_location": {
+          "start": {
+            "line": 21,
+            "column": 8
+          },
+          "end": {
+            "line": 21,
+            "column": 21
+          },
+          "is_synthetic": false
+        }
+      }
+    }
+  ],
+  "documentation": [
+    {
+      "text": "This is a simple, real-world example structure.",
+      "source_location": {
+        "start": {
+          "line": 15,
+          "column": 1
+        },
+        "end": {
+          "line": 16,
+          "column": 1
+        },
+        "is_synthetic": false
+      }
+    }
+  ],
+  "foreign_import": [
+    {
+      "file_name": {
+        "text": "",
+        "source_location": {
+          "start": {
+            "line": 16,
+            "column": 1
+          },
+          "end": {
+            "line": 16,
+            "column": 1
+          },
+          "is_synthetic": false
+        }
+      },
+      "local_name": {
+        "text": "",
+        "source_location": {
+          "start": {
+            "line": 16,
+            "column": 1
+          },
+          "end": {
+            "line": 16,
+            "column": 1
+          },
+          "is_synthetic": false
+        }
+      },
+      "source_location": {
+        "start": {
+          "line": 16,
+          "column": 1
+        },
+        "end": {
+          "line": 16,
+          "column": 1
+        },
+        "is_synthetic": false
+      }
+    }
+  ],
+  "source_location": {
+    "start": {
+      "line": 1,
+      "column": 1
+    },
+    "end": {
+      "line": 26,
+      "column": 1
+    },
+    "is_synthetic": false
+  }
+}