>" .. i18n("dns_page.positive_replies") ..
     1709                           "</th><th class='text-end'>" .. i18n("dns_page.error_replies") ..
     1710                           "</th><th colspan=2 class='text-center'>" .. i18n("dns_page.reply_breakdown") .. "</th></tr>")
     1711                 print("<tr><th>" .. i18n("sent") .. "</th><td class=\"text-end\"><span id=dns_sent_num_queries>" ..
     1712                           formatValue(host["dns"]["sent"]["num_queries"]) ..
     1713                           "</span> <span id=trend_sent_num_queries></span></td>")
     1714 
     1715                 print("<td class=\"text-end\"><span id=dns_sent_num_replies_ok>" ..
     1716                           formatValue(host["dns"]["sent"]["num_replies_ok"]) ..
     1717                           "</span> <span id=trend_sent_num_replies_ok></span></td>")
     1718                 print("<td class=\"text-end\"><span id=dns_sent_num_replies_error>" ..
     1719                           formatValue(host["dns"]["sent"]["num_replies_error"]) ..
     1720                           "</span> <span id=trend_sent_num_replies_error></span></td><td colspan=2>")
     1721                 graph_utils.breakdownBar(host["dns"]["sent"]["num_replies_ok"], "OK",
     1722                     host["dns"]["sent"]["num_replies_error"], "Error", 0, 100)
     1723                 print("</td></tr>")
     1724 
     1725                 print("<tr><th>" .. i18n("dns_page.rcvd") ..
     1726                           "</th><td class=\"text-end\"><span id=dns_rcvd_num_queries>" ..
     1727                           formatValue(host["dns"]["rcvd"]["num_queries"]) ..
     1728                           "</span> <span id=trend_rcvd_num_queries></span></td>")
     1729                 print("<td class=\"text-end\"><span id=dns_rcvd_num_replies_ok>" ..
     1730                           formatValue(host["dns"]["rcvd"]["num_replies_ok"]) ..
     1731                           "</span> <span id=trend_rcvd_num_replies_ok></span></td>")
     1732                 print("<td class=\"text-end\"><span id=dns_rcvd_num_replies_error>" ..
     1733                           formatValue(host["dns"]["rcvd"]["num_replies_error"]) ..
     1734                           "</span> <span id=trend_rcvd_num_replies_error></span></td><td colspan=2>")
     1735                 graph_utils.breakdownBar(host["dns"]["rcvd"]["num_replies_ok"], "OK",
     1736                     host["dns"]["rcvd"]["num_replies_error"], "Error", 50, 100)
     1737                 print("</td></tr>")
     1738 
     1739                 if host["dns"]["rcvd"]["num_replies_ok"] + host["dns"]["rcvd"]["num_replies_error"] > 0 then
     1740                     print('<tr><th>' .. i18n("dns_page.request_vs_reply") .. '</th>')
     1741                     local dns_ratio = tonumber(host["dns"]["sent"]["num_queries"]) /
     1742                                           tonumber(
     1743                             host["dns"]["rcvd"]["num_replies_ok"] + host["dns"]["rcvd"]["num_replies_error"])
     1744                     local dns_ratio_str = string.format("%.2f", dns_ratio)
     1745 
     1746                     if (dns_ratio < 0.9) then
     1747                         dns_ratio_str = "<font color=red>" .. dns_ratio_str .. "</font>"
     1748                     end
     1749 
     1750                     print('<td colspan=2 align=right>' .. dns_ratio_str .. '</td><td colspan=2>')
     1751                     graph_utils.breakdownBar(host["dns"]["sent"]["num_queries"], i18n("dns_page.queries"),
     1752                         host["dns"]["rcvd"]["num_replies_ok"] + host["dns"]["rcvd"]["num_replies_error"],
     1753                         i18n("dns_page.replies"), 30, 70)
     1754 
     1755                     print [[</td></tr>]]
     1756                 end
     1757 
     1758                 -- Charts
     1759                 if ((host["dns"]["sent"]["num_queries"] + host["d