var TITEMS = [ 
 ["Introduction", null, "1",
  ["Overview", "html/topic1.htm", "11"],
  ["LogicGem Copyright", "html/topic2.htm", "11"],
  ["License Agreement", "html/topic3.htm", "11"],
  ["Decision Table Introduction", "html/topic4.htm", "11"],
  ["Decision Table Components", "html/topic5.htm", "11"],
  ["Decision Table Example", "html/topic6.htm", "11"],
  ["Simplifying Structural Rules", "html/topic8.htm", "11"],
  ["Simplifying Logic Rules", "html/topic9.htm", "11"],
  ["Decision Table Applications", "html/topic10.htm", "11"],
  ["Decision Table Terminology", "html/topic11.htm", "11"],
  ["Decision Table Errors", "html/topic12.htm", "11"],
  ["Starting LogicGem", "html/topic13.htm", "11"],
  ["LogicGem Toolbar", "html/topic14.htm", "11"]
 ],
 ["Opening, Saving and Printing", null, "1",
  ["Opening a Decision Table", "html/topic15.htm", "11"],
  ["Saving a Decision Table", "html/topic16.htm", "11"],
  ["Printing a Decision Table", "html/topic17.htm", "11"],
  ["Saving Output Files", "html/topic18.htm", "11"],
  ["Batch Operations", "html/topic19.htm", "11"],
  ["Saving a Table Comment", "html/topic20.htm", "11"],
  ["Exiting LogicGem", "html/topic54.htm", "11"]
 ],
 ["Decision Table Components", null, "1",
  ["Introduction", "html/topic21.htm", "11"],
  ["Condition Stubs", "html/topic22.htm", "11"],
  ["Action Stubs", "html/topic23.htm", "11"],
  ["Table Links", "html/topic24.htm", "11"],
  ["Condition Entries", "html/topic25.htm", "11"],
  ["Action Entries", "html/topic26.htm", "11"],
  ["Rule Descriptions", "html/topic27.htm", "11"],
  ["Rule Frequency", "html/topic28.htm", "11"],
  ["Rule Cost", "html/topic29.htm", "11"]
 ],
 ["Edit and Sort Functions", null, "1",
  ["Introduction", "html/topic30.htm", "11"],
  ["Edit Functions by Row", "html/topic31.htm", "11"],
  ["Edit by Row Component", "html/topic32.htm", "11"],
  ["Edit Functions by Column", "html/topic33.htm", "11"],
  ["Edit by Column Component", "html/topic34.htm", "11"],
  ["Sort Functions", "html/topic35.htm", "11"],
  ["Find and Replace", "html/topic36.htm", "11"]
 ],
 ["Verify Decision Table Logic", null, "1",
  ["Introduction", "html/topic37.htm", "11"],
  ["Ambiguity Check", "html/topic38.htm", "11"],
  ["Disambiguate", "html/topic39.htm", "11"],
  ["Expand Rules", "html/topic40.htm", "11"],
  ["Missing Rules", "html/topic41.htm", "11"],
  ["Reduce Rules", "html/topic42.htm", "11"]
 ],
 ["Compiling Decision Tables", null, "1",
  ["Introduction", "html/topic43.htm", "11"],
  ["Languages", "html/topic44.htm", "11"],
  ["Logic Structure", "html/topic45.htm", "11"],
  ["Compiler Options", "html/topic46.htm", "11"],
  ["Sort Options", "html/topic47.htm", "11"],
  ["Compile Table", "html/topic48.htm", "11"],
  ["Code Generation", "html/topic49.htm", "11"]
 ],
 ["Preferences", null, "1",
  ["Introduction", "html/topic50.htm", "11"],
  ["General Preferences", "html/topic51.htm", "11"],
  ["Compiler Preferences", "html/topic52.htm", "11"],
  ["Appearance Defaults", "html/topic53.htm", "11"]
 ],
 ["Appendices", null, "1",
  ["Appendix A - LogicGem Limits", "html/topic55.htm", "11"],
  ["Appendix B - Glossary", "html/topic56.htm", "11"]
 ]
];


var FITEMS = arr_flatten(TITEMS);

function arr_flatten (x) {
   var y = []; if (x == null) return y;
   for (var i=0; i<x.length; i++) {
      if (typeof(x[i]) == "object") {
         var flat = arr_flatten(x[i]);
         for (var j=0; j<flat.length; j++)
             y[y.length]=flat[j];
      } else {
         if ((i%3==0))
          y[y.length]=x[i+1];
      }
   }
   return y;
}


