diff --git a/doc/Memory.md b/doc/Memory.md
index ed503e252f2605f4b511b9a316c6ece9941eef27..c937a16a0e50f7bf8fd4fba53b458093af466a7a 100644
--- a/doc/Memory.md
+++ b/doc/Memory.md
@@ -86,13 +86,11 @@ In short, the complilation process can be broken down to the following steps:
 
 1. Parsing input
     * this processes the .rs files and produces the AST ("abstract syntax tree")
-
     * the AST is defined in syntax/ast.rs. It is intended to match the lexical syntax of the Rust language quite closely.
 2. Name resolution, macro expansion, and configuration
     * once parsing is complete, we process the AST recursively,     resolving paths and expanding macros. This same process         also processes `#[cfg]` nodes, and hence may strip thingsout of the AST as well.
 3. Lowering to HIR
     * Once name resolution completes, we convert the AST into the HIR, or "high-level IR". 
-
     * The HIR is a lightly desugared variant of the AST. It is more processed than the AST and more suitable for the analyses that follow. 
 4. Type-checking and subsequent analyses
     * An important step in processing the HIR is to perform type checking. This process assigns types to every HIR expression, and also is responsible for resolving some "type-dependent" paths, such as field accesses (`x.f`)