diff options
Diffstat (limited to 'org')
| -rw-r--r-- | org/ao_abstract_doc_source.org | 796 | ||||
| -rw-r--r-- | org/ao_defaults.org | 26 | ||||
| -rw-r--r-- | org/output.org | 2757 | 
3 files changed, 1809 insertions, 1770 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org index da435a1..4292328 100644 --- a/org/ao_abstract_doc_source.org +++ b/org/ao_abstract_doc_source.org @@ -229,8 +229,8 @@ auto obj_att = ObjAttributes();  /+ ocn +/  int obj_cite_number, obj_cite_number_;  auto object_citation_number = OCNemitter(); -int obj_cite_number_emit(int obj_cite_number_status_flag) { -  return object_citation_number.obj_cite_number_emitter(obj_cite_number_status_flag); +int ocn_emit(int ocn_status_flag) { +  return object_citation_number.ocn_emitter(ocn_status_flag);  }  /+ book index variables +/  string book_idx_tmp; @@ -243,8 +243,8 @@ string[][string][string] bkidx_hash(    return bookindex_extract_hash.bookindex_nugget_hash(bookindex_section, obj_cite_number);  }  /+ node +/ -string[string] _node_str; -int[string]    _node_int; +string[string] _node_heading_str; +int[string]    _node_heading_int;  auto node_construct = NodeStructureMetadata();  #+END_SRC @@ -271,8 +271,10 @@ scope(exit) {  #+name: abs_init_rest  #+BEGIN_SRC d -auto node_int_ = node_metadata_int; -auto node_str_ = node_metadata_str; +auto node_heading_int_ = node_metadata_heading_int; +auto node_heading_str_ = node_metadata_heading_str; +auto node_para_int_    = node_metadata_para_int; +auto node_para_str_    = node_metadata_para_str;  line_occur = [    "heading"  : 0,    "para"     : 0, @@ -330,20 +332,20 @@ string _anchor_tag;  string toc_txt_;  an_object["glossary_nugget"] = "";  an_object["blurb_nugget"] = ""; -node_str_["is"]                           = "heading"; -node_str_["ocn"]                          = "0"; -node_str_["segment_anchor_tag"]           = "toc"; -node_str_["attrib"]                       = ""; -node_str_["marked_up_lev"]                = "1"; -node_int_["heading_lev_markup"]           = 4; -node_int_["heading_lev_collapsed"]        = 2; -node_int_["parent_ocn"]                   = 1; -node_int_["parent_lev_markup"]            = 0; +node_heading_str_["is"]                           = "heading"; +node_heading_str_["ocn"]                          = "0"; +node_heading_str_["segment_anchor_tag"]           = "toc"; +node_heading_str_["attrib"]                       = ""; +node_heading_str_["marked_up_lev"]                = "1"; +node_heading_int_["heading_lev_markup"]           = 4; +node_heading_int_["heading_lev_collapsed"]        = 2; +node_heading_int_["parent_ocn"]                   = 1; +node_heading_int_["parent_lev_markup"]            = 0;  auto toc_head =    set_abstract_object.contents_heading(      "Table of Contents", // nugget/object -    node_str_, -    node_int_, +    node_heading_str_, +    node_heading_int_,      ["toc"],             // anchor tag    );  the_table_of_contents_section = [ @@ -391,7 +393,7 @@ debug(srclines) {  #+name: abs_in_loop_body_00  #+BEGIN_SRC d  if (!line.empty) { -  _check_obj_cite_number_status_(line, type); +  _check_ocn_status_(line, type);  }  #+END_SRC @@ -466,53 +468,56 @@ if there is a glossary section you need to:      line_occur["para"] = State.off;      an_object_key="glossary_nugget"; //      if (matchFirst(line, rgx.heading_glossary)) { -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_glossary_section ~=          set_abstract_object.contents_heading(            "Glossary",       // nugget/object -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],             // anchor tag          ); -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = "glossary"; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "1"; -      node_int_["heading_lev_markup"]       = 4; -      node_int_["heading_lev_collapsed"]    = 2; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = "glossary"; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "1"; +      node_heading_int_["heading_lev_markup"]       = 4; +      node_heading_int_["heading_lev_collapsed"]    = 2; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_glossary_section ~=          set_abstract_object.contents_heading(            "Glossary",       // nugget/object -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            ["glossary"],     // anchor tag          );      // } else if (matchFirst(line, rgx.heading)) {      //   _heading_matched_(line, line_occur, an_object, an_object_key, lv, collapsed_lev, type, dochead_meta_aa); // levels?      } else {        _para_match_(line, an_object, an_object_key, indent, bullet, type, line_occur); +      node_para_str_["is"]                           = "para"; +      node_para_str_["attrib"]                       = ""; +      node_para_int_["ocn"]                          = 0; +      node_para_int_["indent_hang"]                  = indent["hang_position"]; +      node_para_int_["indent_base"]                  = indent["base_position"]; +      node_para_int_["bullet"]                       = (bullet) ? 1 : 0;        the_glossary_section ~=          set_abstract_object.contents_para( -          "para",                    // an_object["is"],            to!string(line),           // an_object["substantive"], -          "",                        // attrib -          0,                         // obj_cite_number, -          indent, -          bullet +          node_para_str_, +          node_para_int_,          );      } -    type["obj_cite_number_status"] = TriState.off; +    type["ocn_status"] = TriState.off;    }    continue;  #+END_SRC @@ -552,70 +557,73 @@ if there is a blurb section you need to:      line_occur["para"] = State.off;      an_object_key="blurb_nugget";      if (matchFirst(line, rgx.heading_blurb)) { -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_blurb_section ~=          set_abstract_object.contents_heading(            "Blurb",          // nugget/object -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],             // anchor tag          ); -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = "blurb"; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "1"; -      node_int_["heading_lev_markup"]       = 4; -      node_int_["heading_lev_collapsed"]    = 2; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = "blurb"; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "1"; +      node_heading_int_["heading_lev_markup"]       = 4; +      node_heading_int_["heading_lev_collapsed"]    = 2; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_blurb_section ~=          set_abstract_object.contents_heading(            "Blurb",          // nugget/object -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            ["blurb"],        // anchor tag          );      } else if ((matchFirst(line, rgx.heading))      && (opt_action_bool["backmatter"] && opt_action_bool["section_blurb"])) {        _heading_matched_(line, line_occur, an_object, an_object_key, lv, collapsed_lev, type, dochead_meta_aa); // levels? -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = "blurb"; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = to!string(an_object["lev"]); -      node_int_["heading_lev_markup"]       = to!int(an_object["lev_markup_number"]);    // make int, remove need to conv -      node_int_["heading_lev_collapsed"]    = to!int(an_object["lev_collapsed_number"]); // make int, remove need to conv -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = "blurb"; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = to!string(an_object["lev"]); +      node_heading_int_["heading_lev_markup"]       = to!int(an_object["lev_markup_number"]);    // make int, remove need to conv +      node_heading_int_["heading_lev_collapsed"]    = to!int(an_object["lev_collapsed_number"]); // make int, remove need to conv +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_blurb_section ~=          set_abstract_object.contents_heading(            to!string(line),           //  an_object["substantive"], -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],                      // anchor tag          );      } else {        _para_match_(line, an_object, an_object_key, indent, bullet, type, line_occur); +      node_para_str_["is"]                           = "para"; +      node_para_str_["attrib"]                       = ""; +      node_para_int_["ocn"]                          = obj_cite_number; +      node_para_int_["indent_hang"]                  = indent["hang_position"]; +      node_para_int_["indent_base"]                  = indent["base_position"]; +      node_para_int_["bullet"]                       = (bullet) ? 1 : 0;        the_blurb_section ~=          set_abstract_object.contents_para( -          "para",                    // an_object["is"],            to!string(line),           //  an_object["substantive"], -          "",                        // attrib -          obj_cite_number, -          indent, -          bullet +          node_para_str_, +          node_para_int_,          );      } -    type["obj_cite_number_status"] = TriState.off; +    type["ocn_status"] = TriState.off;    }    continue;  #+END_SRC @@ -842,8 +850,8 @@ _block_flag_line_empty_(    the_document_body_section,    bookindex_unordered_hashes,    obj_cite_number, -  _node_str, -  _node_int, +  _node_heading_str, +  _node_heading_int,    cntr,    type,    obj_cite_number_poem, @@ -874,7 +882,7 @@ assert(  if ((type["heading"] == State.on)  && (line_occur["heading"] > State.off)) {    /+ heading object (current line empty) +/ -  obj_cite_number = obj_cite_number_emit(type["obj_cite_number_status"]); +  obj_cite_number = ocn_emit(type["ocn_status"]);    an_object["bookindex_nugget"] =      ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";    bookindex_unordered_hashes = @@ -915,10 +923,10 @@ if ((type["heading"] == State.on)        an_object["is"],                              // string        html_segnames_ptr,                            // int      ); -   _node_str = _node_t[0]; -   _node_int = _node_t[1]; +   _node_heading_str = _node_t[0]; +   _node_heading_int = _node_t[1];    an_object["attrib"] = -    obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +    obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);    ++heading_ptr;    debug(segments) {      writeln(an_object["lev_markup_number"]); @@ -927,8 +935,8 @@ if ((type["heading"] == State.on)    the_document_body_section ~=      set_abstract_object.contents_heading(        an_object["substantive"], -      _node_str, -      _node_int, +      _node_heading_str, +      _node_heading_int,        anchor_tags,      );    // track previous heading and make assertions @@ -948,7 +956,7 @@ if ((type["heading"] == State.on)  #+BEGIN_SRC d  } else if ((type["para"] == State.on) && (line_occur["para"] > State.off)) {    /+ paragraph object (current line empty) +/ -  obj_cite_number = obj_cite_number_emit(type["obj_cite_number_status"]); +  obj_cite_number = ocn_emit(type["ocn_status"]);    an_object["bookindex_nugget"] =      ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";    bookindex_unordered_hashes = @@ -963,22 +971,25 @@ if ((type["heading"] == State.on)        heading_ptr-1,        an_object["is"],      ); -  _node_str = _node_t[0]; -  _node_int = _node_t[1]; +  _node_heading_str = _node_t[0]; +  _node_heading_int = _node_t[1];    auto substantive_object_and_anchor_tags_tuple =      obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa); // ...    an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];    anchor_tags = substantive_object_and_anchor_tags_tuple[1];    an_object["attrib"] = -    obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +    obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int); +  node_para_str_["is"]                           = an_object["is"]; +  node_para_str_["attrib"]                       = an_object["attrib"]; +  node_para_int_["ocn"]                          = obj_cite_number; +  node_para_int_["indent_hang"]                  = indent["hang_position"]; +  node_para_int_["indent_base"]                  = indent["base_position"]; +  node_para_int_["bullet"]                       = (bullet) ? 1 : 0;    the_document_body_section ~=      set_abstract_object.contents_para( -      an_object["is"],        an_object["substantive"], -      an_object["attrib"], -      obj_cite_number, -      indent, -      bullet +      node_para_str_, +      node_para_int_,      );    _common_reset_(line_occur, an_object, type);    indent=[ @@ -1080,20 +1091,20 @@ debug(endnotes) {  #+BEGIN_SRC d  if (an_object["glossary_nugget"].length == 0) {    writeln("no gloss"); -  node_str_["is"]                       = "heading"; -  node_str_["ocn"]                      = "0"; -  node_str_["segment_anchor_tag"]       = ""; -  node_str_["attrib"]                   = ""; -  node_str_["marked_up_lev"]            = "B"; -  node_int_["heading_lev_markup"]       = 1; -  node_int_["heading_lev_collapsed"]    = 1; -  node_int_["parent_ocn"]               = 1; -  node_int_["parent_lev_markup"]        = 0; +  node_heading_str_["is"]                       = "heading"; +  node_heading_str_["ocn"]                      = "0"; +  node_heading_str_["segment_anchor_tag"]       = ""; +  node_heading_str_["attrib"]                   = ""; +  node_heading_str_["marked_up_lev"]            = "B"; +  node_heading_int_["heading_lev_markup"]       = 1; +  node_heading_int_["heading_lev_collapsed"]    = 1; +  node_heading_int_["parent_ocn"]               = 1; +  node_heading_int_["parent_lev_markup"]        = 0;    the_glossary_section ~=      set_abstract_object.contents_heading(        "(skip) there is no Glossary section",   // nugget/object -      node_str_, -      node_int_, +      node_heading_str_, +      node_heading_int_,        [""],             // anchor tag      );  } else { @@ -1120,53 +1131,53 @@ auto biblio_ordered =  #+name: abs_post  #+BEGIN_SRC d  if (biblio_ordered.length > 0) { -  node_str_["is"]                       = "heading"; -  node_str_["ocn"]                      = "0"; -  node_str_["segment_anchor_tag"]       = ""; -  node_str_["attrib"]                   = ""; -  node_str_["marked_up_lev"]            = "B"; -  node_int_["heading_lev_markup"]       = 1; -  node_int_["heading_lev_collapsed"]    = 1; -  node_int_["parent_ocn"]               = 1; -  node_int_["parent_lev_markup"]        = 0; +  node_heading_str_["is"]                       = "heading"; +  node_heading_str_["ocn"]                      = "0"; +  node_heading_str_["segment_anchor_tag"]       = ""; +  node_heading_str_["attrib"]                   = ""; +  node_heading_str_["marked_up_lev"]            = "B"; +  node_heading_int_["heading_lev_markup"]       = 1; +  node_heading_int_["heading_lev_collapsed"]    = 1; +  node_heading_int_["parent_ocn"]               = 1; +  node_heading_int_["parent_lev_markup"]        = 0;    the_bibliography_section ~=      set_abstract_object.contents_heading(        "Bibliography",   // nugget/object -      node_str_, -      node_int_, +      node_heading_str_, +      node_heading_int_,        [""],             // anchor tag      ); -  node_str_["is"]                       = "heading"; -  node_str_["ocn"]                      = "0"; -  node_str_["segment_anchor_tag"]       = "bibliography"; -  node_str_["attrib"]                   = ""; -  node_str_["marked_up_lev"]            = "1"; -  node_int_["heading_lev_markup"]       = 4; -  node_int_["heading_lev_collapsed"]    = 2; -  node_int_["parent_ocn"]               = 1; -  node_int_["parent_lev_markup"]        = 0; +  node_heading_str_["is"]                       = "heading"; +  node_heading_str_["ocn"]                      = "0"; +  node_heading_str_["segment_anchor_tag"]       = "bibliography"; +  node_heading_str_["attrib"]                   = ""; +  node_heading_str_["marked_up_lev"]            = "1"; +  node_heading_int_["heading_lev_markup"]       = 4; +  node_heading_int_["heading_lev_collapsed"]    = 2; +  node_heading_int_["parent_ocn"]               = 1; +  node_heading_int_["parent_lev_markup"]        = 0;    the_bibliography_section ~=      set_abstract_object.contents_heading(        "Bibliography", -      node_str_, -      node_int_, +      node_heading_str_, +      node_heading_int_,        ["bibliography"], // anchor tag      );  } else { -  node_str_["is"]                       = "heading"; -  node_str_["ocn"]                      = "0"; -  node_str_["segment_anchor_tag"]       = ""; -  node_str_["attrib"]                   = ""; -  node_str_["marked_up_lev"]            = "B"; -  node_int_["heading_lev_markup"]       = 1; -  node_int_["heading_lev_collapsed"]    = 1; -  node_int_["parent_ocn"]               = 1; -  node_int_["parent_lev_markup"]        = 0; +  node_heading_str_["is"]                       = "heading"; +  node_heading_str_["ocn"]                      = "0"; +  node_heading_str_["segment_anchor_tag"]       = ""; +  node_heading_str_["attrib"]                   = ""; +  node_heading_str_["marked_up_lev"]            = "B"; +  node_heading_int_["heading_lev_markup"]       = 1; +  node_heading_int_["heading_lev_collapsed"]    = 1; +  node_heading_int_["parent_ocn"]               = 1; +  node_heading_int_["parent_lev_markup"]        = 0;    the_bibliography_section ~=      set_abstract_object.contents_heading(        "(skip) there is no Bibliography",   // nugget/object -      node_str_, -      node_int_, +      node_heading_str_, +      node_heading_int_,        [""],             // anchor tag      );  } @@ -1192,14 +1203,17 @@ foreach (entry; biblio_ordered) {      ((entry["place"].str.empty) ? "" : ", " ~ entry["place"].str),      ((entry["url"].str.empty) ? "" : ", [" ~ entry["url"].str ~ "]"),    ); +  node_para_str_["is"]                           = "bibliography"; +  node_para_str_["attrib"]                       = ""; +  node_para_int_["ocn"]                          = 0; +  node_para_int_["indent_hang"]                  = 0; +  node_para_int_["indent_base"]                  = 1; +  node_para_int_["bullet"]                       = 0;    the_bibliography_section ~=      set_abstract_object.contents_para( -      "bibliography",        out_,                                                // nugget/object -      "",                                                  // attrib -      0,                                                   // obj_cite_number -      ([ "hang_position" : 0, "base_position" : 1, ]),     // indent -      false +      node_para_str_, +      node_para_int_,      );  }  #+END_SRC @@ -1273,20 +1287,20 @@ debug(bookindex) {                         // bookindex  #+BEGIN_SRC d  if (an_object["blurb_nugget"].length == 0) {    writeln("no blurb"); -  node_str_["is"]                       = "heading"; -  node_str_["ocn"]                      = "0"; -  node_str_["segment_anchor_tag"]       = ""; -  node_str_["attrib"]                   = ""; -  node_str_["marked_up_lev"]            = "B"; -  node_int_["heading_lev_markup"]       = 1; -  node_int_["heading_lev_collapsed"]    = 1; -  node_int_["parent_ocn"]               = 1; -  node_int_["parent_lev_markup"]        = 0; +  node_heading_str_["is"]                       = "heading"; +  node_heading_str_["ocn"]                      = "0"; +  node_heading_str_["segment_anchor_tag"]       = ""; +  node_heading_str_["attrib"]                   = ""; +  node_heading_str_["marked_up_lev"]            = "B"; +  node_heading_int_["heading_lev_markup"]       = 1; +  node_heading_int_["heading_lev_collapsed"]    = 1; +  node_heading_int_["parent_ocn"]               = 1; +  node_heading_int_["parent_lev_markup"]        = 0;    the_blurb_section ~=      set_abstract_object.contents_heading(        "(skip) there is no Blurb section",   // nugget/object -      node_str_, -      node_int_, +      node_heading_str_, +      node_heading_int_,        [""],             // anchor tag      );  } else { @@ -1563,44 +1577,44 @@ auto _common_reset_(  #+name: abs_functions_ocn_status  #+BEGIN_SRC d -void _check_obj_cite_number_status_( +void _check_ocn_status_(    char[] line,    ref int[string] type  ) { -  if ((!line.empty) && (type["obj_cite_number_status_multi_obj"] == TriState.off)) { +  if ((!line.empty) && (type["ocn_status_multi_obj"] == TriState.off)) {      /+ not multi-line object, check whether obj_cite_number is on or turned off +/      if (matchFirst(line, rgx.obj_cite_number_block_marks)) {        /+ switch off obj_cite_number +/        if (matchFirst(line, rgx.obj_cite_number_off_block)) { -        type["obj_cite_number_status_multi_obj"] = TriState.on; +        type["ocn_status_multi_obj"] = TriState.on;          debug(ocnoff) {            writeln(line);          }        }        if (matchFirst(line, rgx.obj_cite_number_off_block_dh)) { -        type["obj_cite_number_status_multi_obj"] = TriState.closing; +        type["ocn_status_multi_obj"] = TriState.closing;          debug(ocnoff) {            writeln(line);          }        }      } else { -      if (type["obj_cite_number_status_multi_obj"] == TriState.off) { +      if (type["ocn_status_multi_obj"] == TriState.off) {          if (matchFirst(line, rgx.obj_cite_number_off)) { -          type["obj_cite_number_status"] = TriState.on; +          type["ocn_status"] = TriState.on;          } else if (matchFirst(line, rgx.obj_cite_number_off_dh)) { -          type["obj_cite_number_status"] = TriState.closing; +          type["ocn_status"] = TriState.closing;          } else { -          type["obj_cite_number_status"] = TriState.off; +          type["ocn_status"] = TriState.off;          }        } else { -        type["obj_cite_number_status"] = -          type["obj_cite_number_status_multi_obj"]; +        type["ocn_status"] = +          type["ocn_status_multi_obj"];        }      } -  } else if ((!line.empty) && (type["obj_cite_number_status_multi_obj"] > TriState.off)) { +  } else if ((!line.empty) && (type["ocn_status_multi_obj"] > TriState.off)) {      if (matchFirst(line, rgx.obj_cite_number_off_block_close)) { -      type["obj_cite_number_status_multi_obj"] = TriState.off; -      type["obj_cite_number_status"] = TriState.off; +      type["ocn_status_multi_obj"] = TriState.off; +      type["ocn_status"] = TriState.off;        debug(ocnoff) {          writeln(line);        } @@ -2077,7 +2091,7 @@ void _poem_block_(          an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];          anchor_tags = substantive_object_and_anchor_tags_tuple[1];          an_object["attrib"] = -          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);          the_document_body_section ~=            set_abstract_object.contents_block(              an_object["is"], @@ -2098,7 +2112,7 @@ void _poem_block_(        processing["verse"] ~= line ~= "\n";        if (type["verse_new"] == State.on) {          obj_cite_number = -          obj_cite_number_emit(type["obj_cite_number_status"]); +          ocn_emit(type["ocn_status"]);          type["verse_new"] = State.off;        } else if (matchFirst(line, rgx.newline_eol_delimiter_only)) {          verse_line = TriState.off; @@ -2124,14 +2138,14 @@ void _poem_block_(            heading_ptr-1,            an_object["is"]          ); -        _node_str = _node_t[0]; -        _node_int = _node_t[1]; +        _node_heading_str = _node_t[0]; +        _node_heading_int = _node_t[1];          auto substantive_object_and_anchor_tags_tuple =            obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);          an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];          anchor_tags = substantive_object_and_anchor_tags_tuple[1];          an_object["attrib"] = -          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);          the_document_body_section ~=            set_abstract_object.contents_block(              an_object["is"], @@ -2168,7 +2182,7 @@ void _poem_block_(          an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];          anchor_tags = substantive_object_and_anchor_tags_tuple[1];          an_object["attrib"] = -          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);          the_document_body_section ~=            set_abstract_object.contents_block(              an_object["is"], @@ -2188,7 +2202,7 @@ void _poem_block_(        processing["verse"] ~= line ~= "\n";        if (type["verse_new"] == State.on) {          obj_cite_number = -          obj_cite_number_emit(type["obj_cite_number_status"]); +          ocn_emit(type["ocn_status"]);          type["verse_new"] = State.off;        } else if (matchFirst(line, rgx.newline_eol_delimiter_only)) {          type["verse_new"] = State.on; @@ -2215,14 +2229,14 @@ void _poem_block_(              heading_ptr-1,              an_object["is"]            ); -        _node_str = _node_t[0]; -        _node_int = _node_t[1]; +        _node_heading_str = _node_t[0]; +        _node_heading_int = _node_t[1];          auto substantive_object_and_anchor_tags_tuple =            obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);          an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];          anchor_tags = substantive_object_and_anchor_tags_tuple[1];          an_object["attrib"] = -          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +          obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);          the_document_body_section ~=            set_abstract_object.contents_block(              an_object["is"], @@ -2413,8 +2427,8 @@ void _block_flag_line_empty_(    ref ObjComposite[] the_document_body_section,    ref string[][string][string] bookindex_unordered_hashes,    ref int obj_cite_number, -  ref string[string] _node_str, -  ref int[string] _node_int, +  ref string[string] _node_heading_str, +  ref int[string] _node_heading_int,    ref int cntr,    ref int[string] type,    string[string] obj_cite_number_poem, @@ -2432,7 +2446,7 @@ void _block_flag_line_empty_(    assertions_flag_types_block_status_none_or_closed(type);    if (type["code"] == TriState.closing) {      obj_cite_number = -      obj_cite_number_emit(type["obj_cite_number_status"]); +      ocn_emit(type["ocn_status"]);      an_object["bookindex_nugget"] =        ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";      bookindex_unordered_hashes = @@ -2447,14 +2461,14 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]        ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      auto substantive_object_and_anchor_tags_tuple =        obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);      an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];      anchor_tags = substantive_object_and_anchor_tags_tuple[1];      an_object["attrib"] = -      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);      the_document_body_section ~=        set_abstract_object.contents_block_code(          an_object["is"], @@ -2482,15 +2496,15 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]        ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      the_document_body_section ~=        set_abstract_object.contents_block_obj_cite_number_string(          "poem",          "",          (obj_cite_number_poem["start"], obj_cite_number_poem["end"]), -        _node_str, -        _node_int, +        _node_heading_str, +        _node_heading_int,        ); // bookindex      object_reset(an_object);      processing.remove("verse"); @@ -2498,7 +2512,7 @@ void _block_flag_line_empty_(      type["poem"] = TriState.off;    } else if (type["table"] == TriState.closing) {      obj_cite_number = -      obj_cite_number_emit(type["obj_cite_number_status"]); +      ocn_emit(type["ocn_status"]);      an_object["bookindex_nugget"] =        ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";      bookindex_unordered_hashes = @@ -2513,14 +2527,14 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]        ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      auto substantive_object_and_anchor_tags_tuple =        obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);      an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];      anchor_tags = substantive_object_and_anchor_tags_tuple[1];      an_object["attrib"] = -      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);      the_document_body_section ~=        set_abstract_object.contents_block(          an_object["is"], @@ -2535,7 +2549,7 @@ void _block_flag_line_empty_(      type["table"] = TriState.off;    } else if (type["group"] == TriState.closing) {      obj_cite_number = -      obj_cite_number_emit(type["obj_cite_number_status"]); +      ocn_emit(type["ocn_status"]);      an_object["bookindex_nugget"] =        ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";      bookindex_unordered_hashes = @@ -2550,14 +2564,14 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]        ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      auto substantive_object_and_anchor_tags_tuple =        obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);      an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];      anchor_tags = substantive_object_and_anchor_tags_tuple[1];      an_object["attrib"] = -      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);      the_document_body_section ~=        set_abstract_object.contents_block(          an_object["is"], @@ -2571,7 +2585,7 @@ void _block_flag_line_empty_(      type["blocks"] = TriState.off;      type["group"] = TriState.off;    } else if (type["block"] == TriState.closing) { -    obj_cite_number = obj_cite_number_emit(type["obj_cite_number_status"]); +    obj_cite_number = ocn_emit(type["ocn_status"]);      an_object["bookindex_nugget"] =        ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";      bookindex_unordered_hashes = @@ -2586,14 +2600,14 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]         ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      auto substantive_object_and_anchor_tags_tuple =        obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);      an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];      anchor_tags = substantive_object_and_anchor_tags_tuple[1];      an_object["attrib"] = -      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);      the_document_body_section ~=        set_abstract_object.contents_block(          an_object["is"], @@ -2608,7 +2622,7 @@ void _block_flag_line_empty_(      type["block"] = TriState.off;    } else if (type["quote"] == TriState.closing) {      obj_cite_number = -      obj_cite_number_emit(type["obj_cite_number_status"]); +      ocn_emit(type["ocn_status"]);      an_object["bookindex_nugget"] =        ("bookindex_nugget" in an_object) ? an_object["bookindex_nugget"] : "";      bookindex_unordered_hashes = @@ -2623,14 +2637,14 @@ void _block_flag_line_empty_(          heading_ptr-1,          an_object["is"]        ); -    _node_str = _node_t[0]; -    _node_int = _node_t[1]; +    _node_heading_str = _node_t[0]; +    _node_heading_int = _node_t[1];      auto substantive_object_and_anchor_tags_tuple =        obj_im.obj_inline_markup_and_anchor_tags(an_object, an_object_key, dochead_make_aa);      an_object["substantive"] = substantive_object_and_anchor_tags_tuple[0];      anchor_tags = substantive_object_and_anchor_tags_tuple[1];      an_object["attrib"] = -      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_str, _node_int); +      obj_att.obj_attributes(an_object["is"], an_object[an_object_key], _node_heading_str, _node_heading_int);      the_document_body_section ~=        set_abstract_object.contents_block(          an_object["is"], @@ -3068,10 +3082,10 @@ auto _para_match_(  #+BEGIN_SRC d  struct OCNemitter {    int obj_cite_number, obj_cite_number_; -  int obj_cite_number_emitter(int obj_cite_number_status_flag) -  in { assert(obj_cite_number_status_flag <= 2); } +  int ocn_emitter(int ocn_status_flag) +  in { assert(ocn_status_flag <= 2); }    body { -    obj_cite_number=(obj_cite_number_status_flag == 0) +    obj_cite_number=(ocn_status_flag == 0)      ? ++obj_cite_number_      : 0;      assert(obj_cite_number >= 0); @@ -3794,16 +3808,16 @@ struct ObjAttributes {    string obj_attributes(      string obj_is_,      string obj_raw, -    string[string] _node_str, -    int[string] _node_int +    string[string] _node_heading_str, +    int[string] _node_heading_int    )    in { }    body {      scope(exit) {        destroy(obj_is_);        destroy(obj_raw); -      destroy(_node_str); -      destroy(_node_int); +      destroy(_node_heading_str); +      destroy(_node_heading_int);      }      _obj_attrib.remove("json");      _obj_attrib["json"] ="{"; @@ -3843,7 +3857,7 @@ struct ObjAttributes {        break;      }      _obj_attrib["json"] ~=" }"; -    _obj_attrib["json"]=_set_additional_values_parse_as_json(_obj_attrib["json"], obj_is_, _node_str, _node_int); // check +    _obj_attrib["json"]=_set_additional_values_parse_as_json(_obj_attrib["json"], obj_is_, _node_heading_str, _node_heading_int); // check      debug(structattrib) {        if (oa_j["is"].str() == "heading") {          writeln(_obj_attrib["json"]); @@ -4052,24 +4066,24 @@ struct ObjAttributes {    string _set_additional_values_parse_as_json(      string _obj_attrib,      string obj_is_, -    string[string] _node_str, -    int[string] _node_int +    string[string] _node_heading_str, +    int[string] _node_heading_int    ) {                                                  //      JSONValue oa_j = parseJSON(_obj_attrib);      assert(        (oa_j.type == JSON_TYPE.OBJECT)      );      if (obj_is_ == "heading") { -      oa_j.object["obj_cite_number"] = _node_str["ocn"]; -      oa_j.object["lev_markup_number"] = _node_int["heading_lev_markup"]; -      oa_j.object["lev_collapsed_number"] = _node_int["heading_lev_collapsed"]; +      oa_j.object["obj_cite_number"] = _node_heading_str["ocn"]; +      oa_j.object["lev_markup_number"] = _node_heading_int["heading_lev_markup"]; +      oa_j.object["lev_collapsed_number"] = _node_heading_int["heading_lev_collapsed"];        oa_j.object["heading_ptr"] = -        _node_int["ptr_heading"]; +        _node_heading_int["ptr_heading"];        oa_j.object["doc_object_ptr"] = -        _node_int["ptr_doc_object"]; +        _node_heading_int["ptr_doc_object"];      } -    oa_j.object["parent_obj_cite_number"] = _node_int["parent_ocn"]; -    oa_j.object["parent_lev_markup_number"] = _node_int["parent_lev_markup"]; +    oa_j.object["parent_obj_cite_number"] = _node_heading_int["parent_ocn"];         // +    oa_j.object["parent_lev_markup_number"] = _node_heading_int["parent_lev_markup"];         //      _obj_attrib = oa_j.toString();      return _obj_attrib;    } @@ -4248,7 +4262,7 @@ struct BookIndexReportSection {      bool[string]             opt_action_bool,    ) {      mixin SiSUnode; -    string type; +    string type_is;      string lev;      int lev_int_markup, lev_int_collapsed;      string attrib; @@ -4257,59 +4271,60 @@ struct BookIndexReportSection {      auto mainkeys =        bookindex_unordered_hashes.byKey.array.sort().release;      ObjComposite[][string] bookindex_section; -    auto node_int_ = node_metadata_int; -    auto node_str_ = node_metadata_str; +    auto node_heading_int_ = node_metadata_heading_int; +    auto node_heading_str_ = node_metadata_heading_str; +    auto node_para_int_ = node_metadata_para_int; +    auto node_para_str_ = node_metadata_para_str;      if ((mainkeys.length > 0)      && (opt_action_bool["backmatter"] && opt_action_bool["section_bookindex"])) {        string bi_tmp_seg, bi_tmp_scroll; -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        bookindex_section["scroll"] ~=          set_abstract_object.contents_heading(            "Book Index", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [],          );        bookindex_section["seg"] ~=          set_abstract_object.contents_heading(            "Book Index", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [],          );        ++obj_cite_number;        ++mkn; -      // 1~ Index -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = "bookindex"; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "1"; -      node_int_["heading_lev_markup"]       = 4; -      node_int_["heading_lev_collapsed"]    = 2; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = "bookindex"; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "1"; +      node_heading_int_["heading_lev_markup"]       = 4; +      node_heading_int_["heading_lev_collapsed"]    = 2; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        bookindex_section["scroll"] ~=          set_abstract_object.contents_heading(            "Index", -          node_str_, -          node_int_, -          ["book_index"], +          node_heading_str_, +          node_heading_int_, +          ["bookindex"],          );        bookindex_section["seg"] ~=          set_abstract_object.contents_heading(            "Index", -          node_str_, -          node_int_, -          ["book_index"], +          node_heading_str_, +          node_heading_int_, +          ["bookindex"],          );        ++obj_cite_number;        ++mkn; @@ -4344,55 +4359,50 @@ struct BookIndexReportSection {          }          bi_tmp_scroll = replaceFirst(bi_tmp_scroll, rgx.trailing_linebreak, "");          bi_tmp_seg = replaceFirst(bi_tmp_seg, rgx.trailing_linebreak, ""); -        type="para"; -        attrib=""; -        indent=[ -          "hang_position" : 0, -          "base_position" : 1, -        ]; +        indent=[ "hang_position" : 0, "base_position" : 1, ]; +        node_para_str_["is"]                           = "para"; +        node_para_str_["attrib"]                       = ""; +        node_para_int_["ocn"]                          = obj_cite_number; +        node_para_int_["indent_hang"]                  = 0; +        node_para_int_["indent_base"]                  = 1; +        node_para_int_["bullet"]                       = 0;          bookindex_section["scroll"] ~=            set_abstract_object.contents_para( -            type,              bi_tmp_scroll, -            attrib, -            obj_cite_number, -            indent, -            false +            node_para_str_, +            node_para_int_,            );          bookindex_section["seg"] ~=            set_abstract_object.contents_para( -            type,              bi_tmp_seg, -            attrib, -            obj_cite_number, -            indent, -            false +            node_para_str_, +            node_para_int_,            );          ++obj_cite_number;          ++mkn;        }      } else {                              // no book index, (figure out what to do here) -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        bookindex_section["scroll"] ~=          set_abstract_object.contents_heading(            "(skip) there is no Book Index", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],          );        bookindex_section["seg"] ~=          set_abstract_object.contents_heading(            "(skip) there is no Book Index", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],          );      } @@ -4514,86 +4524,86 @@ struct NotesSection {      auto set_abstract_object = ObjectAbstractSet();      ObjComposite[][string] the_endnotes_section;      auto endnotes_ = gathered_notes(); -    string type; +    string type_is;      string lev, lev_markup_number, lev_collapsed_number;      string attrib;      int[string] indent; -    auto node_int_ = node_metadata_int; -    auto node_str_ = node_metadata_str; +    auto node_heading_int_ = node_metadata_heading_int; +    auto node_heading_str_ = node_metadata_heading_str;      if ((endnotes_["seg"].length > 0)      && (opt_action_bool["backmatter"] && opt_action_bool["section_endnotes"])) { -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_endnotes_section["seg"] ~=          set_abstract_object.contents_heading(            "Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [],          );        the_endnotes_section["scroll"] ~=          set_abstract_object.contents_heading(            "Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [],          );        ++obj_cite_number;        ++mkn; -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = "endnotes"; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "1"; -      node_int_["heading_lev_markup"]       = 4; -      node_int_["heading_lev_collapsed"]    = 2; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = "endnotes"; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "1"; +      node_heading_int_["heading_lev_markup"]       = 4; +      node_heading_int_["heading_lev_collapsed"]    = 2; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_endnotes_section["seg"] ~=          set_abstract_object.contents_heading(            "Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            ["endnotes"],          );        the_endnotes_section["scroll"] ~=          set_abstract_object.contents_heading(            "Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            ["endnotes"],          );        ++obj_cite_number;        ++mkn;      } else { -      node_str_["is"]                       = "heading"; -      node_str_["ocn"]                      = "0"; -      node_str_["segment_anchor_tag"]       = ""; -      node_str_["attrib"]                   = ""; -      node_str_["marked_up_lev"]            = "B"; -      node_int_["heading_lev_markup"]       = 1; -      node_int_["heading_lev_collapsed"]    = 1; -      node_int_["parent_ocn"]               = 1; -      node_int_["parent_lev_markup"]        = 0; +      node_heading_str_["is"]                       = "heading"; +      node_heading_str_["ocn"]                      = "0"; +      node_heading_str_["segment_anchor_tag"]       = ""; +      node_heading_str_["attrib"]                   = ""; +      node_heading_str_["marked_up_lev"]            = "B"; +      node_heading_int_["heading_lev_markup"]       = 1; +      node_heading_int_["heading_lev_collapsed"]    = 1; +      node_heading_int_["parent_ocn"]               = 1; +      node_heading_int_["parent_lev_markup"]        = 0;        the_endnotes_section["seg"] ~=          set_abstract_object.contents_heading(            "(skip) there are no Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],          );        the_endnotes_section["scroll"] ~=          set_abstract_object.contents_heading(            "(skip) there are no Endnotes", -          node_str_, -          node_int_, +          node_heading_str_, +          node_heading_int_,            [""],          );      } @@ -4783,14 +4793,14 @@ struct NodeStructureMetadata {        p_["lev_markup_number"] = DocStructMarkupHeading.h_text_1;        p_["obj_cite_number"] = lv4;      } -    string[string] _node_str = [ +    string[string] _node_heading_str = [        "is"                            : is_,        "ocn"                           : to!string(obj_cite_number_),        "marked_up_lev"                 : "",        "segment_anchor_tag"            : to!string(segment_anchor_tag),        "attrib"                        : "",      ]; -    int[string] _node_int = [ +    int[string] _node_heading_int = [        "ocn"                           : obj_cite_number_,        "ptr_doc_object"                : 0,        "ptr_html_segnames"             : 0, @@ -4807,12 +4817,12 @@ struct NodeStructureMetadata {          writeln("- ", to!string(_node));        }      } -    assert(_node_int["parent_lev_markup"] >= 4);         // -    assert(_node_int["parent_lev_markup"] <= 7);         // -    assert(_node_int["parent_ocn"] >= 0);      // hmm, perhaps         // +    assert(_node_heading_int["parent_lev_markup"] >= 4);         // +    assert(_node_heading_int["parent_lev_markup"] <= 7);         // +    assert(_node_heading_int["parent_ocn"] >= 0);      // hmm, perhaps         //      auto t = tuple( -      _node_str, -      _node_int, +      _node_heading_str, +      _node_heading_int,      );      return t;    } @@ -4932,14 +4942,14 @@ struct NodeStructureMetadata {      default:        break;      } -    string[string] _node_str = [ +    string[string] _node_heading_str = [        "is"                            : is_,        "ocn"                           : to!string(obj_cite_number_),        "marked_up_lev"                 : lev,        "segment_anchor_tag"            : to!string(segment_anchor_tag),        "attrib"                        : "",      ]; -    int[string] _node_int = [ +    int[string] _node_heading_int = [        "ocn"                           : obj_cite_number_,        "ptr_doc_object"                : cntr_,        "ptr_html_segnames"             : ((lev_markup_number == "4") ? html_segnames_ptr : 0), @@ -4959,42 +4969,42 @@ struct NodeStructureMetadata {          writeln("* ", to!string(_node));        }      } -    assert(_node_int["parent_lev_markup"] <= 7); -    assert(_node_int["parent_ocn"] >= 0); +    assert(_node_heading_int["parent_lev_markup"] <= 7); +    assert(_node_heading_int["parent_ocn"] >= 0);      if (match(lev_markup_number, rgx.levels_numbered_headings)) { -      assert(_node_int["heading_lev_markup"] <= 7);         // issues -      assert(to!int(_node_str["ocn"]) >= 0); -      if (_node_int["parent_lev_markup"] > 0) { -        assert(_node_int["parent_lev_markup"] < _node_int["heading_lev_markup"]); -        if (to!int(_node_str["ocn"]) != 0) { -          assert(_node_int["parent_ocn"] < to!int(_node_str["ocn"])); +      assert(_node_heading_int["heading_lev_markup"] <= 7);         // issues +      assert(to!int(_node_heading_str["ocn"]) >= 0); +      if (_node_heading_int["parent_lev_markup"] > 0) { +        assert(_node_heading_int["parent_lev_markup"] < _node_heading_int["heading_lev_markup"]); +        if (to!int(_node_heading_str["ocn"]) != 0) { +          assert(_node_heading_int["parent_ocn"] < to!int(_node_heading_str["ocn"]));          }        } -      if (_node_int["heading_lev_markup"] == 0) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_A); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_B) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_A); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_C) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_B); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_D) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_C); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_1) { -        assert(_node_int["parent_lev_markup"] <= DocStructMarkupHeading.h_sect_D); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_2) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_1); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_3) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_2); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_4) { -        assert(_node_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_3); -      } else if  (_node_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_5) { -        // // writeln(to!int(_node_int["parent_lev_markup"])); -        // // assert(to!int(_node_int["parent_lev_markup"]) >= 4); -        // // assert(to!int(_node_int["parent_lev_markup"]) <= 7); +      if (_node_heading_int["heading_lev_markup"] == 0) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_A); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_B) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_A); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_C) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_B); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_sect_D) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_sect_C); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_1) { +        assert(_node_heading_int["parent_lev_markup"] <= DocStructMarkupHeading.h_sect_D); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_2) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_1); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_3) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_2); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_4) { +        assert(_node_heading_int["parent_lev_markup"] == DocStructMarkupHeading.h_text_3); +      } else if  (_node_heading_int["heading_lev_markup"] == DocStructMarkupHeading.h_text_5) { +        // // writeln(to!int(_node_heading_int["parent_lev_markup"])); +        // // assert(to!int(_node_heading_int["parent_lev_markup"]) >= 4); +        // // assert(to!int(_node_heading_int["parent_lev_markup"]) <= 7);        }      }      auto t = tuple( -      _node_str, -      _node_int, +      _node_heading_str, +      _node_heading_int,      );      return t;    } @@ -5341,20 +5351,20 @@ auto contents_comment(in string object) {  #+BEGIN_SRC d  auto contents_heading(    in string         object, -  in string[string] _node_str, -  in int[string]    _node_int, +  in string[string] _node_heading_str, +  in int[string]    _node_heading_int,    in string[]       tags,  ) {    ObjComposite object_set;    object_set.use                                 = "content";    object_set.of                                  = "para";    object_set.is_a                                = "heading"; -  object_set.object                              = object; -  object_set.obj_cite_number                     = _node_str["ocn"]; +  object_set.object                              = object.strip; +  object_set.obj_cite_number                     = _node_heading_str["ocn"];    object_set.anchor_tags                         ~= tags; -  object_set.heading_attrib.lev                  = _node_str["marked_up_lev"]; -  object_set.heading_attrib.lev_int_markup       = _node_int["heading_lev_markup"]; -  object_set.heading_attrib.lev_int_collapsed    = _node_int["heading_lev_collapsed"]; +  object_set.heading_attrib.lev                  = _node_heading_str["marked_up_lev"]; +  object_set.heading_attrib.lev_int_markup       = _node_heading_int["heading_lev_markup"]; +  object_set.heading_attrib.lev_int_collapsed    = _node_heading_int["heading_lev_collapsed"];    return object_set;  }  #+END_SRC @@ -5364,22 +5374,20 @@ auto contents_heading(  #+name: ao_object_setter_para  #+BEGIN_SRC d  auto contents_para( -  in string is_a, -  in string object, -  in string attrib, -  in int obj_cite_number, -  in int[string] indent, -  in bool bullet, +  in string         object, +  in string[string] _node_para_str, +  in int[string]    _node_para_int,  ) {    ObjComposite object_set;    object_set.use                      = "content";    object_set.of                       = "para";    object_set.is_a                     = "para";    object_set.object                   = object.strip; -  object_set.obj_cite_number          = (obj_cite_number==0) ? "" : to!string(obj_cite_number); -  object_set.para_attrib.indent_start = to!int(indent["hang_position"]); -  object_set.para_attrib.indent_rest  = to!int(indent["base_position"]); -  object_set.para_attrib.bullet       = false; // bullet; +  object_set.obj_cite_number          = (_node_para_int["ocn"]==0) ? "" : to!string(_node_para_int["ocn"]); +  object_set.anchor_tags              = []; +  object_set.para_attrib.indent_start = _node_para_int["indent_hang"]; +  object_set.para_attrib.indent_rest  = _node_para_int["indent_base"]; +  object_set.para_attrib.bullet       = (_node_para_int["bullet"] == 1) ? true : false;    return object_set;  }  #+END_SRC @@ -5439,7 +5447,7 @@ auto contents_endnote(  #+name: ao_object_setter_block  #+BEGIN_SRC d  auto contents_block( -  in string type, +  in string type_is,    in string object,    in string attrib,    in int obj_cite_number, @@ -5447,9 +5455,10 @@ auto contents_block(    ObjComposite object_set;    object_set.use                 = "content";    object_set.of                  = "block"; -  object_set.is_a                = type; +  object_set.is_a                = type_is;    object_set.object              = object;    object_set.obj_cite_number     = (obj_cite_number==0) ? "" : to!string(obj_cite_number); +  object_set.anchor_tags         = [];    return object_set;  }  #+END_SRC @@ -5459,7 +5468,7 @@ auto contents_block(  #+name: ao_object_setter_block_code  #+BEGIN_SRC d  auto contents_block_code( -  in string type, +  in string type_is,    in string object,    in string attrib_language_syntax,    in int obj_cite_number, @@ -5467,10 +5476,11 @@ auto contents_block_code(    ObjComposite object_set;    object_set.use                 = "content";    object_set.of                  = "block"; -  object_set.is_a                = type; +  object_set.is_a                = type_is;    object_set.block_attrib.syntax = attrib_language_syntax;    object_set.object              = object;    object_set.obj_cite_number     = (obj_cite_number==0) ? "" : to!string(obj_cite_number); +  object_set.anchor_tags         = [];    return object_set;  }  #+END_SRC @@ -5480,7 +5490,7 @@ auto contents_block_code(  #+name: ao_object_setter_block_obj_cite_number_string  #+BEGIN_SRC d  auto contents_block_obj_cite_number_string( -  in string         type, +  in string         type_is,    in string         object,    in string         obj_cite_number,    in string[string] _node_str, @@ -5489,7 +5499,7 @@ auto contents_block_obj_cite_number_string(    ObjComposite object_set;    object_set.use                               = "content";    object_set.of                                = "block"; -  object_set.is_a                              = type; +  object_set.is_a                              = type_is;    object_set.object                            = object;    object_set.obj_cite_number                   = obj_cite_number;    return object_set; diff --git a/org/ao_defaults.org b/org/ao_defaults.org index d991dec..26f8ae8 100644 --- a/org/ao_defaults.org +++ b/org/ao_defaults.org @@ -404,8 +404,8 @@ template SiSUrgxInitFlags() {        "tic_group"            : 0,        "tic_block"            : 0,        "tic_quote"            : 0, -      "obj_cite_number_status"           : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings -      "obj_cite_number_status_multi_obj" : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings +      "ocn_status"           : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings +      "ocn_status_multi_obj" : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings        "book_index"           : 0,      ];      return flags_type_init; @@ -416,7 +416,7 @@ template SiSUrgxInitFlags() {  #+name: ao_defaults_templates  #+BEGIN_SRC d  template SiSUnode() { -  string[string] node_metadata_str() { +  string[string] node_metadata_heading_str() {      auto _node = [          "is"                            : "",          "ocn"                           : "", @@ -426,7 +426,7 @@ template SiSUnode() {      ];      return _node;    } -  int[string] node_metadata_int() { +  int[string] node_metadata_heading_int() {      auto _node = [          "ocn"                           : 0, // decide whether to use or keep?          "ptr_doc_object"                : 0, @@ -439,6 +439,24 @@ template SiSUnode() {      ];      return _node;    } +  string[string] node_metadata_para_str() { +    auto _node = [ +        "is"                            : "", +        "ocn"                           : "", +        "attrib"                        : "", +        // "segment_anchor_tag"            : "", +    ]; +    return _node; +  } +  int[string] node_metadata_para_int() { +    auto _node = [ +        "ocn"                           : 0, +        "indent_base"                   : 0, +        "indent_hang"                   : 0, +        "bullet"                        : 0, // bool (0|1) +    ]; +    return _node; +  }  }  #+END_SRC diff --git a/org/output.org b/org/output.org index 924540c..0bad148 100644 --- a/org/output.org +++ b/org/output.org @@ -91,31 +91,46 @@ template SiSUoutputHTML() {  ** text                                                                :text:  ** html [#A]                                                           :html:  *** html text objects -**** html functions -***** html +**** misc -***** heading +#+name: output_html +#+BEGIN_SRC d +string _html_anchor_tags(const(string[]) anchor_tags) { +  string tags=""; +  if (anchor_tags.length > 0) { +    foreach (tag; anchor_tags) { +      if (!(tag.empty)) { +        tags ~= "<a name=\"" ~ tag ~ "\"></a>"; +      } +    } +  } +  return tags; +} +#+END_SRC + +**** heading  #+name: output_html  #+BEGIN_SRC d  auto html_heading(O)(    auto ref const O         obj,  ) { +  auto tags = _html_anchor_tags(obj.anchor_tags);    string o;    o = format(q"¶<br><hr /><br>    <div class="substance">      <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> -    <h%s class="%s" id="%s"><a name="%s"></a> +    <h%s class="%s" id="%s"><a name="%s"></a>%s        %s      </h%s> -  </div> -  ¶", +  </div>¶",    obj.obj_cite_number,    obj.obj_cite_number,    obj.heading_attrib.lev_int_markup,    obj.is_a,    obj.obj_cite_number,    obj.obj_cite_number, +  tags,    obj.object,    obj.heading_attrib.lev_int_markup    ); @@ -123,43 +138,44 @@ auto html_heading(O)(  }  #+END_SRC -***** para +**** para  #+name: output_html  #+BEGIN_SRC d  auto html_para(O)(    auto ref const O         obj,  ) { +  auto tags = _html_anchor_tags(obj.anchor_tags);    string o;    if (obj.obj_cite_number.empty) { -    o = format(q"¶<div class="substance"> -    <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> -    <p class="%s" attrib="h%si%s"> -      %s -    </p> -  </div> -  ¶", +    o = format(q"¶  <div class="substance"> +  <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> +  <p class="%s" attrib="h%si%s">%s +    %s +  </p> +</div>¶",        obj.obj_cite_number,        obj.obj_cite_number,        obj.is_a,        obj.para_attrib.indent_start,        obj.para_attrib.indent_rest, +      tags,        obj.object      );    } else { -    o = format(q"¶<div class="substance"> -    <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> -    <p class="%s" attrib="h%si%s" id="%s"> -      %s -    </p> -  </div> -  ¶", +    o = format(q"¶  <div class="substance"> +  <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> +  <p class="%s" attrib="h%si%s" id="%s">%s +    %s +  </p> +</div>¶",        obj.obj_cite_number,        obj.obj_cite_number,        obj.is_a,        obj.para_attrib.indent_start,        obj.para_attrib.indent_rest,        obj.obj_cite_number, +      tags,        obj.object      );    } @@ -167,56 +183,7 @@ auto html_para(O)(  }  #+END_SRC -***** html endnote - -#+name: output_html -#+BEGIN_SRC d -auto html_endnote(O)( -  auto ref const O         obj, -) { -  string o; -  o = format(q"¶<div class="substance"> -    <label class="tag"><a name="%s" a href="%s" class="lnkocn"></a></label> -    <p class="%s" attrib="h%si%s"> -      %s -    </p> -  </div> -  ¶", -    obj.anchor_tags[0], -    obj.anchor_tags[0], -    obj.is_a, -    obj.para_attrib.indent_start, -    obj.para_attrib.indent_rest, -    obj.object -  ); -  return o; -} -#+END_SRC - -***** html toc - -#+name: output_html -#+BEGIN_SRC d -auto html_toc(O)( -  auto ref const O         obj, -) { -  string o; -  o = format(q"¶<div class="substance"> -    <p class="%s" attrib="h%si%s"> -      %s -    </p> -  </div> -  ¶", -  obj.is_a, -  obj.para_attrib.indent_start, -  obj.para_attrib.indent_rest, -  obj.object -  ); -  return o; -} -#+END_SRC - -***** html nugget +**** nugget  #+name: output_html  #+BEGIN_SRC d @@ -224,13 +191,12 @@ auto html_nugget(O)(    auto ref const O         obj,  ) {    string o; -  o = format(q"¶<div class="substance"> -    <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> -    <p class="%s" id="%s"> -      %s -    </p> -  </div> -  ¶", +  o = format(q"¶  <div class="substance"> +  <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> +  <p class="%s" id="%s"> +    %s +  </p> +</div>¶",    obj.obj_cite_number,    obj.obj_cite_number,    obj.is_a, @@ -241,14 +207,13 @@ auto html_nugget(O)(  }  #+END_SRC -**** html scroll head & tail +**** scroll head  #+name: output_html  #+BEGIN_SRC d  auto scroll_head_html() {    string o; -  o = format(q"¶ -<!DOCTYPE html> +  o = format(q"¶<!DOCTYPE html>  <html>  <head>    <meta charset="utf-8"> @@ -274,24 +239,70 @@ auto scroll_head_html() {    <link href="../../../_sisu/css/html.css" rel="stylesheet">  </head>  <body lang="en"> -<a name="top" id="top"></a> -¶"); +<a name="top" id="top"></a>¶"); +  return o; +} +#+END_SRC + +**** scroll toc + +#+name: output_html +#+BEGIN_SRC d +auto html_toc(O)( +  auto ref const O         obj, +) { +  string o; +  o = format(q"¶  <div class="substance"> +  <p class="%s" attrib="h%si%s"> +    %s +  </p> +</div>¶", +  obj.is_a, +  obj.para_attrib.indent_start, +  obj.para_attrib.indent_rest, +  obj.object +  ); +  return o; +} +#+END_SRC + +**** scroll endnote + +#+name: output_html +#+BEGIN_SRC d +auto html_endnote(O)( +  auto ref const O         obj, +) { +  string o; +  o = format(q"¶    <p class="%s" attrib="h%si%s"> +  %s +</p>¶", +    obj.is_a, +    obj.para_attrib.indent_start, +    obj.para_attrib.indent_rest, +    obj.object +  );    return o;  } +#+END_SRC + +**** scroll tail + +#+name: output_html +#+BEGIN_SRC d  auto scroll_tail_html() {    string o; -  o = format(q"¶ -<a name="bottom" id="bottom"></a> -<a name="end" id="end"></a> +  o = format(q"¶  <a name="bottom" id="bottom"></a> +  <a name="end" id="end"></a>  </div>  </body> -</html> -¶"); +</html>¶");    return o;  }  #+END_SRC -**** html scroll +*** html hub, sort objects [#A] +**** scroll  #+name: output_html  #+BEGIN_SRC d @@ -365,1296 +376,1296 @@ void scroll(C)(  }  #+END_SRC -*** css                                                                 :css: +**** seg +*** css                                                               :css:  #+name: output_html_css  #+BEGIN_SRC d  auto html_css() {    string css;    css="/* SiSU css default stylesheet */ -      body { -        color: black; -        background: #ffffff; -        background-color: #ffffff; -      } -      a:link { -        color: #003399; -        text-decoration: none; -      } -      a:visited { -        color: #003399; -        text-decoration: none; -      } -      a:hover { -        color: #000000; -        background-color: #f9f9aa; -      } -      a.lnkocn:link { -        color: #777777; -        text-decoration: none; -      } -      a:hover img { -        background-color: #ffffff; -      } -      a:active { -        color: #003399; -        text-decoration: underline; -      } -      div { -        margin-left: 0; -        margin-right: 0; -      } -      div.p { -        margin-left: 5%; -        margin-right: 1%; -      } - -      #top_band { -        position: absolute; -        top: 0; -        bottom: 80px; -        width: 100%; -      } -      #top_band_search { -        position: absolute; -        top: 0px; -        right: 0px; -        margin-left: 75%; -        width: 20%; -      } -      #column_left { -        position: absolute; -        top: 80px; -        left: 0; -        margin-left: 1%; -        width: 20%; -      } -      #column_center { -        position: absolute; -        top: 80px; -        margin-left: 20%; -        width: 55%; -      } -      #column_right { -        position: absolute; -        top: 80px; -        right: 0px; -        margin-left: 75%; -        width: 25%; -      } -      #pane_major { -        position: absolute; -        top: 0px; -        left: 0; -        margin-left: 0; -        width: 80%; -      } -      #pane_minor { -        position: absolute; -        top: 0px; -        right: 0px; -        margin-left: 75%; -        width: 20%; -        background-color: #aaaaaa; -      } -      .norm, .bold, .verse, .group, .block, .alt { -        line-height: 133%; -        margin-left: 0em; -        margin-right: 2em; -        margin-top: 12px; -        margin-bottom: 0px; -        padding-left: 0em; -        text-indent: 0em; -      } -      p, h0, h1, h2, h3, h4, h5, h6, h7 { -        display: block; -        font-family: verdana, arial, georgia, tahoma, sans-serif, helvetica, times, roman; -        font-size: 100%; -        font-weight: normal; -        line-height: 133%; -        text-align: justify; -        margin-left: 0em; -        margin-right: 2em; -        text-indent: 0mm; -        margin-top: 0.8em; -        margin-bottom: 0.8em; -      } -      /* indent */ -      p.norm { } -      p.i1 {padding-left: 1em;} -      p.i2 {padding-left: 2em;} -      p.i3 {padding-left: 3em;} -      p.i4 {padding-left: 4em;} -      p.i5 {padding-left: 5em;} -      p.i6 {padding-left: 6em;} -      p.i7 {padding-left: 7em;} -      p.i8 {padding-left: 8em;} -      p.i9 {padding-left: 9em;} -      /* hanging indent */ -      p.h0i0 { -        padding-left: 0em; -        text-indent:  0em; -      } -      p.h0i1 { -        padding-left: 1em; -        text-indent: -1em; -      } -      p.h0i2 { -        padding-left: 2em; -        text-indent: -2em; -      } -      p.h0i3 { -        padding-left: 3em; -        text-indent: -3em; -      } -      p.h0i4 { -        padding-left: 4em; -        text-indent: -4em; -      } -      p.h0i5 { -        padding-left: 5em; -        text-indent: -5em; -      } -      p.h0i6 { -        padding-left: 6em; -        text-indent: -6em; -      } -      p.h0i7 { -        padding-left: 7em; -        text-indent: -7em; -      } -      p.h0i8 { -        padding-left: 8em; -        text-indent: -8em; -      } -      p.h0i9 { -        padding-left: 9em; -        text-indent: -9em; -      } -      p.h1i0 { -        padding-left: 0em; -        text-indent:  1em; -      } -      p.h1i1 { -        padding-left: 1em; -        text-indent:  0em; -      } -      p.h1i2 { -        padding-left: 2em; -        text-indent: -1em; -      } -      p.h1i3 { -        padding-left: 3em; -        text-indent: -2em; -      } -      p.h1i4 { -        padding-left: 4em; -        text-indent: -3em; -      } -      p.h1i5 { -        padding-left: 5em; -        text-indent: -4em; -      } -      p.h1i6 { -        padding-left: 6em; -        text-indent: -5em; -      } -      p.h1i7 { -        padding-left: 7em; -        text-indent: -6em; -      } -      p.h1i8 { -        padding-left: 8em; -        text-indent: -7em; -      } -      p.h1i9 { -        padding-left: 9em; -        text-indent: -8em; -      } -      p.h2i0 { -        padding-left: 0em; -        text-indent:  2em; -      } -      p.h2i1 { -        padding-left: 1em; -        text-indent:  1em; -      } -      p.h2i2 { -        padding-left: 2em; -        text-indent:  0em; -      } -      p.h2i3 { -        padding-left: 3em; -        text-indent: -1em; -      } -      p.h2i4 { -        padding-left: 4em; -        text-indent: -2em; -      } -      p.h2i5 { -        padding-left: 5em; -        text-indent: -3em; -      } -      p.h2i6 { -        padding-left: 6em; -        text-indent: -4em; -      } -      p.h2i7 { -        padding-left: 7em; -        text-indent: -5em; -      } -      p.h2i8 { -        padding-left: 8em; -        text-indent: -6em; -      } -      p.h2i9 { -        padding-left: 9em; -        text-indent: -7em; -      } -      p.h3i0 { -        padding-left: 0em; -        text-indent:  3em; -      } -      p.h3i1 { -        padding-left: 1em; -        text-indent:  2em; -      } -      p.h3i2 { -        padding-left: 2em; -        text-indent:  1em; -      } -      p.h3i3 { -        padding-left: 3em; -        text-indent:  0em; -      } -      p.h3i4 { -        padding-left: 4em; -        text-indent: -1em; -      } -      p.h3i5 { -        padding-left: 5em; -        text-indent: -2em; -      } -      p.h3i6 { -        padding-left: 6em; -        text-indent: -3em; -      } -      p.h3i7 { -        padding-left: 7em; -        text-indent: -4em; -      } -      p.h3i8 { -        padding-left: 8em; -        text-indent: -5em; -      } -      p.h3i9 { -        padding-left: 9em; -        text-indent: -6em; -      } -      p.h4i0 { -        padding-left: 0em; -        text-indent:  4em; -      } -      p.h4i1 { -        padding-left: 1em; -        text-indent:  3em; -      } -      p.h4i2 { -        padding-left: 2em; -        text-indent:  2em; -      } -      p.h4i3 { -        padding-left: 3em; -        text-indent:  1em; -      } -      p.h4i4 { -        padding-left: 4em; -        text-indent:  0em; -      } -      p.h4i5 { -        padding-left: 5em; -        text-indent: -1em; -      } -      p.h4i6 { -        padding-left: 6em; -        text-indent: -2em; -      } -      p.h4i7 { -        padding-left: 7em; -        text-indent: -3em; -      } -      p.h4i8 { -        padding-left: 8em; -        text-indent: -4em; -      } -      p.h4i9 { -        padding-left: 9em; -        text-indent: -5em; -      } -      p.h5i0 { -        padding-left: 0em; -        text-indent:  5em; -      } -      p.h5i1 { -        padding-left: 1em; -        text-indent:  4em; -      } -      p.h5i2 { -        padding-left: 2em; -        text-indent:  3em; -      } -      p.h5i3 { -        padding-left: 3em; -        text-indent:  2em; -      } -      p.h5i4 { -        padding-left: 4em; -        text-indent:  1em; -      } -      p.h5i5 { -        padding-left: 5em; -        text-indent:  0em; -      } -      p.h5i6 { -        padding-left: 6em; -        text-indent: -1em; -      } -      p.h5i7 { -        padding-left: 7em; -        text-indent: -2em; -      } -      p.h5i8 { -        padding-left: 8em; -        text-indent: -3em; -      } -      p.h5i9 { -        padding-left: 9em; -        text-indent: -4em; -      } -      p.h6i0 { -        padding-left: 0em; -        text-indent:  6em; -      } -      p.h6i1 { -        padding-left: 1em; -        text-indent:  5em; -      } -      p.h6i2 { -        padding-left: 2em; -        text-indent:  4em; -      } -      p.h6i3 { -        padding-left: 3em; -        text-indent:  3em; -      } -      p.h6i4 { -        padding-left: 4em; -        text-indent:  2em; -      } -      p.h6i5 { -        padding-left: 5em; -        text-indent:  1em; -      } -      p.h6i6 { -        padding-left: 6em; -        text-indent:  0em; -      } -      p.h6i7 { -        padding-left: 7em; -        text-indent: -1em; -      } -      p.h6i8 { -        padding-left: 8em; -        text-indent: -2em; -      } -      p.h6i9 { -        padding-left: 9em; -        text-indent: -3em; -      } -      p.h7i0 { -        padding-left: 0em; -        text-indent:  7em; -      } -      p.h7i1 { -        padding-left: 1em; -        text-indent:  6em; -      } -      p.h7i2 { -        padding-left: 2em; -        text-indent:  5em; -      } -      p.h7i3 { -        padding-left: 3em; -        text-indent:  4em; -      } -      p.h7i4 { -        padding-left: 4em; -        text-indent:  3em; -      } -      p.h7i5 { -        padding-left: 5em; -        text-indent:  2em; -      } -      p.h7i6 { -        padding-left: 6em; -        text-indent:  1em; -      } -      p.h7i7 { -        padding-left: 7em; -        text-indent:  0em; -      } -      p.h7i8 { -        padding-left: 8em; -        text-indent: -1em; -      } -      p.h7i9 { -        padding-left: 9em; -        text-indent: -2em; -      } -      p.h8i0 { -        padding-left: 0em; -        text-indent:  8em; -      } -      p.h8i1 { -        padding-left: 1em; -        text-indent:  7em; -      } -      p.h8i2 { -        padding-left: 2em; -        text-indent:  6em; -      } -      p.h8i3 { -        padding-left: 3em; -        text-indent:  5em; -      } -      p.h8i4 { -        padding-left: 4em; -        text-indent:  4em; -      } -      p.h8i5 { -        padding-left: 5em; -        text-indent:  3em; -      } -      p.h8i6 { -        padding-left: 6em; -        text-indent:  2em; -      } -      p.h8i7 { -        padding-left: 7em; -        text-indent:  1em; -      } -      p.h8i8 { -        padding-left: 8em; -        text-indent:  0em; -      } -      p.h8i9 { -        padding-left: 9em; -        text-indent: -1em; -      } -      p.h9i0 { -        padding-left: 0em; -        text-indent:  9em; -      } -      p.h9i1 { -        padding-left: 1em; -        text-indent:  8em; -      } -      p.h9i2 { -        padding-left: 2em; -        text-indent:  7em; -      } -      p.h9i3 { -        padding-left: 3em; -        text-indent:  6em; -      } -      p.h9i4 { -        padding-left: 4em; -        text-indent:  5em; -      } -      p.h9i5 { -        padding-left: 5em; -        text-indent:  4em; -      } -      p.h9i6 { -        padding-left: 6em; -        text-indent:  3em; -      } -      p.h9i7 { -        padding-left: 7em; -        text-indent:  2em; -      } -      p.h9i8 { -        padding-left: 8em; -        text-indent:  1em; -      } -      p.h9i9 { -        padding-left: 9em; -        text-indent:  0em; -      } -      p.it0 { -        margin-left: 0em; -        margin-top: 6px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it1 { -        margin-left: 1em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it2 { -        margin-left: 2em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it3 { -        margin-left: 3em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it4 { -        margin-left: 4em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it5 { -        margin-left: 5em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it6 { -        margin-left: 6em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it7 { -        margin-left: 7em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it8 { -        margin-left: 8em; -        margin-top: 0px; -        margin-bottom: 0px; -        line-height: 100%; -      } -      p.it9 { -        margin-left: 9em; -        margin-bottom: 0px; -        margin-top: 0px; -        line-height: 100%; -      } -      p.block { } -      p.group { } -      p.alt { } -      p.verse { -        margin-bottom: 6px; -      } -      p.code { -        font-family: inconsolata, andale mono, courier new, courier, monospace; -        font-size: 90%; -        text-align: left; -        background-color: #eeeeee; -      } -      p.caption { -        text-align: left; -        font-size: 80%; -        display: inline; -      } -      p.endnote { -        font-size: 96%; -        line-height: 120%; -        text-align: left; -        margin-right: 15mm; -      } -      p.endnote_indent { -        font-size: 96%; -        line-height: 120%; -        text-align: left; -        margin-left: 2em; -        margin-right: 15mm; -      } -      p.center { -        text-align: center; -      } -      p.bold { -        font-weight: bold; -      } -      p.bold_left { -        font-weight: bold; -        text-align: left; -      } -      p.centerbold { -        text-align: center; -        font-weight: bold; -      } -      p.em { -        font-weight: bold; -        font-style: normal; -        background: #fff3b6; -      } -      p.small { -        font-size: 80%; -        margin-top: 0px; -        margin-bottom: 0px; -        margin-right: 6px; -        text-align: left; -      } -      .tiny, .tiny_left, .tiny_right, .tiny_center { -        font-size: 10px; -        margin-top: 0px; -        margin-bottom: 0px; -        color: #777777; -        margin-right: 6px; -        text-align: left; -      } -      p.tiny { } -      p.tiny_left { -        margin-left: 0px; -        margin-right: 0px; -        text-align: left; -      } -      p.tiny_right { -        margin-right: 1em; -        text-align: right; -      } -      p.tiny_center { -        margin-left: 0px; -        margin-right: 0px; -        text-align: center; -      } -      p.pane, p.pane_title, p.pane_blurb, p.pane_link, p.pane_indent { -        font-size: 80%; -        margin-top: 0px; -        margin-bottom: 0px; -        margin-left: 2mm; -        margin-right: 4px; -        text-align: left; -      } -      p.pane { } -      p.pane_title { -        font-weight: bold; -        margin-bottom: 0px; -      } -      p.pane_blurb { -        font-size: 10px; -        margin-bottom: 0px; -      } -      p.pane_link { -        font-size: 10px; -        margin-bottom: 0px; -        margin-left: 4mm; -      } -      p.pane_indent { -        font-size: 10px; -        margin-bottom: 0px; -        margin-left: 4mm; -      } -      p.concordance_word { -        line-height: 150%; -        font-weight: bold; -        display: inline; -        margin-top: 4px; -        margin-bottom: 1px; -      } -      p.concordance_count { -        font-size: 80%; -        color: #777777; -        display: inline; -        margin-left: 0em; -      } -      p.concordance_object { -        font-size: 80%; -        line-height: 120%; -        text-align: left; -        margin-left: 3em; -        margin-top: 1px; -        margin-bottom: 3px; -      } -      p.book_index_lev1 { -        line-height: 100%; -        margin-top: 4px; -        margin-bottom: 1px; -      } -      p.book_index_lev2 { -        line-height: 100%; -        text-align: left; -        margin-left: 3em; -        margin-top: 1px; -        margin-bottom: 3px; -      } -      p.quickref { -        font-size: 10px; -        font-style: italic; -        margin-top: 0px; -        margin-bottom: 0px; -        color: #777777; -        margin-right: 5px; -        text-align: left; -      } -      p.bigref { -        font-size: 11px; -        font-weight: bold; -        margin-top: 0px; -        margin-bottom: 0px; -        color: #777777; -        margin-right: 5px; -        text-align: center; -      } -      p.letter { -        font-weight: bold; -        font-size: 80%; -        margin-left: 0em; -        margin-top: 2px; -        margin-bottom: 2px; -        margin-right: 6px; -        text-align: left; -        color: white; -        background: #880000; -      } -      tt { -        font-family: inconsolata, andale mono, courier new, courier, monospace; -        background-color: #eeeeee; -      } -      label.ocn { -        width: 2%; -        float: right; -        top: 0; -        font-size: 10px; -        margin-top: 0px; -        margin-bottom: 5px; -        color: #777777; -        margin-right: 5px; -        text-align: right; -        background-color: #ffffff; -      } -      table { } -      tr { } -      th,td { -        vertical-align: top; -        text-align: left; -      } -      th { -        font-weight: bold; -      } -      p.left,th.left,td.left { -        text-align: left; -      } -      p.small_left,th.small_left,td.small_left { -        text-align: left; -        font-size: 80%; -      } -      p.right,th.right,td.right { -        text-align: right; -      } -      #horizontal_links { -        background: #eeeeee; -        margin-left: 5%; -        margin-right: 5%; -      } -      #horizontal { -        margin: 0; -        padding: 0 0 0 10px; -        border-top: 1px solid #000077; -        border-bottom: 1px solid #000077; -      } -      #horizontal li { -        margin: 0 0 0 0; -        padding: 0 16px 0 0; -        display: inline; -        list-style-type: none; -        text-align: left; -        background: none; -      } -      #horizontal a { -        line-height: 12px; -        margin: 0 0 0 0; -        text-decoration: none; -        color: #000077; -      } -      #horizontal a.active, #horizontal a:hover { -        border-bottom: 2px solid #777777; -        padding-bottom: 2px; -        color: #000077; -      } -      #horizontal a:hover { -        color: #000077; -      } -      #document_versions { -        position: absolute; -        top: 10mm; -        right: 2%; -        width: 12%; -        float: right; -      } -      #vertical_links { -        position: absolute; -        top: 10mm; -        right: 0px; -        width: 20%; -        background: #dddddd; -        float: right; -      } -      #vertical { -        padding: 0 12px 0px 0px; -        margin-left: 2%; -        margin-right: 2%; -      } -      #vertical li { -        display: block; -        list-style-type: none; -      } -      #vertical a { -        line-height: 12px; -        text-decoration: none; -        color: #000077; -      } -      #vertical a.active, #vertical a:hover { -        border-bottom: 2px solid #777777; -        padding-bottom: 2px; -        color: #000077; -      } -      ul, li { -        list-style-type: none; -        list-style: none; -        padding-left: 20px; -        display: block; -        font-family: verdana, arial, georgia, tahoma, sans-serif, helvetica, times, roman; -        font-weight: normal; -        line-height: 150%; -        text-align: left; -        text-indent: 0mm; -        margin-left: 1em; -        margin-right: 2em; -        margin-top: 3px; -        margin-bottom: 3px; -      } -      li { -        background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; -      } -      ul { -      } -      li.bullet { margin-left: 1em; } -      li.i1 { margin-left: 2em; } -      li.i2 { margin-left: 3em; } -      li.i3 { margin-left: 4em; } -      li.i4 { margin-left: 5em; } -      li.i5 { margin-left: 6em; } -      li.i6 { margin-left: 7em; } -      li.i7 { margin-left: 8em; } -      li.i8 { margin-left: 9em; } -      li.i9 { margin-left: 10em; } -      li.doc, li.ref, li.refcenter { -        margin-top: 0px; -        margin-bottom: 0px; -        margin-right: 0px; -        font-size: 8px; -        font-style: normal; -        text-align: left; -      } -      li.doc { -        background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; -        padding-left: 16px; -        margin-left: 10px; -        margin-right: 0px; -      } -      li.ref { -        background: none; -        padding-left: 0; -        margin-left: 0; -        color: #777777; -      } -      li.refcenter { -        background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; -        padding-left: 20px; -        margin-left: 10%; -        font-size: 9px; -        color: #777777; -        text-align: center; -      } -      li.refbold { -        list-style-type: none; -        padding-left: 16px; -        margin-left: 0; -        margin-right: 10mm; -        font-weight: bold; -      } -      h0, h1, h2, h3, h4, h5, h6, h7 { -        font-weight: bold; -        line-height: 120%; -        text-align: left; -        margin-top: 20px; -        margin-bottom: 10px; -      } -      h4.norm, h5.norm, h6.norm, h7.norm { -        margin-top: 10px; -        margin-bottom: 0px; -      } -      h0.center, h1.center, h2.center, h3.center, h4.center, h5.center, h6.center, h7.center { -        text-align: center; -      } -      h0 { font-size: 125%; } -      h1 { font-size: 120%; } -      h2 { font-size: 115%; } -      h3 { font-size: 110%; } -      h4 { font-size: 105%; } -      h5 { font-size: 100%; } -      h6 { font-size: 100%; } -      h7 { font-size: 100%; } -      h1.i {margin-left: 2em;} -      h2.i {margin-left: 3em;} -      h3.i {margin-left: 4em;} -      h4.i {margin-left: 5em;} -      h5.i {margin-left: 6em;} -      h6.i {margin-left: 7em;} -      h7.i {margin-left: 8em;} -      h8.i {margin-left: 9em;} -      h9.i {margin-left: 10em;} -      h1.top_band { -        display: inline; -        text-align: left; -        margin-top: 0; -        margin-left: 4mm; -        text-indent: 0mm; -        font-weight: bold; -        font-size: 120%; -      } -      h2.top_band_tiny { -        font-size: 10px; -        font-weight: normal; -        margin-top: 0px; -        margin-left: 4mm; -        text-indent: 0mm; -        margin-bottom: 0px; -        color: #777777; -        margin-left: 140px; -        margin-right: 0px; -        text-align: left; -      } -      p.top_band { -        display: inline; -        text-align: left; -        margin-top: 0; -        margin-left: 140px; -        text-indent: 0mm; -        font-weight: bold; -        font-size: 120%; -      } -      p.top_band_tiny { -        font-size: 10px; -        margin-top: 0px; -        margin-bottom: 0px; -        color: #777777; -        margin-left: 140px; -        margin-right: 0px; -        text-align: left; -      } -      p.top_band_image { -        float: left; -        display: inline; -        text-align: left; -        margin-top: 0; -        margin-left: 1mm; -        text-indent: 0mm; -        margin-right: 1mm; -      } -      .banner, .subbanner { -        font-weight: bold; -        text-align: center; -        margin-left: 10mm; -        margin-right: 15mm; -        margin-top: 20px; -        margin-bottom: 10px; -      } -      h0.banner { -        font-size: 125%; -      } -      h1.banner { -        font-size: 120%; -      } -      h1.subbanner { -        font-size: 115%; -      } -      h2.banner { -        font-size: 110%; -      } -      h3.banner { -        color: #990000; -        font-size: 105%; -      } -      h4.banner { -        color: #ff0000; -        font-size: 100%; -      } -      h5.banner { -      } -      h6.banner { -      } -      h7.banner { -      } -      .toc { -        font-weight: normal; -        margin-top: 6px; -        margin-bottom: 6px; -      } -      h0.toc { -        margin-left: 1em; -        font-size: 120%; -        line-height: 150%; -      } -      h1.toc { -        margin-left: 1em; -        font-size: 115%; -        line-height: 150%; -      } -      h2.toc { -        margin-left: 2em; -        font-size: 110%; -        line-height: 140%; -      } -      h3.toc { -        margin-left: 3em; -        font-size: 105%; -        line-height: 120%; -      } -      h4.toc { -        margin-left: 4em; -        font-size: 100%; -        line-height: 120%; -      } -      h5.toc { -        margin-left: 5em; -        font-size: 95%; -        line-height: 110%; -      } -      h6.toc { -        margin-left: 6em; -        font-size: 90%; -        line-height: 110%; -      } -      h7.toc { -        margin-left: 7em; -        font-size: 85%; -        line-height: 100%; -      } -      .microtoc { -        margin-top: 2px; -        margin-bottom: 2px; -      } -      h0.microtoc { -        margin-left: 0mm; -        font-size: 120%; -      } -      h1.microtoc { -        margin-left: 0mm; -        font-size: 115%; -      } -      h2.microtoc { -        margin-left: 5mm; -        font-size: 110%; -      } -      h3.microtoc { -        margin-left: 10mm; -        font-size: 105%; -      } -      h4.microtoc { -        margin-left: 15mm; -        font-weight: normal; -        font-size: 100%; -      } -      h5.microtoc { -        margin-left: 20mm; -        font-weight: normal; -        font-size: 95%; -      } -      h6.microtoc { -        margin-left: 25mm; -        font-weight: normal; -        font-size: 90%; -      } -      h7.microtoc { -        margin-left: 30mm; -        font-weight: normal; -        font-size: 85%; -      } -      .subtoc { -        margin-right: 34%; -        font-weight: normal; -      } -      h5.subtoc { -        margin-left: 2em; -        font-size: 80%; -        margin-top: 2px; -        margin-bottom: 2px; -      } -      h6.subtoc { -        margin-left: 3em; -        font-size: 75%; -        margin-top: 0px; -        margin-bottom: 0px; -      } -      h7.subtoc { -        margin-left: 4em; -        font-size: 70%; -        margin-top: 0px; -        margin-bottom: 0px; -      } -      div.substance { -        width: 100%; -        background-color: #ffffff; -      } -      div.ocn { -        width: 5%; -        float: right; -        top: 0; -        background-color: #ffffff; -      } -      div.endnote { -        width: 95%; -        background-color: #fffffff; -      } -      div.toc { -        position: absolute; -        float: left; -        margin: 0; -        padding: 0; -        padding-top: 0.5em; -        border: 0; -        width: 13em; -        background-color: #eeeeee; -        margin-right:1em; -      } -      div.summary { -        margin: 0; -        padding: 0; -        border-left: 13em solid #eeeeee; -        padding-left: 1em; -        background-color: #eeeeee; -      } -      div.content, div.main_column { -        margin: 0; -        padding: 0; -        border-left: 13em solid #ffffff; -        padding-left: 1em; -        padding-right: 1em; -      } -      div.content0, div.main_column0 { -        margin: 0; -        padding: 0; -        border-left: 0% solid #ffffff; -        padding-left: 5%; -      } -      div.scroll { -        margin: 0; -        padding: 0; -        padding-left: 1em; -        padding-right: 1em; -      } -      div.content:after { -        content:' '; -        clear:both; -        display:block; -        height:0; -        overflow:hidden -      } -      div.footer { -        clear:left; -        padding: 0.5em; -        font-size: 80%; -        margin: 0; -      } -      div.toc ul { -        list-style: none; -        padding: 0; -        margin: 0; -      } -      div.toc li ul a, li ul span.currentlink -      { -        font-weight: normal; -        font-size: 90%; -        padding-left: 2em; -        background-color: #eeeeee; -      } -      div.toc a, span.currentlink{ -        display:block; -        text-decoration: none; -        padding-left: 0.5em; -        color: #0000aa; -      } -      hr { -        width: 90%; -      } -      span.currentlink { -        text-decoration: none; -        background-color: #aaaaf9; -      } -      div.toc a:visited { -        color: #0000aa; -      } -      div.toc a:hover { -        color: #000000; -        background-color: #f9f9aa; -      } -      .minitoc { -        font-weight: normal; -        margin-top: 2px; -        margin-bottom: 2px; -      } -      h1.minitoc, h2.minitoc, h3.minitoc { -        margin-left: 0em; -        font-weight: bold; -        text-align: left; -        font-size: 90%; -        margin-top: 4px; -        margin-bottom: 4px; -      } -      h4.minitoc { -        margin-left: 0em; -        font-size: 90%; -      } -      h5.minitoc { -        margin-left: 1em; -        font-size: 85%; -      } -      h6.minitoc { -        margin-left: 2em; -        font-size: 85%; -      } -      h7.minitoc { -        margin-left: 3em; -        font-size: 80%; -      } -      h0.minitoc { -        margin-left: 0em; -        font-size: 90%; -      } -      h0.c, h1.c, h2.c, h3.c, h4.c, h5.c, h6.c, h7.c, p.c { -        text-align: center -      } -      h1.red, h2.red, h3.red, h4.red, h5.red, h6.red, h7.red { -        text-align: center; -        color: #ff0000; -        margin-left: 5mm; -        text-indent: 5mm; -        margin-top: 30px; -        margin-bottom: 20px; -        margin-right: 15mm; -      } -      h1.ruby, h2.ruby, h3.ruby, h4.ruby, h5.ruby, h6.ruby, h7.ruby { -        text-align: center; -        color: #990000; -        margin-left: 5mm; -        text-indent: 5mm; -        margin-top: 30px; -        margin-bottom: 20px; -        margin-right: 15mm; +  body { +    color: black; +    background: #ffffff; +    background-color: #ffffff; +  } +  a:link { +    color: #003399; +    text-decoration: none; +  } +  a:visited { +    color: #003399; +    text-decoration: none; +  } +  a:hover { +    color: #000000; +    background-color: #f9f9aa; +  } +  a.lnkocn:link { +    color: #777777; +    text-decoration: none; +  } +  a:hover img { +    background-color: #ffffff; +  } +  a:active { +    color: #003399; +    text-decoration: underline; +  } +  div { +    margin-left: 0; +    margin-right: 0; +  } +  div.p { +    margin-left: 5%; +    margin-right: 1%; +  } +  #top_band { +    position: absolute; +    top: 0; +    bottom: 80px; +    width: 100%; +  } +  #top_band_search { +    position: absolute; +    top: 0px; +    right: 0px; +    margin-left: 75%; +    width: 20%; +  } +  #column_left { +    position: absolute; +    top: 80px; +    left: 0; +    margin-left: 1%; +    width: 20%; +  } +  #column_center { +    position: absolute; +    top: 80px; +    margin-left: 20%; +    width: 55%; +  } +  #column_right { +    position: absolute; +    top: 80px; +    right: 0px; +    margin-left: 75%; +    width: 25%; +  } +  #pane_major { +    position: absolute; +    top: 0px; +    left: 0; +    margin-left: 0; +    width: 80%; +  } +  #pane_minor { +    position: absolute; +    top: 0px; +    right: 0px; +    margin-left: 75%; +    width: 20%; +    background-color: #aaaaaa; +  } +  .norm, .bold, .verse, .group, .block, .alt { +    line-height: 133%; +    margin-left: 0em; +    margin-right: 2em; +    margin-top: 12px; +    margin-bottom: 0px; +    padding-left: 0em; +    text-indent: 0em; +  } +  p, h0, h1, h2, h3, h4, h5, h6, h7 { +    display: block; +    font-family: verdana, arial, georgia, tahoma, sans-serif, helvetica, times, roman; +    font-size: 100%; +    font-weight: normal; +    line-height: 133%; +    text-align: justify; +    margin-left: 0em; +    margin-right: 2em; +    text-indent: 0mm; +    margin-top: 0.8em; +    margin-bottom: 0.8em; +  } +  /* indent */ +  p.norm { } +  p.i1 {padding-left: 1em;} +  p.i2 {padding-left: 2em;} +  p.i3 {padding-left: 3em;} +  p.i4 {padding-left: 4em;} +  p.i5 {padding-left: 5em;} +  p.i6 {padding-left: 6em;} +  p.i7 {padding-left: 7em;} +  p.i8 {padding-left: 8em;} +  p.i9 {padding-left: 9em;} +  /* hanging indent */ +  p.h0i0 { +    padding-left: 0em; +    text-indent:  0em; +  } +  p.h0i1 { +    padding-left: 1em; +    text-indent: -1em; +  } +  p.h0i2 { +    padding-left: 2em; +    text-indent: -2em; +  } +  p.h0i3 { +    padding-left: 3em; +    text-indent: -3em; +  } +  p.h0i4 { +    padding-left: 4em; +    text-indent: -4em; +  } +  p.h0i5 { +    padding-left: 5em; +    text-indent: -5em; +  } +  p.h0i6 { +    padding-left: 6em; +    text-indent: -6em; +  } +  p.h0i7 { +    padding-left: 7em; +    text-indent: -7em; +  } +  p.h0i8 { +    padding-left: 8em; +    text-indent: -8em; +  } +  p.h0i9 { +    padding-left: 9em; +    text-indent: -9em; +  } +  p.h1i0 { +    padding-left: 0em; +    text-indent:  1em; +  } +  p.h1i1 { +    padding-left: 1em; +    text-indent:  0em; +  } +  p.h1i2 { +    padding-left: 2em; +    text-indent: -1em; +  } +  p.h1i3 { +    padding-left: 3em; +    text-indent: -2em; +  } +  p.h1i4 { +    padding-left: 4em; +    text-indent: -3em; +  } +  p.h1i5 { +    padding-left: 5em; +    text-indent: -4em; +  } +  p.h1i6 { +    padding-left: 6em; +    text-indent: -5em; +  } +  p.h1i7 { +    padding-left: 7em; +    text-indent: -6em; +  } +  p.h1i8 { +    padding-left: 8em; +    text-indent: -7em; +  } +  p.h1i9 { +    padding-left: 9em; +    text-indent: -8em; +  } +  p.h2i0 { +    padding-left: 0em; +    text-indent:  2em; +  } +  p.h2i1 { +    padding-left: 1em; +    text-indent:  1em; +  } +  p.h2i2 { +    padding-left: 2em; +    text-indent:  0em; +  } +  p.h2i3 { +    padding-left: 3em; +    text-indent: -1em; +  } +  p.h2i4 { +    padding-left: 4em; +    text-indent: -2em; +  } +  p.h2i5 { +    padding-left: 5em; +    text-indent: -3em; +  } +  p.h2i6 { +    padding-left: 6em; +    text-indent: -4em; +  } +  p.h2i7 { +    padding-left: 7em; +    text-indent: -5em; +  } +  p.h2i8 { +    padding-left: 8em; +    text-indent: -6em; +  } +  p.h2i9 { +    padding-left: 9em; +    text-indent: -7em; +  } +  p.h3i0 { +    padding-left: 0em; +    text-indent:  3em; +  } +  p.h3i1 { +    padding-left: 1em; +    text-indent:  2em; +  } +  p.h3i2 { +    padding-left: 2em; +    text-indent:  1em; +  } +  p.h3i3 { +    padding-left: 3em; +    text-indent:  0em; +  } +  p.h3i4 { +    padding-left: 4em; +    text-indent: -1em; +  } +  p.h3i5 { +    padding-left: 5em; +    text-indent: -2em; +  } +  p.h3i6 { +    padding-left: 6em; +    text-indent: -3em; +  } +  p.h3i7 { +    padding-left: 7em; +    text-indent: -4em; +  } +  p.h3i8 { +    padding-left: 8em; +    text-indent: -5em; +  } +  p.h3i9 { +    padding-left: 9em; +    text-indent: -6em; +  } +  p.h4i0 { +    padding-left: 0em; +    text-indent:  4em; +  } +  p.h4i1 { +    padding-left: 1em; +    text-indent:  3em; +  } +  p.h4i2 { +    padding-left: 2em; +    text-indent:  2em; +  } +  p.h4i3 { +    padding-left: 3em; +    text-indent:  1em; +  } +  p.h4i4 { +    padding-left: 4em; +    text-indent:  0em; +  } +  p.h4i5 { +    padding-left: 5em; +    text-indent: -1em; +  } +  p.h4i6 { +    padding-left: 6em; +    text-indent: -2em; +  } +  p.h4i7 { +    padding-left: 7em; +    text-indent: -3em; +  } +  p.h4i8 { +    padding-left: 8em; +    text-indent: -4em; +  } +  p.h4i9 { +    padding-left: 9em; +    text-indent: -5em; +  } +  p.h5i0 { +    padding-left: 0em; +    text-indent:  5em; +  } +  p.h5i1 { +    padding-left: 1em; +    text-indent:  4em; +  } +  p.h5i2 { +    padding-left: 2em; +    text-indent:  3em; +  } +  p.h5i3 { +    padding-left: 3em; +    text-indent:  2em; +  } +  p.h5i4 { +    padding-left: 4em; +    text-indent:  1em; +  } +  p.h5i5 { +    padding-left: 5em; +    text-indent:  0em; +  } +  p.h5i6 { +    padding-left: 6em; +    text-indent: -1em; +  } +  p.h5i7 { +    padding-left: 7em; +    text-indent: -2em; +  } +  p.h5i8 { +    padding-left: 8em; +    text-indent: -3em; +  } +  p.h5i9 { +    padding-left: 9em; +    text-indent: -4em; +  } +  p.h6i0 { +    padding-left: 0em; +    text-indent:  6em; +  } +  p.h6i1 { +    padding-left: 1em; +    text-indent:  5em; +  } +  p.h6i2 { +    padding-left: 2em; +    text-indent:  4em; +  } +  p.h6i3 { +    padding-left: 3em; +    text-indent:  3em; +  } +  p.h6i4 { +    padding-left: 4em; +    text-indent:  2em; +  } +  p.h6i5 { +    padding-left: 5em; +    text-indent:  1em; +  } +  p.h6i6 { +    padding-left: 6em; +    text-indent:  0em; +  } +  p.h6i7 { +    padding-left: 7em; +    text-indent: -1em; +  } +  p.h6i8 { +    padding-left: 8em; +    text-indent: -2em; +  } +  p.h6i9 { +    padding-left: 9em; +    text-indent: -3em; +  } +  p.h7i0 { +    padding-left: 0em; +    text-indent:  7em; +  } +  p.h7i1 { +    padding-left: 1em; +    text-indent:  6em; +  } +  p.h7i2 { +    padding-left: 2em; +    text-indent:  5em; +  } +  p.h7i3 { +    padding-left: 3em; +    text-indent:  4em; +  } +  p.h7i4 { +    padding-left: 4em; +    text-indent:  3em; +  } +  p.h7i5 { +    padding-left: 5em; +    text-indent:  2em; +  } +  p.h7i6 { +    padding-left: 6em; +    text-indent:  1em; +  } +  p.h7i7 { +    padding-left: 7em; +    text-indent:  0em; +  } +  p.h7i8 { +    padding-left: 8em; +    text-indent: -1em; +  } +  p.h7i9 { +    padding-left: 9em; +    text-indent: -2em; +  } +  p.h8i0 { +    padding-left: 0em; +    text-indent:  8em; +  } +  p.h8i1 { +    padding-left: 1em; +    text-indent:  7em; +  } +  p.h8i2 { +    padding-left: 2em; +    text-indent:  6em; +  } +  p.h8i3 { +    padding-left: 3em; +    text-indent:  5em; +  } +  p.h8i4 { +    padding-left: 4em; +    text-indent:  4em; +  } +  p.h8i5 { +    padding-left: 5em; +    text-indent:  3em; +  } +  p.h8i6 { +    padding-left: 6em; +    text-indent:  2em; +  } +  p.h8i7 { +    padding-left: 7em; +    text-indent:  1em; +  } +  p.h8i8 { +    padding-left: 8em; +    text-indent:  0em; +  } +  p.h8i9 { +    padding-left: 9em; +    text-indent: -1em; +  } +  p.h9i0 { +    padding-left: 0em; +    text-indent:  9em; +  } +  p.h9i1 { +    padding-left: 1em; +    text-indent:  8em; +  } +  p.h9i2 { +    padding-left: 2em; +    text-indent:  7em; +  } +  p.h9i3 { +    padding-left: 3em; +    text-indent:  6em; +  } +  p.h9i4 { +    padding-left: 4em; +    text-indent:  5em; +  } +  p.h9i5 { +    padding-left: 5em; +    text-indent:  4em; +  } +  p.h9i6 { +    padding-left: 6em; +    text-indent:  3em; +  } +  p.h9i7 { +    padding-left: 7em; +    text-indent:  2em; +  } +  p.h9i8 { +    padding-left: 8em; +    text-indent:  1em; +  } +  p.h9i9 { +    padding-left: 9em; +    text-indent:  0em; +  } +  p.it0 { +    margin-left: 0em; +    margin-top: 6px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it1 { +    margin-left: 1em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it2 { +    margin-left: 2em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it3 { +    margin-left: 3em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it4 { +    margin-left: 4em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it5 { +    margin-left: 5em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it6 { +    margin-left: 6em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it7 { +    margin-left: 7em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it8 { +    margin-left: 8em; +    margin-top: 0px; +    margin-bottom: 0px; +    line-height: 100%; +  } +  p.it9 { +    margin-left: 9em; +    margin-bottom: 0px; +    margin-top: 0px; +    line-height: 100%; +  } +  p.block { } +  p.group { } +  p.alt { } +  p.verse { +    margin-bottom: 6px; +  } +  p.code { +    font-family: inconsolata, andale mono, courier new, courier, monospace; +    font-size: 90%; +    text-align: left; +    background-color: #eeeeee; +  } +  p.caption { +    text-align: left; +    font-size: 80%; +    display: inline; +  } +  p.endnote { +    font-size: 96%; +    line-height: 120%; +    text-align: left; +    margin-right: 15mm; +  } +  p.endnote_indent { +    font-size: 96%; +    line-height: 120%; +    text-align: left; +    margin-left: 2em; +    margin-right: 15mm; +  } +  p.center { +    text-align: center; +  } +  p.bold { +    font-weight: bold; +  } +  p.bold_left { +    font-weight: bold; +    text-align: left; +  } +  p.centerbold { +    text-align: center; +    font-weight: bold; +  } +  p.em { +    font-weight: bold; +    font-style: normal; +    background: #fff3b6; +  } +  p.small { +    font-size: 80%; +    margin-top: 0px; +    margin-bottom: 0px; +    margin-right: 6px; +    text-align: left; +  } +  .tiny, .tiny_left, .tiny_right, .tiny_center { +    font-size: 10px; +    margin-top: 0px; +    margin-bottom: 0px; +    color: #777777; +    margin-right: 6px; +    text-align: left; +  } +  p.tiny { } +  p.tiny_left { +    margin-left: 0px; +    margin-right: 0px; +    text-align: left; +  } +  p.tiny_right { +    margin-right: 1em; +    text-align: right; +  } +  p.tiny_center { +    margin-left: 0px; +    margin-right: 0px; +    text-align: center; +  } +  p.pane, p.pane_title, p.pane_blurb, p.pane_link, p.pane_indent { +    font-size: 80%; +    margin-top: 0px; +    margin-bottom: 0px; +    margin-left: 2mm; +    margin-right: 4px; +    text-align: left; +  } +  p.pane { } +  p.pane_title { +    font-weight: bold; +    margin-bottom: 0px; +  } +  p.pane_blurb { +    font-size: 10px; +    margin-bottom: 0px; +  } +  p.pane_link { +    font-size: 10px; +    margin-bottom: 0px; +    margin-left: 4mm; +  } +  p.pane_indent { +    font-size: 10px; +    margin-bottom: 0px; +    margin-left: 4mm; +  } +  p.concordance_word { +    line-height: 150%; +    font-weight: bold; +    display: inline; +    margin-top: 4px; +    margin-bottom: 1px; +  } +  p.concordance_count { +    font-size: 80%; +    color: #777777; +    display: inline; +    margin-left: 0em; +  } +  p.concordance_object { +    font-size: 80%; +    line-height: 120%; +    text-align: left; +    margin-left: 3em; +    margin-top: 1px; +    margin-bottom: 3px; +  } +  p.book_index_lev1 { +    line-height: 100%; +    margin-top: 4px; +    margin-bottom: 1px; +  } +  p.book_index_lev2 { +    line-height: 100%; +    text-align: left; +    margin-left: 3em; +    margin-top: 1px; +    margin-bottom: 3px; +  } +  p.quickref { +    font-size: 10px; +    font-style: italic; +    margin-top: 0px; +    margin-bottom: 0px; +    color: #777777; +    margin-right: 5px; +    text-align: left; +  } +  p.bigref { +    font-size: 11px; +    font-weight: bold; +    margin-top: 0px; +    margin-bottom: 0px; +    color: #777777; +    margin-right: 5px; +    text-align: center; +  } +  p.letter { +    font-weight: bold; +    font-size: 80%; +    margin-left: 0em; +    margin-top: 2px; +    margin-bottom: 2px; +    margin-right: 6px; +    text-align: left; +    color: white; +    background: #880000; +  } +  tt { +    font-family: inconsolata, andale mono, courier new, courier, monospace; +    background-color: #eeeeee; +  } +  label.ocn { +    width: 2%; +    float: right; +    top: 0; +    font-size: 10px; +    margin-top: 0px; +    margin-bottom: 5px; +    color: #777777; +    margin-right: 5px; +    text-align: right; +    background-color: #ffffff; +  } +  table { } +  tr { } +  th,td { +    vertical-align: top; +    text-align: left; +  } +  th { +    font-weight: bold; +  } +  p.left,th.left,td.left { +    text-align: left; +  } +  p.small_left,th.small_left,td.small_left { +    text-align: left; +    font-size: 80%; +  } +  p.right,th.right,td.right { +    text-align: right; +  } +  #horizontal_links { +    background: #eeeeee; +    margin-left: 5%; +    margin-right: 5%; +  } +  #horizontal { +    margin: 0; +    padding: 0 0 0 10px; +    border-top: 1px solid #000077; +    border-bottom: 1px solid #000077; +  } +  #horizontal li { +    margin: 0 0 0 0; +    padding: 0 16px 0 0; +    display: inline; +    list-style-type: none; +    text-align: left; +    background: none; +  } +  #horizontal a { +    line-height: 12px; +    margin: 0 0 0 0; +    text-decoration: none; +    color: #000077; +  } +  #horizontal a.active, #horizontal a:hover { +    border-bottom: 2px solid #777777; +    padding-bottom: 2px; +    color: #000077; +  } +  #horizontal a:hover { +    color: #000077; +  } +  #document_versions { +    position: absolute; +    top: 10mm; +    right: 2%; +    width: 12%; +    float: right; +  } +  #vertical_links { +    position: absolute; +    top: 10mm; +    right: 0px; +    width: 20%; +    background: #dddddd; +    float: right; +  } +  #vertical { +    padding: 0 12px 0px 0px; +    margin-left: 2%; +    margin-right: 2%; +  } +  #vertical li { +    display: block; +    list-style-type: none; +  } +  #vertical a { +    line-height: 12px; +    text-decoration: none; +    color: #000077; +  } +  #vertical a.active, #vertical a:hover { +    border-bottom: 2px solid #777777; +    padding-bottom: 2px; +    color: #000077; +  } +  ul, li { +    list-style-type: none; +    list-style: none; +    padding-left: 20px; +    display: block; +    font-family: verdana, arial, georgia, tahoma, sans-serif, helvetica, times, roman; +    font-weight: normal; +    line-height: 150%; +    text-align: left; +    text-indent: 0mm; +    margin-left: 1em; +    margin-right: 2em; +    margin-top: 3px; +    margin-bottom: 3px; +  } +  li { +    background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; +  } +  ul { +  } +  li.bullet { margin-left: 1em; } +  li.i1 { margin-left: 2em; } +  li.i2 { margin-left: 3em; } +  li.i3 { margin-left: 4em; } +  li.i4 { margin-left: 5em; } +  li.i5 { margin-left: 6em; } +  li.i6 { margin-left: 7em; } +  li.i7 { margin-left: 8em; } +  li.i8 { margin-left: 9em; } +  li.i9 { margin-left: 10em; } +  li.doc, li.ref, li.refcenter { +    margin-top: 0px; +    margin-bottom: 0px; +    margin-right: 0px; +    font-size: 8px; +    font-style: normal; +    text-align: left; +  } +  li.doc { +    background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; +    padding-left: 16px; +    margin-left: 10px; +    margin-right: 0px; +  } +  li.ref { +    background: none; +    padding-left: 0; +    margin-left: 0; +    color: #777777; +  } +  li.refcenter { +    background: url(../image_sys/bullet_09.png) no-repeat 0px 6px; +    padding-left: 20px; +    margin-left: 10%; +    font-size: 9px; +    color: #777777; +    text-align: center; +  } +  li.refbold { +    list-style-type: none; +    padding-left: 16px; +    margin-left: 0; +    margin-right: 10mm; +    font-weight: bold; +  } +  h0, h1, h2, h3, h4, h5, h6, h7 { +    font-weight: bold; +    line-height: 120%; +    text-align: left; +    margin-top: 20px; +    margin-bottom: 10px; +  } +  h4.norm, h5.norm, h6.norm, h7.norm { +    margin-top: 10px; +    margin-bottom: 0px; +  } +  h0.center, h1.center, h2.center, h3.center, h4.center, h5.center, h6.center, h7.center { +    text-align: center; +  } +  h0 { font-size: 125%; } +  h1 { font-size: 120%; } +  h2 { font-size: 115%; } +  h3 { font-size: 110%; } +  h4 { font-size: 105%; } +  h5 { font-size: 100%; } +  h6 { font-size: 100%; } +  h7 { font-size: 100%; } +  h1.i {margin-left: 2em;} +  h2.i {margin-left: 3em;} +  h3.i {margin-left: 4em;} +  h4.i {margin-left: 5em;} +  h5.i {margin-left: 6em;} +  h6.i {margin-left: 7em;} +  h7.i {margin-left: 8em;} +  h8.i {margin-left: 9em;} +  h9.i {margin-left: 10em;} +  h1.top_band { +    display: inline; +    text-align: left; +    margin-top: 0; +    margin-left: 4mm; +    text-indent: 0mm; +    font-weight: bold; +    font-size: 120%; +  } +  h2.top_band_tiny { +    font-size: 10px; +    font-weight: normal; +    margin-top: 0px; +    margin-left: 4mm; +    text-indent: 0mm; +    margin-bottom: 0px; +    color: #777777; +    margin-left: 140px; +    margin-right: 0px; +    text-align: left; +  } +  p.top_band { +    display: inline; +    text-align: left; +    margin-top: 0; +    margin-left: 140px; +    text-indent: 0mm; +    font-weight: bold; +    font-size: 120%; +  } +  p.top_band_tiny { +    font-size: 10px; +    margin-top: 0px; +    margin-bottom: 0px; +    color: #777777; +    margin-left: 140px; +    margin-right: 0px; +    text-align: left; +  } +  p.top_band_image { +    float: left; +    display: inline; +    text-align: left; +    margin-top: 0; +    margin-left: 1mm; +    text-indent: 0mm; +    margin-right: 1mm; +  } +  .banner, .subbanner { +    font-weight: bold; +    text-align: center; +    margin-left: 10mm; +    margin-right: 15mm; +    margin-top: 20px; +    margin-bottom: 10px; +  } +  h0.banner { +    font-size: 125%; +  } +  h1.banner { +    font-size: 120%; +  } +  h1.subbanner { +    font-size: 115%; +  } +  h2.banner { +    font-size: 110%; +  } +  h3.banner { +    color: #990000; +    font-size: 105%; +  } +  h4.banner { +    color: #ff0000; +    font-size: 100%; +  } +  h5.banner { +  } +  h6.banner { +  } +  h7.banner { +  } +  .toc { +    font-weight: normal; +    margin-top: 6px; +    margin-bottom: 6px; +  } +  h0.toc { +    margin-left: 1em; +    font-size: 120%; +    line-height: 150%; +  } +  h1.toc { +    margin-left: 1em; +    font-size: 115%; +    line-height: 150%; +  } +  h2.toc { +    margin-left: 2em; +    font-size: 110%; +    line-height: 140%; +  } +  h3.toc { +    margin-left: 3em; +    font-size: 105%; +    line-height: 120%; +  } +  h4.toc { +    margin-left: 4em; +    font-size: 100%; +    line-height: 120%; +  } +  h5.toc { +    margin-left: 5em; +    font-size: 95%; +    line-height: 110%; +  } +  h6.toc { +    margin-left: 6em; +    font-size: 90%; +    line-height: 110%; +  } +  h7.toc { +    margin-left: 7em; +    font-size: 85%; +    line-height: 100%; +  } +  .microtoc { +    margin-top: 2px; +    margin-bottom: 2px; +  } +  h0.microtoc { +    margin-left: 0mm; +    font-size: 120%; +  } +  h1.microtoc { +    margin-left: 0mm; +    font-size: 115%; +  } +  h2.microtoc { +    margin-left: 5mm; +    font-size: 110%; +  } +  h3.microtoc { +    margin-left: 10mm; +    font-size: 105%; +  } +  h4.microtoc { +    margin-left: 15mm; +    font-weight: normal; +    font-size: 100%; +  } +  h5.microtoc { +    margin-left: 20mm; +    font-weight: normal; +    font-size: 95%; +  } +  h6.microtoc { +    margin-left: 25mm; +    font-weight: normal; +    font-size: 90%; +  } +  h7.microtoc { +    margin-left: 30mm; +    font-weight: normal; +    font-size: 85%; +  } +  .subtoc { +    margin-right: 34%; +    font-weight: normal; +  } +  h5.subtoc { +    margin-left: 2em; +    font-size: 80%; +    margin-top: 2px; +    margin-bottom: 2px; +  } +  h6.subtoc { +    margin-left: 3em; +    font-size: 75%; +    margin-top: 0px; +    margin-bottom: 0px; +  } +  h7.subtoc { +    margin-left: 4em; +    font-size: 70%; +    margin-top: 0px; +    margin-bottom: 0px; +  } +  div.substance { +    width: 100%; +    background-color: #ffffff; +  } +  div.ocn { +    width: 5%; +    float: right; +    top: 0; +    background-color: #ffffff; +  } +  div.endnote { +    width: 95%; +    background-color: #fffffff; +  } +  div.toc { +    position: absolute; +    float: left; +    margin: 0; +    padding: 0; +    padding-top: 0.5em; +    border: 0; +    width: 13em; +    background-color: #eeeeee; +    margin-right:1em; +  } +  div.summary { +    margin: 0; +    padding: 0; +    border-left: 13em solid #eeeeee; +    padding-left: 1em; +    background-color: #eeeeee; +  } +  div.content, div.main_column { +    margin: 0; +    padding: 0; +    border-left: 13em solid #ffffff; +    padding-left: 1em; +    padding-right: 1em; +  } +  div.content0, div.main_column0 { +    margin: 0; +    padding: 0; +    border-left: 0% solid #ffffff; +    padding-left: 5%; +  } +  div.scroll { +    margin: 0; +    padding: 0; +    padding-left: 1em; +    padding-right: 1em; +  } +  div.content:after { +    content:' '; +    clear:both; +    display:block; +    height:0; +    overflow:hidden +  } +  div.footer { +    clear:left; +    padding: 0.5em; +    font-size: 80%; +    margin: 0; +  } +  div.toc ul { +    list-style: none; +    padding: 0; +    margin: 0; +  } +  div.toc li ul a, li ul span.currentlink +  { +    font-weight: normal; +    font-size: 90%; +    padding-left: 2em; +    background-color: #eeeeee; +  } +  div.toc a, span.currentlink{ +    display:block; +    text-decoration: none; +    padding-left: 0.5em; +    color: #0000aa; +  } +  hr { +    width: 90%; +  } +  span.currentlink { +    text-decoration: none; +    background-color: #aaaaf9; +  } +  div.toc a:visited { +    color: #0000aa; +  } +  div.toc a:hover { +    color: #000000; +    background-color: #f9f9aa; +  } +  .minitoc { +    font-weight: normal; +    margin-top: 2px; +    margin-bottom: 2px; +  } +  h1.minitoc, h2.minitoc, h3.minitoc { +    margin-left: 0em; +    font-weight: bold; +    text-align: left; +    font-size: 90%; +    margin-top: 4px; +    margin-bottom: 4px; +  } +  h4.minitoc { +    margin-left: 0em; +    font-size: 90%; +  } +  h5.minitoc { +    margin-left: 1em; +    font-size: 85%; +  } +  h6.minitoc { +    margin-left: 2em; +    font-size: 85%; +  } +  h7.minitoc { +    margin-left: 3em; +    font-size: 80%; +  } +  h0.minitoc { +    margin-left: 0em; +    font-size: 90%; +  } +  h0.c, h1.c, h2.c, h3.c, h4.c, h5.c, h6.c, h7.c, p.c { +    text-align: center +  } +  h1.red, h2.red, h3.red, h4.red, h5.red, h6.red, h7.red { +    text-align: center; +    color: #ff0000; +    margin-left: 5mm; +    text-indent: 5mm; +    margin-top: 30px; +    margin-bottom: 20px; +    margin-right: 15mm; +  } +  h1.ruby, h2.ruby, h3.ruby, h4.ruby, h5.ruby, h6.ruby, h7.ruby { +    text-align: center; +    color: #990000; +    margin-left: 5mm; +    text-indent: 5mm; +    margin-top: 30px; +    margin-bottom: 20px; +    margin-right: 15mm;    }";    return css;  }  | 
