---
name: Bug report
about: Create a report to help us improve

---

<!--- Provide a general summary of the issue in the Title above -->

#### Expected Behaviour
<!--- Tell us what should happen -->

#### Current Behaviour
<!--- Tell us what happens instead of the expected behaviour -->

#### Possible Solution
<!--- Not obligatory, but suggest a fix/reason for the bug -->

#### Steps to Reproduce
<!--- Provide an unambiguous set of steps to reproduce this bug. -->
<!--- Include the exact command line arguments and source files -->
<!-- (e.g. architecture file, netlist) to reproduce, if relevant. -->
1. 
2. 


#### Context
<!--- How has this issue affected you? What are you trying to accomplish? -->
<!--- Providing context helps us come up with a solution that is most useful in the real world -->

#### Your Environment
<!--- Include as many relevant details about the environment you experienced the bug in. -->
* VTR revision used:
* Operating System and version:
* Compiler version:
