-The biggest problem by far is generating meaningful `SOA` records. DNS
-infrastructure (including PowerDNS implementation) relies on the "generation"
-field of the `SOA` RR when it makes decision to invalidate the cache. So,
-if there is zone data in the DNS cache, and a DNS server needs to respond
-to a request about an object from that zone, it first checks if the TTL
-has expired. If it has not, the server takes the data from the cache. If
-it has expired, the server asks the "authoritative source" (which is in
-our case the dnamecoin daemon) for the SOA record and compares the
-generation count in the received response with the number kept in the
-cache. If the "authoritative" SOA does not have a greater generation
-count than the cached SOA, DNS server **does not** refresh its cache,
-presuming that the data there is still valid.
+The biggest problem by far is generating meaningful `SOA` records.
+
+### SOA Version a.k.a. Generation Count
+
+DNS infrastructure (including PowerDNS implementation) relies on the
+"generation" field of the `SOA` RR when it makes decision to invalidate
+the cache. So, if there is zone data in the DNS cache, and a DNS server
+needs to respond to a request about an object from that zone, it first
+checks if the TTL has expired. If it has not, the server takes the data
+from the cache. If it has expired, the server asks the "authoritative
+source" (which is in our case the dnamecoin daemon) for the SOA record
+and compares the generation count in the received response with the
+number kept in the cache. If the "authoritative" SOA does not have a
+greater generation count than the cached SOA, DNS server **does not**
+refresh its cache, presuming that the data there is still valid.