diff --git a/spec/blocksync/img/bc-reactor-blocks.png b/spec/blocksync/img/bc-reactor-blocks.png
index aea737424..5102e109b 100644
Binary files a/spec/blocksync/img/bc-reactor-blocks.png and b/spec/blocksync/img/bc-reactor-blocks.png differ
diff --git a/spec/blocksync/verification.md b/spec/blocksync/verification.md
index 4ada02b76..c733fff79 100644
--- a/spec/blocksync/verification.md
+++ b/spec/blocksync/verification.md
@@ -1,6 +1,6 @@
## Block verification
-When blocksyncing, a node is not participating in conensus. It is receiving blocks that have already been decided and committed. To avoid being fooled by malicious peers, the node has to verify the received blocks before executing the transactions and storing the block in its store.
+When blocksyncing, a node is not participating in consensus. It is receiving blocks that have already been decided and committed. To avoid being fooled by malicious peers, the node has to verify the received blocks before executing the transactions and storing the block in its store.
The verification in blocksync aims to apply the same logic as the [light client verification](../light-client/verification/README.md). The safety guarantees of the light client model are provided by verifying blocks starting from an **initial trusted state** and using validators who were bonded within a **trusting period**. Once this period expires, the validators could have unbonded, and we cannot rely on them being honest anymore. In blocksync, we can be **outside** the trusting period. Therefore, the guarantees provided by blocksync verification can be divided in two groups:
@@ -21,7 +21,7 @@ Currently there are two possible ways to obtain a trusted state :
In this case we only verify that the validator hash of the block matches the validator set resulting from executing `InitChain`. We will use the initially provided validator set for verification and further verify the block against witnesses. In this scenario, this state is very likely to be outside the trusting period. We will accept this block as a trusted state and store it inside the node's block store.
-It is worth noting that, running block sync from the first height is significantly slower than running statesync first. However, statesync does not keep the entire blockchain history and some operators might opt not to state sync. The reason is that, if sufficiently many nodes state sync and other nodes who have historical data fail or leave the network, we have no history.
+It is worth noting that, running block sync from the first height is significantly slower than running statesync first. However, statesync does not keep the entire blockchain history and some operators might opt not to state sync. The reason is that, if sufficiently many nodes state sync and other nodes who have historical data fail or leave the network, the network ends up with gaps in the block history.
**Case 2 - blocksync starting from pre-existing state**
@@ -45,7 +45,11 @@ To enable this, upon switching from statesync, we do not instruct the block pool
### Verifying blocks past the trusted state
-
+
+