diff --git a/CodeElements/Clustering/README.md b/CodeElements/Clustering/README.md
index 8a8e443..fe23ba8 100644
--- a/CodeElements/Clustering/README.md
+++ b/CodeElements/Clustering/README.md
@@ -48,7 +48,7 @@ Finally, the Methods section of the [Nature paper](https://www.nature.com/articl
 * **Synthesis of the input netlist.** We use a commercial tool to synthesize the netlist from RTL. Synthesis is physical-aware, in the sense that it has access to the floorplan size and the locations of the input/output pins, which were informed by inter- and intra-block-level information.
 
 
-## **II. What exactly is the Hypergraph, and how is it partitioned?**
+## **II. What *exactly* is the Hypergraph, and how is it partitioned?**
 From the above information sources, the description of the [Grouping](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/Grouping/README.md) process, and information provided by Google engineers, we are fairly certain of the following.
 * (1) Clustering uses the hMETIS partitioner, which is run in “multiway” mode. 
 More specifically, hMETIS is **always** invoked with *nparts*=500, with unit vertex weights. 
@@ -95,20 +95,20 @@ than or equal to *net_size_threshold*. The default value for this parameter is 3
 Our implementation of hypergraph clustering takes the synthesized netlist and a .def file with placed IO ports as input, 
 then generates the clustered netlist (in lef/def format) using hMETIS (1998 binary). 
 In default mode, our implementation will also run RePlAce in GUI mode automatically to place the clustered netlist. 
-We implement the entire flow based on $ `\textcolor{blue}{ \text{ OpenROAD APIs} } `$.
-**Please refer to the $ `\textcolor{blue}{ \text{ OpenROAD repo} } `$  for explanation of each Tcl command.**
+We implement the entire flow based on [OpenROAD APIs](https://github.com/the-openroad-project).
+**Please refer to [the OpenROAD repo](https://github.com/the-openroad-project) for explanation of each Tcl command.**
 
-We have provided the openroad exe in the utils dir. Please note that [The OpenROAD Project](https://github.com/the-openroad-project) does not 
+We have provided the openroad exe in the [utils](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/Clustering/utils) dir. Please note that [The OpenROAD Project](https://github.com/the-openroad-project) does not 
 distribute any compiled binaries. While we build our implementation on top of the OpenROAD application, our effort is not associated with the OpenROAD project.
 
 
-Input file: setup.tcl (you can follow the example to set up your own design)
+Input file: [setup.tcl](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/Clustering/setup.tcl) (you can follow the example to set up your own design)
 
 Output_files: clusters.lef and clustered_netlist.def
 
-Example commands: python generate_clustered_netlist.py ariane hmetis
+Example commands: python [generate_clustered_netlist.py](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/Clustering/generate_clustered_netlist.py) ariane hmetis
 
-You can use the command: python generate_clustered_netlist.py -h for other options
+You can use the command: python [generate_clustered_netlist.py](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/Clustering/generate_clustered_netlist.py) -h for other options
 
 Note that the [example](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/Clustering/design) that we provide is the ariane design implemented in NanGate45. The netlist is synthesized by Yosys, and the floorplan def is generated by OpenROAD.
  
diff --git a/README.md b/README.md
index 7d5aa99..2ea5a3f 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@
 ## **Testcases**  
 The list of avaialbe test cases
 - Ariane (RTL)
-  - [136 macro](./Testcases/ariane136/)
+  - [136 macro (RTL files)](./Testcases/ariane136/)
   - [133 macro](./Testcases/ariane133/)
 - MemPool (RTL)
   - [tile](./Testcases/mempool_tile/)